1
0

introduce-hosting-module (#46)

Co-authored-by: Michael Hoennig <michael@hoennig.de>
Reviewed-on: https://dev.hostsharing.net/hostsharing/hs.hsadmin.ng/pulls/46
Reviewed-by: Timotheus Pokorra <timotheus.pokorra@hostsharing.net>
This commit is contained in:
Michael Hoennig
2024-04-23 11:14:48 +02:00
parent 9806bcd78f
commit 66332b6de2
28 changed files with 3308 additions and 5 deletions

View File

@ -0,0 +1,97 @@
components:
schemas:
HsHostingAssetType:
type: string
enum:
- CLOUD_SERVER
- MANAGED_SERVER
- MANAGED_WEBSPACE
- UNIX_USER
- DOMAIN_SETUP
- EMAIL_ALIAS
- EMAIL_ADDRESS
- PGSQL_USER
- PGSQL_DATABASE
- MARIADB_USER
- MARIADB_DATABASE
HsHostingAsset:
type: object
properties:
uuid:
type: string
format: uuid
type:
$ref: '#/components/schemas/HsHostingAssetType'
identifier:
type: string
caption:
type: string
config:
$ref: '#/components/schemas/HsHostingAssetConfiguration'
required:
- type
- ídentifier
- uuid
- config
HsHostingAssetPatch:
type: object
properties:
caption:
type: string
nullable: true
config:
$ref: '#/components/schemas/HsHostingAssetConfiguration'
HsHostingAssetInsert:
type: object
properties:
bookingItemUuid:
type: string
format: uuid
nullable: false
type:
$ref: '#/components/schemas/HsHostingAssetType'
identifier:
type: string
minLength: 3
maxLength: 80
nullable: false
caption:
type: string
minLength: 3
maxLength: 80
nullable: false
config:
$ref: '#/components/schemas/HsHostingAssetConfiguration'
required:
- type
- identifier
- caption
- debitorUuid
- config
additionalProperties: false
HsHostingAssetConfiguration:
# forces generating a java.lang.Object containing a Map, instead of class AssetConfiguration
anyOf:
- type: object
properties:
CPU:
type: integer
minimum: 1
maximum: 16
SSD:
type: integer
minimum: 16
maximum: 4096
HDD:
type: integer
minimum: 16
maximum: 4096
additionalProperties: true