Compare commits
No commits in common. "generated-documentation" and "main" have entirely different histories.
generated-
...
main
6
.protolint.yaml
Normal file
6
.protolint.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
# Lint directives.
|
||||
lint:
|
||||
rules_option:
|
||||
max_line_length:
|
||||
max_chars: 120
|
||||
tab_chars: 2
|
33
.woodpecker/documentation.yaml
Normal file
33
.woodpecker/documentation.yaml
Normal file
@ -0,0 +1,33 @@
|
||||
---
|
||||
when:
|
||||
event:
|
||||
- push
|
||||
branch: main
|
||||
|
||||
steps:
|
||||
lint:
|
||||
name: Generate docs
|
||||
image: pseudomuto/protoc-gen-doc
|
||||
secrets:
|
||||
- softplayer_bot_ssh_key
|
||||
- git_known_hosts
|
||||
commands:
|
||||
- mkdir -p ~/.ssh
|
||||
- apk update && apk add git openssh
|
||||
- echo $SOFTPLAYER_BOT_SSH_KEY | base64 -d > ~/.ssh/id_ed25519
|
||||
- echo $GIT_KNOWN_HOSTS > ~/.ssh/known_hosts
|
||||
- cat ~/.ssh/id_ed25519
|
||||
- chmod 0600 ~/.ssh/id_ed25519
|
||||
- protoc --proto_path=./proto --doc_out=. --doc_opt=markdown,README.md $(find ./proto -type f -iname "*.proto")
|
||||
# To make sure there is always a change, even when protos are not updated
|
||||
- echo "Generated on $(date)" >> README.md
|
||||
- eval `ssh-agent`
|
||||
- ssh-add ~/.ssh/id_ed25519
|
||||
- git config --global user.email "allanger@badhouseplants.net"
|
||||
- git config --global user.name "Softplayer Bot"
|
||||
- git clone git@gitea.badhouseplants.net:softplayer/softplayer-proto.git /tmp/repo
|
||||
- git -C /tmp/repo checkout generated-documentation
|
||||
- mv README.md /tmp/repo/README.md
|
||||
- git -C /tmp/repo add .
|
||||
- git -C /tmp/repo commit -m "Update documentation from $CI_COMMIT_SHA"
|
||||
- git -C /tmp/repo push
|
11
.woodpecker/lint.yaml
Normal file
11
.woodpecker/lint.yaml
Normal file
@ -0,0 +1,11 @@
|
||||
---
|
||||
when:
|
||||
event:
|
||||
- push
|
||||
|
||||
steps:
|
||||
lint:
|
||||
name: Lint protobufs
|
||||
image: yoheimuta/protolint
|
||||
commands:
|
||||
- protolint lint $(find . -type f -iname "*.proto")
|
11
Containerfile
Normal file
11
Containerfile
Normal file
@ -0,0 +1,11 @@
|
||||
FROM alpine:3.16.2
|
||||
|
||||
RUN apk add --no-cache git make musl-dev go protobuf protobuf-dev
|
||||
ENV GOROOT /usr/lib/go
|
||||
ENV GOPATH /go
|
||||
ENV PATH /go/bin:$PATH
|
||||
RUN go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.26
|
||||
RUN go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.1
|
||||
|
||||
CMD [ "protoc -v" ]
|
||||
|
36
Makefile
Normal file
36
Makefile
Normal file
@ -0,0 +1,36 @@
|
||||
# ---------------------------------------------------------------------
|
||||
# -- Which container tool to use
|
||||
# ---------------------------------------------------------------------
|
||||
CONTAINER_TOOL ?= docker
|
||||
|
||||
protoc-docs-gen:
|
||||
protoc \
|
||||
--proto_path=./proto \
|
||||
--doc_out=. \
|
||||
--doc_opt=markdown,readme.md \
|
||||
$$(find ./proto -type f -iname "*.proto")
|
||||
|
||||
docker-docs-gen:
|
||||
$(CONTAINER_TOOL) run --rm \
|
||||
-v $$(pwd):/out \
|
||||
-v $$(pwd)/proto:/proto \
|
||||
pseudomuto/protoc-gen-doc --doc_opt=markdown,README.md --proto_path=proto \
|
||||
$$(find proto -type f -iname "*.proto")
|
||||
|
||||
docker-lint:
|
||||
$(CONTAINER_TOOL) run --rm \
|
||||
-v $$(pwd):/workspace \
|
||||
--workdir /workspace \
|
||||
yoheimuta/protolint lint \
|
||||
$$(find . -type f -iname "*.proto")
|
||||
|
||||
docker-protobuf:
|
||||
$(CONTAINER_TOOL) build -t gogen . && \
|
||||
$(CONTAINER_TOOL) run --rm \
|
||||
-v $$(pwd)/proto:/proto \
|
||||
-v $$(pwd)/pkg:/pkg \
|
||||
gogen \
|
||||
protoc --go_out=/pkg/ --go_opt=paths=source_relative \
|
||||
--go-grpc_out=/pkg/ --go-grpc_opt=paths=source_relative \
|
||||
--proto_path=proto/proto \
|
||||
$$(find proto -type f -iname "*.proto")
|
625
README.md
625
README.md
@ -3,6 +3,26 @@
|
||||
|
||||
## Table of Contents
|
||||
|
||||
- [environments/environments_v1.proto](#environments_environments_v1-proto)
|
||||
- [CreateOptions](#environments-CreateOptions)
|
||||
- [DeleteOptions](#environments-DeleteOptions)
|
||||
- [EnvironmentFull](#environments-EnvironmentFull)
|
||||
- [EnvironmentId](#environments-EnvironmentId)
|
||||
- [EnvironmentMetadata](#environments-EnvironmentMetadata)
|
||||
- [EnvironmentSpec](#environments-EnvironmentSpec)
|
||||
- [GetOptions](#environments-GetOptions)
|
||||
- [ListOptions](#environments-ListOptions)
|
||||
- [OwnerId](#environments-OwnerId)
|
||||
- [Token](#environments-Token)
|
||||
- [UpdateOptions](#environments-UpdateOptions)
|
||||
|
||||
- [Kubernetes](#environments-Kubernetes)
|
||||
- [Location](#environments-Location)
|
||||
- [Provider](#environments-Provider)
|
||||
- [ServerType](#environments-ServerType)
|
||||
|
||||
- [Environments](#environments-Environments)
|
||||
|
||||
- [accounts/accounts_v1.proto](#accounts_accounts_v1-proto)
|
||||
- [AccountData](#accounts-AccountData)
|
||||
- [AccountFull](#accounts-AccountFull)
|
||||
@ -10,8 +30,6 @@
|
||||
- [AccountId](#accounts-AccountId)
|
||||
- [AccountPassword](#accounts-AccountPassword)
|
||||
- [AccountWithPassword](#accounts-AccountWithPassword)
|
||||
- [AccountWithPasswordAndCode](#accounts-AccountWithPasswordAndCode)
|
||||
- [EmailVerified](#accounts-EmailVerified)
|
||||
|
||||
- [Accounts](#accounts-Accounts)
|
||||
|
||||
@ -37,30 +55,284 @@
|
||||
|
||||
- [EmailValidation](#email-EmailValidation)
|
||||
|
||||
- [environments/environments_v1.proto](#environments_environments_v1-proto)
|
||||
- [CreateOptions](#environments-CreateOptions)
|
||||
- [DeleteOptions](#environments-DeleteOptions)
|
||||
- [EnvironmentFull](#environments-EnvironmentFull)
|
||||
- [EnvironmentId](#environments-EnvironmentId)
|
||||
- [EnvironmentMetadata](#environments-EnvironmentMetadata)
|
||||
- [EnvironmentSpec](#environments-EnvironmentSpec)
|
||||
- [GetOptions](#environments-GetOptions)
|
||||
- [ListOptions](#environments-ListOptions)
|
||||
- [OwnerId](#environments-OwnerId)
|
||||
- [Token](#environments-Token)
|
||||
- [UpdateOptions](#environments-UpdateOptions)
|
||||
|
||||
- [Kubernetes](#environments-Kubernetes)
|
||||
- [Location](#environments-Location)
|
||||
- [Provider](#environments-Provider)
|
||||
- [ServerType](#environments-ServerType)
|
||||
|
||||
- [Environments](#environments-Environments)
|
||||
|
||||
- [Scalar Value Types](#scalar-value-types)
|
||||
|
||||
|
||||
|
||||
<a name="environments_environments_v1-proto"></a>
|
||||
<p align="right"><a href="#top">Top</a></p>
|
||||
|
||||
## environments/environments_v1.proto
|
||||
This file has messages for describing environments
|
||||
|
||||
|
||||
<a name="environments-CreateOptions"></a>
|
||||
|
||||
### CreateOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-DeleteOptions"></a>
|
||||
|
||||
### DeleteOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentFull"></a>
|
||||
|
||||
### EnvironmentFull
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentId"></a>
|
||||
|
||||
### EnvironmentId
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| uuid | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentMetadata"></a>
|
||||
|
||||
### EnvironmentMetadata
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| name | [string](#string) | | A name of the environment |
|
||||
| description | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentSpec"></a>
|
||||
|
||||
### EnvironmentSpec
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| provider | [Provider](#environments-Provider) | | Provide |
|
||||
| kubernetes | [Kubernetes](#environments-Kubernetes) | | |
|
||||
| server_type | [ServerType](#environments-ServerType) | | |
|
||||
| server_location | [Location](#environments-Location) | | |
|
||||
| disk_size | [int32](#int32) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-GetOptions"></a>
|
||||
|
||||
### GetOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-ListOptions"></a>
|
||||
|
||||
### ListOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| search_string | [string](#string) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-OwnerId"></a>
|
||||
|
||||
### OwnerId
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| uuid | [string](#string) | | UUID of a user that is creating an environemnt |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Token"></a>
|
||||
|
||||
### Token
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| token | [string](#string) | | Token that should be used to create an environment |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-UpdateOptions"></a>
|
||||
|
||||
### UpdateOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Kubernetes"></a>
|
||||
|
||||
### Kubernetes
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| KUBERNETES_UNSPECIFIED | 0 | |
|
||||
| KUBERNETES_K3S | 1 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-Location"></a>
|
||||
|
||||
### Location
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| LOCATION_UNSPECIFIED | 0 | |
|
||||
| LOCATION_HETZNER_NUREMBERG | 1 | |
|
||||
| LOCATION_HETZNER_FALKENSTEIN | 2 | |
|
||||
| LOCATION_HETZNER_HELSINKI | 3 | |
|
||||
| LOCATION_HETZNER_HILLSBORO | 4 | |
|
||||
| LOCATION_HETZNER_ASHBURN | 5 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-Provider"></a>
|
||||
|
||||
### Provider
|
||||
Helpers and other messages
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| PROVIDER_UNSPECIFIED | 0 | |
|
||||
| PROVIDER_HETZNER | 1 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-ServerType"></a>
|
||||
|
||||
### ServerType
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| SERVER_TYPE_UNSPECIFIED | 0 | |
|
||||
| SERVER_TYPE_STARTER | 1 | |
|
||||
| SERVER_TYPE_REGULAR | 2 | |
|
||||
| SERVER_TYPE_PLUS | 3 | |
|
||||
| SERVER_TYPE_PRO | 4 | |
|
||||
| SERVER_TYPE_CUSTOM | 5 | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Environments"></a>
|
||||
|
||||
### Environments
|
||||
Service for handling environments
|
||||
|
||||
| Method Name | Request Type | Response Type | Description |
|
||||
| ----------- | ------------ | ------------- | ------------|
|
||||
| Create | [CreateOptions](#environments-CreateOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| Update | [UpdateOptions](#environments-UpdateOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| Delete | [DeleteOptions](#environments-DeleteOptions) | [.google.protobuf.Empty](#google-protobuf-Empty) | |
|
||||
| Get | [GetOptions](#environments-GetOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| List | [ListOptions](#environments-ListOptions) | [EnvironmentFull](#environments-EnvironmentFull) stream | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="accounts_accounts_v1-proto"></a>
|
||||
<p align="right"><a href="#top">Top</a></p>
|
||||
|
||||
@ -163,38 +435,6 @@ Represents a environment UUID only
|
||||
|
||||
|
||||
|
||||
<a name="accounts-AccountWithPasswordAndCode"></a>
|
||||
|
||||
### AccountWithPasswordAndCode
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| data | [AccountData](#accounts-AccountData) | | |
|
||||
| password | [AccountPassword](#accounts-AccountPassword) | | |
|
||||
| code | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="accounts-EmailVerified"></a>
|
||||
|
||||
### EmailVerified
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| verified | [bool](#bool) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -211,8 +451,6 @@ Service for handling environments
|
||||
| SignUp | [AccountWithPassword](#accounts-AccountWithPassword) | [AccountFullWithToken](#accounts-AccountFullWithToken) | |
|
||||
| SignIn | [AccountWithPassword](#accounts-AccountWithPassword) | [AccountFullWithToken](#accounts-AccountFullWithToken) | |
|
||||
| ResetPassword | [AccountData](#accounts-AccountData) | [.google.protobuf.Empty](#google-protobuf-Empty) | |
|
||||
| NewPassword | [AccountWithPasswordAndCode](#accounts-AccountWithPasswordAndCode) | [.google.protobuf.Empty](#google-protobuf-Empty) | |
|
||||
| IsEmailVerified | [AccountData](#accounts-AccountData) | [EmailVerified](#accounts-EmailVerified) | |
|
||||
|
||||
|
||||
|
||||
@ -509,280 +747,6 @@ A service that should handle email validation
|
||||
|
||||
|
||||
|
||||
<a name="environments_environments_v1-proto"></a>
|
||||
<p align="right"><a href="#top">Top</a></p>
|
||||
|
||||
## environments/environments_v1.proto
|
||||
This file has messages for describing environments
|
||||
|
||||
|
||||
<a name="environments-CreateOptions"></a>
|
||||
|
||||
### CreateOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-DeleteOptions"></a>
|
||||
|
||||
### DeleteOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentFull"></a>
|
||||
|
||||
### EnvironmentFull
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentId"></a>
|
||||
|
||||
### EnvironmentId
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| uuid | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentMetadata"></a>
|
||||
|
||||
### EnvironmentMetadata
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| name | [string](#string) | | A name of the environment |
|
||||
| description | [string](#string) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-EnvironmentSpec"></a>
|
||||
|
||||
### EnvironmentSpec
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| provider | [Provider](#environments-Provider) | | Provide |
|
||||
| kubernetes | [Kubernetes](#environments-Kubernetes) | | |
|
||||
| server_type | [ServerType](#environments-ServerType) | | |
|
||||
| server_location | [Location](#environments-Location) | | |
|
||||
| disk_size | [int32](#int32) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-GetOptions"></a>
|
||||
|
||||
### GetOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-ListOptions"></a>
|
||||
|
||||
### ListOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| search_string | [string](#string) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-OwnerId"></a>
|
||||
|
||||
### OwnerId
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| uuid | [string](#string) | | UUID of a user that is creating an environemnt |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Token"></a>
|
||||
|
||||
### Token
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| token | [string](#string) | | Token that should be used to create an environment |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-UpdateOptions"></a>
|
||||
|
||||
### UpdateOptions
|
||||
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| id | [EnvironmentId](#environments-EnvironmentId) | | |
|
||||
| metadata | [EnvironmentMetadata](#environments-EnvironmentMetadata) | | |
|
||||
| spec | [EnvironmentSpec](#environments-EnvironmentSpec) | | |
|
||||
| owner_id | [OwnerId](#environments-OwnerId) | | |
|
||||
| token | [Token](#environments-Token) | | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Kubernetes"></a>
|
||||
|
||||
### Kubernetes
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| KUBERNETES_UNSPECIFIED | 0 | |
|
||||
| KUBERNETES_K3S | 1 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-Location"></a>
|
||||
|
||||
### Location
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| LOCATION_UNSPECIFIED | 0 | |
|
||||
| LOCATION_HETZNER_NUREMBERG | 1 | |
|
||||
| LOCATION_HETZNER_FALKENSTEIN | 2 | |
|
||||
| LOCATION_HETZNER_HELSINKI | 3 | |
|
||||
| LOCATION_HETZNER_HILLSBORO | 4 | |
|
||||
| LOCATION_HETZNER_ASHBURN | 5 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-Provider"></a>
|
||||
|
||||
### Provider
|
||||
Helpers and other messages
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| PROVIDER_UNSPECIFIED | 0 | |
|
||||
| PROVIDER_HETZNER | 1 | |
|
||||
|
||||
|
||||
|
||||
<a name="environments-ServerType"></a>
|
||||
|
||||
### ServerType
|
||||
|
||||
|
||||
| Name | Number | Description |
|
||||
| ---- | ------ | ----------- |
|
||||
| SERVER_TYPE_UNSPECIFIED | 0 | |
|
||||
| SERVER_TYPE_STARTER | 1 | |
|
||||
| SERVER_TYPE_REGULAR | 2 | |
|
||||
| SERVER_TYPE_PLUS | 3 | |
|
||||
| SERVER_TYPE_PRO | 4 | |
|
||||
| SERVER_TYPE_CUSTOM | 5 | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<a name="environments-Environments"></a>
|
||||
|
||||
### Environments
|
||||
Service for handling environments
|
||||
|
||||
| Method Name | Request Type | Response Type | Description |
|
||||
| ----------- | ------------ | ------------- | ------------|
|
||||
| Create | [CreateOptions](#environments-CreateOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| Update | [UpdateOptions](#environments-UpdateOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| Delete | [DeleteOptions](#environments-DeleteOptions) | [.google.protobuf.Empty](#google-protobuf-Empty) | |
|
||||
| Get | [GetOptions](#environments-GetOptions) | [EnvironmentFull](#environments-EnvironmentFull) | |
|
||||
| List | [ListOptions](#environments-ListOptions) | [EnvironmentFull](#environments-EnvironmentFull) stream | |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Scalar Value Types
|
||||
|
||||
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
|
||||
@ -803,4 +767,3 @@ Service for handling environments
|
||||
| <a name="string" /> string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
|
||||
| <a name="bytes" /> bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |
|
||||
|
||||
Generated on Tue May 21 22:03:42 UTC 2024
|
||||
|
60
proto/accounts/accounts_v1.proto
Normal file
60
proto/accounts/accounts_v1.proto
Normal file
@ -0,0 +1,60 @@
|
||||
/// This file has messages for describing environments
|
||||
syntax = "proto3";
|
||||
package accounts;
|
||||
import "google/protobuf/empty.proto";
|
||||
option go_package = "gitea.badhouseplants.net/softplayer/softplayer-go-proto/pkg/accounts";
|
||||
|
||||
/**
|
||||
* Service for handling environments
|
||||
*/
|
||||
service Accounts {
|
||||
rpc SignUp (AccountWithPassword) returns (AccountFullWithToken) {}
|
||||
rpc SignIn (AccountWithPassword) returns (AccountFullWithToken) {}
|
||||
rpc ResetPassword (AccountData) returns (google.protobuf.Empty) {}
|
||||
rpc NewPassword (AccountWithPasswordAndCode) returns (google.protobuf.Empty) {}
|
||||
rpc IsEmailVerified (AccountData) returns (EmailVerified) {}
|
||||
}
|
||||
|
||||
message EmailVerified {
|
||||
bool verified = 1;
|
||||
}
|
||||
/**
|
||||
* Represents a environment UUID only
|
||||
*/
|
||||
message AccountId {
|
||||
string id = 1; // Contour ID: UUID
|
||||
}
|
||||
|
||||
message AccountPassword {
|
||||
string password = 1;
|
||||
}
|
||||
|
||||
|
||||
message AccountData {
|
||||
string name = 1; // Account name
|
||||
string email = 2; // Account email
|
||||
}
|
||||
|
||||
message AccountWithPassword {
|
||||
AccountData data = 1;
|
||||
AccountPassword password = 2;
|
||||
}
|
||||
|
||||
message AccountWithPasswordAndCode {
|
||||
AccountData data = 1;
|
||||
AccountPassword password = 2;
|
||||
string code = 3;
|
||||
}
|
||||
|
||||
|
||||
message AccountFull {
|
||||
AccountId id = 1;
|
||||
AccountData data = 2;
|
||||
}
|
||||
|
||||
message AccountFullWithToken {
|
||||
AccountId id = 1;
|
||||
AccountData data = 2;
|
||||
string token = 3;
|
||||
}
|
||||
|
93
proto/applications/applications_v1.proto
Normal file
93
proto/applications/applications_v1.proto
Normal file
@ -0,0 +1,93 @@
|
||||
/// This file has messages for describing applications
|
||||
syntax = "proto3";
|
||||
package applications;
|
||||
import "google/protobuf/empty.proto";
|
||||
option go_package = "gitea.badhouseplants.net/softplayer/softplayer-go-proto/pkg/applications";
|
||||
|
||||
/**
|
||||
* Service for handling applications
|
||||
*/
|
||||
service Applications {
|
||||
rpc Create(CreateOptions) returns (ApplicationFull) {}
|
||||
rpc Update(UpdateOptions) returns (ApplicationFull) {}
|
||||
rpc Delete(DeleteOptions) returns (google.protobuf.Empty) {}
|
||||
rpc Get(GetOptions) returns (ApplicationFull) {}
|
||||
rpc List(ListOptions) returns (stream ApplicationFull) {}
|
||||
}
|
||||
|
||||
/**
|
||||
User related messages
|
||||
*/
|
||||
|
||||
message OwnerId {
|
||||
string uuid = 1; // UUID of a user that is creating an environemnt
|
||||
}
|
||||
|
||||
message Token {
|
||||
string token = 1; // Token that should be used to create an environment
|
||||
}
|
||||
|
||||
/**
|
||||
Services options
|
||||
*/
|
||||
|
||||
message CreateOptions {
|
||||
ApplicationMetadata metadata = 1;
|
||||
ApplicationSpec spec = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message UpdateOptions {
|
||||
ApplicationId id = 1;
|
||||
ApplicationMetadata metadata = 2;
|
||||
ApplicationSpec spec = 3;
|
||||
OwnerId owner_id = 4;
|
||||
Token token = 5;
|
||||
}
|
||||
|
||||
message DeleteOptions {
|
||||
ApplicationId id = 1;
|
||||
ApplicationMetadata metadata = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message GetOptions {
|
||||
ApplicationId id = 1;
|
||||
ApplicationMetadata metadata = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message ListOptions {
|
||||
ApplicationMetadata metadata = 1;
|
||||
OwnerId owner_id = 2;
|
||||
Token token = 3;
|
||||
}
|
||||
/**
|
||||
Environment related messages
|
||||
*/
|
||||
|
||||
message ApplicationId {
|
||||
string uuid = 1;
|
||||
}
|
||||
|
||||
message ApplicationMetadata {
|
||||
string name = 1;
|
||||
string description = 2;
|
||||
}
|
||||
|
||||
message ApplicationSpec {
|
||||
string application = 1;
|
||||
string version = 2;
|
||||
string environemnt_id = 3;
|
||||
map<string, string> config = 4;
|
||||
string raw_config = 5;
|
||||
}
|
||||
|
||||
message ApplicationFull {
|
||||
ApplicationMetadata metadata = 1;
|
||||
ApplicationSpec spec = 2;
|
||||
ApplicationId id = 3;
|
||||
}
|
23
proto/email/email_v1.proto
Normal file
23
proto/email/email_v1.proto
Normal file
@ -0,0 +1,23 @@
|
||||
/// This file has messages for describing environments
|
||||
syntax = "proto3";
|
||||
package email;
|
||||
import "google/protobuf/empty.proto";
|
||||
option go_package = "gitea.badhouseplants.net/softplayer/softplayer-go-proto/pkg/email";
|
||||
|
||||
/*
|
||||
* A service that should handle email validation
|
||||
*/
|
||||
service EmailValidation {
|
||||
rpc SendRequest (RequestValidation) returns (google.protobuf.Empty) {}
|
||||
rpc ValidateEmail (ConfirmValidation) returns (google.protobuf.Empty) {}
|
||||
}
|
||||
|
||||
message RequestValidation {
|
||||
string user_id = 1;
|
||||
}
|
||||
|
||||
message ConfirmValidation {
|
||||
string user_id = 1;
|
||||
int32 code = 2;
|
||||
}
|
||||
|
125
proto/environments/environments_v1.proto
Normal file
125
proto/environments/environments_v1.proto
Normal file
@ -0,0 +1,125 @@
|
||||
/// This file has messages for describing environments
|
||||
syntax = "proto3";
|
||||
package environments;
|
||||
import "google/protobuf/empty.proto";
|
||||
option go_package = "gitea.badhouseplants.net/softplayer/softplayer-go-proto/pkg/environments";
|
||||
|
||||
/**
|
||||
* Service for handling environments
|
||||
*/
|
||||
service Environments {
|
||||
rpc Create(CreateOptions) returns (EnvironmentFull) {}
|
||||
rpc Update(UpdateOptions) returns (EnvironmentFull) {}
|
||||
rpc Delete(DeleteOptions) returns (google.protobuf.Empty) {}
|
||||
rpc Get(GetOptions) returns (EnvironmentFull) {}
|
||||
rpc List(ListOptions) returns (stream EnvironmentFull) {}
|
||||
}
|
||||
|
||||
/**
|
||||
User related messages
|
||||
*/
|
||||
|
||||
message OwnerId {
|
||||
string uuid = 1; // UUID of a user that is creating an environemnt
|
||||
}
|
||||
|
||||
message Token {
|
||||
string token = 1; // Token that should be used to create an environment
|
||||
}
|
||||
|
||||
/**
|
||||
Services options
|
||||
*/
|
||||
|
||||
message CreateOptions {
|
||||
EnvironmentMetadata metadata = 1;
|
||||
EnvironmentSpec spec = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message UpdateOptions {
|
||||
EnvironmentId id = 1;
|
||||
EnvironmentMetadata metadata = 2;
|
||||
EnvironmentSpec spec = 3;
|
||||
OwnerId owner_id = 4;
|
||||
Token token = 5;
|
||||
}
|
||||
|
||||
message DeleteOptions {
|
||||
EnvironmentId id = 1;
|
||||
EnvironmentMetadata metadata = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message GetOptions {
|
||||
EnvironmentId id = 1;
|
||||
EnvironmentMetadata metadata = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
|
||||
message ListOptions {
|
||||
EnvironmentMetadata metadata = 1;
|
||||
string search_string = 2;
|
||||
OwnerId owner_id = 3;
|
||||
Token token = 4;
|
||||
}
|
||||
/**
|
||||
Environment related messages
|
||||
*/
|
||||
|
||||
message EnvironmentId {
|
||||
string uuid = 1;
|
||||
}
|
||||
message EnvironmentMetadata {
|
||||
string name = 1; // A name of the environment
|
||||
string description = 2;
|
||||
}
|
||||
|
||||
message EnvironmentSpec {
|
||||
Provider provider = 1; // Provide
|
||||
Kubernetes kubernetes = 2;
|
||||
ServerType server_type = 3;
|
||||
Location server_location = 4;
|
||||
int32 disk_size = 5;
|
||||
}
|
||||
|
||||
message EnvironmentFull {
|
||||
EnvironmentMetadata metadata = 1;
|
||||
EnvironmentSpec spec = 2;
|
||||
EnvironmentId id = 3;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
Helpers and other messages
|
||||
*/
|
||||
enum Provider {
|
||||
PROVIDER_UNSPECIFIED = 0;
|
||||
PROVIDER_HETZNER = 1;
|
||||
}
|
||||
|
||||
enum ServerType {
|
||||
SERVER_TYPE_UNSPECIFIED = 0;
|
||||
SERVER_TYPE_STARTER = 1;
|
||||
SERVER_TYPE_REGULAR = 2;
|
||||
SERVER_TYPE_PLUS = 3;
|
||||
SERVER_TYPE_PRO = 4;
|
||||
SERVER_TYPE_CUSTOM = 5;
|
||||
}
|
||||
|
||||
enum Location {
|
||||
LOCATION_UNSPECIFIED = 0;
|
||||
LOCATION_HETZNER_NUREMBERG = 1;
|
||||
LOCATION_HETZNER_FALKENSTEIN = 2;
|
||||
LOCATION_HETZNER_HELSINKI = 3;
|
||||
LOCATION_HETZNER_HILLSBORO = 4;
|
||||
LOCATION_HETZNER_ASHBURN = 5;
|
||||
}
|
||||
|
||||
enum Kubernetes {
|
||||
KUBERNETES_UNSPECIFIED = 0;
|
||||
KUBERNETES_K3S = 1;
|
||||
}
|
Loading…
Reference in New Issue
Block a user