From f95c3d854c85dc786b02f75ef3cdb4fa59436769 Mon Sep 17 00:00:00 2001 From: SDK Generator Bot Date: Tue, 9 Jul 2024 09:03:47 +0000 Subject: [PATCH 1/3] Generate sqlserverflex --- services/sqlserverflex/api_default.go | 2 +- .../model_create_database_payload.go | 7 +- .../model_create_instance_payload.go | 2 +- .../model_create_user_payload.go | 6 +- .../model_create_user_response.go | 2 +- ...ntation_create_database_request_options.go | 21 +++ .../sqlserverflex/model_database_options.go | 2 +- .../model_get_database_response.go | 6 +- .../sqlserverflex/model_get_user_response.go | 2 +- .../model_instance_response_user.go | 20 --- .../model_partial_update_instance_payload.go | 2 +- services/sqlserverflex/model_role.go | 139 ------------------ .../sqlserverflex/model_single_database.go | 19 +++ ...ns.go => model_single_database_options.go} | 4 +- services/sqlserverflex/model_single_user.go | 22 +++ .../model_trigger_database_restore_payload.go | 6 +- .../model_update_instance_payload.go | 20 ++- .../sqlserverflex/model_user_response_user.go | 20 +++ 18 files changed, 115 insertions(+), 187 deletions(-) create mode 100644 services/sqlserverflex/model_database_documentation_create_database_request_options.go delete mode 100644 services/sqlserverflex/model_instance_response_user.go delete mode 100644 services/sqlserverflex/model_role.go create mode 100644 services/sqlserverflex/model_single_database.go rename services/sqlserverflex/{model_get_database_response_options.go => model_single_database_options.go} (88%) create mode 100644 services/sqlserverflex/model_single_user.go create mode 100644 services/sqlserverflex/model_user_response_user.go diff --git a/services/sqlserverflex/api_default.go b/services/sqlserverflex/api_default.go index ed368758b..7c16c51e3 100644 --- a/services/sqlserverflex/api_default.go +++ b/services/sqlserverflex/api_default.go @@ -321,7 +321,7 @@ type ApiCreateUserRequest struct { createUserPayload *CreateUserPayload } -// body +// The request body contains a username, a list of roles and database. The possible roles can be fetched from the ListRoles endpoint. func (r ApiCreateUserRequest) CreateUserPayload(createUserPayload CreateUserPayload) ApiCreateUserRequest { r.createUserPayload = &createUserPayload diff --git a/services/sqlserverflex/model_create_database_payload.go b/services/sqlserverflex/model_create_database_payload.go index 19b481087..218b60fb5 100644 --- a/services/sqlserverflex/model_create_database_payload.go +++ b/services/sqlserverflex/model_create_database_payload.go @@ -11,7 +11,8 @@ API version: 1.0.0 package sqlserverflex type CreateDatabasePayload struct { - Name *string `json:"name,omitempty"` - // Database specific options - Options *map[string]string `json:"options,omitempty"` + // REQUIRED + Name *string `json:"name"` + // REQUIRED + Options *DatabaseDocumentationCreateDatabaseRequestOptions `json:"options"` } diff --git a/services/sqlserverflex/model_create_instance_payload.go b/services/sqlserverflex/model_create_instance_payload.go index b550cf982..f6307099c 100644 --- a/services/sqlserverflex/model_create_instance_payload.go +++ b/services/sqlserverflex/model_create_instance_payload.go @@ -12,7 +12,7 @@ package sqlserverflex type CreateInstancePayload struct { Acl *CreateInstancePayloadAcl `json:"acl,omitempty"` - // Cronjob for the daily full backup if not provided a job will generated between 0000 and 0459 + // Cronjob for the daily full backup if not provided a job will generated between 00:00 and 04:59 BackupSchedule *string `json:"backupSchedule,omitempty"` // Id of the selected flavor // REQUIRED diff --git a/services/sqlserverflex/model_create_user_payload.go b/services/sqlserverflex/model_create_user_payload.go index 03d2b44f1..8b58e5367 100644 --- a/services/sqlserverflex/model_create_user_payload.go +++ b/services/sqlserverflex/model_create_user_payload.go @@ -12,8 +12,8 @@ package sqlserverflex type CreateUserPayload struct { // REQUIRED - Database *string `json:"database"` + DefaultDatabase *string `json:"default_database"` // REQUIRED - Roles *[]Role `json:"roles"` - Username *string `json:"username,omitempty"` + Roles *[]string `json:"roles"` + Username *string `json:"username,omitempty"` } diff --git a/services/sqlserverflex/model_create_user_response.go b/services/sqlserverflex/model_create_user_response.go index b42e55439..7e96cdf3a 100644 --- a/services/sqlserverflex/model_create_user_response.go +++ b/services/sqlserverflex/model_create_user_response.go @@ -11,5 +11,5 @@ API version: 1.0.0 package sqlserverflex type CreateUserResponse struct { - Item *User `json:"item,omitempty"` + Item *SingleUser `json:"item,omitempty"` } diff --git a/services/sqlserverflex/model_database_documentation_create_database_request_options.go b/services/sqlserverflex/model_database_documentation_create_database_request_options.go new file mode 100644 index 000000000..0ae49db3c --- /dev/null +++ b/services/sqlserverflex/model_database_documentation_create_database_request_options.go @@ -0,0 +1,21 @@ +/* +STACKIT MSSQL Service API + +This is the documentation for the STACKIT MSSQL service + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package sqlserverflex + +type DatabaseDocumentationCreateDatabaseRequestOptions struct { + // Collation of the database + Collation *string `json:"collation,omitempty"` + // CompatibilityLevel of the Database. + CompatibilityLevel *string `json:"compatibilityLevel,omitempty"` + // Name of the owner of the database. + // REQUIRED + Owner *string `json:"owner"` +} diff --git a/services/sqlserverflex/model_database_options.go b/services/sqlserverflex/model_database_options.go index d4f64e35e..38ec39f51 100644 --- a/services/sqlserverflex/model_database_options.go +++ b/services/sqlserverflex/model_database_options.go @@ -16,7 +16,7 @@ type DatabaseOptions struct { // IsEncrypted shows if the database is encrypted. IsEncrypted *bool `json:"isEncrypted,omitempty"` // Name of the owner of the database. - OwnerName *string `json:"ownerName,omitempty"` + Owner *string `json:"owner,omitempty"` // A recovery model is a database property that controls how transactions are logged. RecoveryModel *string `json:"recoveryModel,omitempty"` // Indicates which users can access the database. diff --git a/services/sqlserverflex/model_get_database_response.go b/services/sqlserverflex/model_get_database_response.go index ff00fe232..473cb8987 100644 --- a/services/sqlserverflex/model_get_database_response.go +++ b/services/sqlserverflex/model_get_database_response.go @@ -11,9 +11,5 @@ API version: 1.0.0 package sqlserverflex type GetDatabaseResponse struct { - Collation *string `json:"collation,omitempty"` - CreateDate *string `json:"createDate,omitempty"` - Id *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Options *GetDatabaseResponseOptions `json:"options,omitempty"` + Database *SingleDatabase `json:"database,omitempty"` } diff --git a/services/sqlserverflex/model_get_user_response.go b/services/sqlserverflex/model_get_user_response.go index 021fe10d4..f949a13a8 100644 --- a/services/sqlserverflex/model_get_user_response.go +++ b/services/sqlserverflex/model_get_user_response.go @@ -11,5 +11,5 @@ API version: 1.0.0 package sqlserverflex type GetUserResponse struct { - Item *InstanceResponseUser `json:"item,omitempty"` + Item *UserResponseUser `json:"item,omitempty"` } diff --git a/services/sqlserverflex/model_instance_response_user.go b/services/sqlserverflex/model_instance_response_user.go deleted file mode 100644 index ab1f1f350..000000000 --- a/services/sqlserverflex/model_instance_response_user.go +++ /dev/null @@ -1,20 +0,0 @@ -/* -STACKIT MSSQL Service API - -This is the documentation for the STACKIT MSSQL service - -API version: 1.0.0 -*/ - -// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. - -package sqlserverflex - -type InstanceResponseUser struct { - Database *string `json:"database,omitempty"` - Host *string `json:"host,omitempty"` - Id *string `json:"id,omitempty"` - Port *int64 `json:"port,omitempty"` - Roles *[]string `json:"roles,omitempty"` - Username *string `json:"username,omitempty"` -} diff --git a/services/sqlserverflex/model_partial_update_instance_payload.go b/services/sqlserverflex/model_partial_update_instance_payload.go index 7c1b1f37e..36670a862 100644 --- a/services/sqlserverflex/model_partial_update_instance_payload.go +++ b/services/sqlserverflex/model_partial_update_instance_payload.go @@ -12,7 +12,7 @@ package sqlserverflex type PartialUpdateInstancePayload struct { Acl *CreateInstancePayloadAcl `json:"acl,omitempty"` - // Cronjob for the daily full backup if not provided a job will generated between 0000 and 0459 + // Cronjob for the daily full backup if not provided a job will generated between 00:00 and 04:59 BackupSchedule *string `json:"backupSchedule,omitempty"` // Id of the selected flavor FlavorId *string `json:"flavorId,omitempty"` diff --git a/services/sqlserverflex/model_role.go b/services/sqlserverflex/model_role.go deleted file mode 100644 index b8b9a801d..000000000 --- a/services/sqlserverflex/model_role.go +++ /dev/null @@ -1,139 +0,0 @@ -/* -STACKIT MSSQL Service API - -This is the documentation for the STACKIT MSSQL service - -API version: 1.0.0 -*/ - -// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. - -package sqlserverflex - -import ( - "encoding/json" - "fmt" -) - -// Role the model 'Role' -type Role string - -// List of Role -const ( - ROLE_SELECT Role = "SELECT" - ROLE_INSERT Role = "INSERT" - ROLE_UPDATE Role = "UPDATE" - ROLE_DELETE Role = "DELETE" - ROLE_TRUNCATE Role = "TRUNCATE" - ROLE_TRIGGER Role = "TRIGGER" - ROLE_CREATE Role = "CREATE" - ROLE_CONNECT Role = "CONNECT" - ROLE_TEMPORARY Role = "TEMPORARY" - ROLE_EXECUTE Role = "EXECUTE" - ROLE_USAGE Role = "USAGE" - ROLE_READ Role = "read" - ROLE_READ_WRITE Role = "readWrite" - ROLE_READ_WRITE_ANY_DATABASE Role = "readWriteAnyDatabase" -) - -// All allowed values of Role enum -var AllowedRoleEnumValues = []Role{ - "SELECT", - "INSERT", - "UPDATE", - "DELETE", - "TRUNCATE", - "TRIGGER", - "CREATE", - "CONNECT", - "TEMPORARY", - "EXECUTE", - "USAGE", - "read", - "readWrite", - "readWriteAnyDatabase", -} - -func (v *Role) UnmarshalJSON(src []byte) error { - var value string - err := json.Unmarshal(src, &value) - if err != nil { - return err - } - // Allow unmarshalling zero value for testing purposes - var zeroValue string - if value == zeroValue { - return nil - } - enumTypeValue := Role(value) - for _, existing := range AllowedRoleEnumValues { - if existing == enumTypeValue { - *v = enumTypeValue - return nil - } - } - - return fmt.Errorf("%+v is not a valid Role", value) -} - -// NewRoleFromValue returns a pointer to a valid Role -// for the value passed as argument, or an error if the value passed is not allowed by the enum -func NewRoleFromValue(v string) (*Role, error) { - ev := Role(v) - if ev.IsValid() { - return &ev, nil - } else { - return nil, fmt.Errorf("invalid value '%v' for Role: valid values are %v", v, AllowedRoleEnumValues) - } -} - -// IsValid return true if the value is valid for the enum, false otherwise -func (v Role) IsValid() bool { - for _, existing := range AllowedRoleEnumValues { - if existing == v { - return true - } - } - return false -} - -// Ptr returns reference to Role value -func (v Role) Ptr() *Role { - return &v -} - -type NullableRole struct { - value *Role - isSet bool -} - -func (v NullableRole) Get() *Role { - return v.value -} - -func (v *NullableRole) Set(val *Role) { - v.value = val - v.isSet = true -} - -func (v NullableRole) IsSet() bool { - return v.isSet -} - -func (v *NullableRole) Unset() { - v.value = nil - v.isSet = false -} - -func NewNullableRole(val *Role) *NullableRole { - return &NullableRole{value: val, isSet: true} -} - -func (v NullableRole) MarshalJSON() ([]byte, error) { - return json.Marshal(v.value) -} - -func (v *NullableRole) UnmarshalJSON(src []byte) error { - v.isSet = true - return json.Unmarshal(src, &v.value) -} diff --git a/services/sqlserverflex/model_single_database.go b/services/sqlserverflex/model_single_database.go new file mode 100644 index 000000000..f37c95043 --- /dev/null +++ b/services/sqlserverflex/model_single_database.go @@ -0,0 +1,19 @@ +/* +STACKIT MSSQL Service API + +This is the documentation for the STACKIT MSSQL service + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package sqlserverflex + +type SingleDatabase struct { + Collation *string `json:"collation,omitempty"` + CreateDate *string `json:"createDate,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Options *SingleDatabaseOptions `json:"options,omitempty"` +} diff --git a/services/sqlserverflex/model_get_database_response_options.go b/services/sqlserverflex/model_single_database_options.go similarity index 88% rename from services/sqlserverflex/model_get_database_response_options.go rename to services/sqlserverflex/model_single_database_options.go index ce52e6b01..9dba17e0b 100644 --- a/services/sqlserverflex/model_get_database_response_options.go +++ b/services/sqlserverflex/model_single_database_options.go @@ -10,13 +10,13 @@ API version: 1.0.0 package sqlserverflex -type GetDatabaseResponseOptions struct { +type SingleDatabaseOptions struct { // CompatibilityLevel of the Database. CompatibilityLevel *int64 `json:"compatibilityLevel,omitempty"` // IsEncrypted shows if the database is encrypted. IsEncrypted *bool `json:"isEncrypted,omitempty"` // Name of the owner of the database. - OwnerName *string `json:"ownerName,omitempty"` + Owner *string `json:"owner,omitempty"` // A recovery model is a database property that controls how transactions are logged. RecoveryModel *string `json:"recoveryModel,omitempty"` // Indicates which users can access the database. diff --git a/services/sqlserverflex/model_single_user.go b/services/sqlserverflex/model_single_user.go new file mode 100644 index 000000000..187d7003e --- /dev/null +++ b/services/sqlserverflex/model_single_user.go @@ -0,0 +1,22 @@ +/* +STACKIT MSSQL Service API + +This is the documentation for the STACKIT MSSQL service + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package sqlserverflex + +type SingleUser struct { + DefaultDatabase *string `json:"default_database,omitempty"` + Host *string `json:"host,omitempty"` + Id *string `json:"id,omitempty"` + Password *string `json:"password,omitempty"` + Port *int64 `json:"port,omitempty"` + Roles *[]string `json:"roles,omitempty"` + Uri *string `json:"uri,omitempty"` + Username *string `json:"username,omitempty"` +} diff --git a/services/sqlserverflex/model_trigger_database_restore_payload.go b/services/sqlserverflex/model_trigger_database_restore_payload.go index b829a43ea..43f02a3e0 100644 --- a/services/sqlserverflex/model_trigger_database_restore_payload.go +++ b/services/sqlserverflex/model_trigger_database_restore_payload.go @@ -12,7 +12,9 @@ package sqlserverflex type TriggerDatabaseRestorePayload struct { // Name for the restored database no overwrite allowed at the moment - Name *string `json:"name,omitempty"` + // REQUIRED + Name *string `json:"name"` // Time of the restore point formate RFC3339 - RestoreDateTime *string `json:"restoreDateTime,omitempty"` + // REQUIRED + RestoreDateTime *string `json:"restoreDateTime"` } diff --git a/services/sqlserverflex/model_update_instance_payload.go b/services/sqlserverflex/model_update_instance_payload.go index 960f8bd1a..063a646ac 100644 --- a/services/sqlserverflex/model_update_instance_payload.go +++ b/services/sqlserverflex/model_update_instance_payload.go @@ -11,14 +11,20 @@ API version: 1.0.0 package sqlserverflex type UpdateInstancePayload struct { - Acl *CreateInstancePayloadAcl `json:"acl,omitempty"` - // Cronjob for the daily full backup if not provided a job will generated between 0000 and 0459 - BackupSchedule *string `json:"backupSchedule,omitempty"` + // REQUIRED + Acl *CreateInstancePayloadAcl `json:"acl"` + // Cronjob for the daily full backup if not provided a job will generated between 00:00 and 04:59 + // REQUIRED + BackupSchedule *string `json:"backupSchedule"` // Id of the selected flavor - FlavorId *string `json:"flavorId,omitempty"` - Labels *map[string]interface{} `json:"labels,omitempty"` + // REQUIRED + FlavorId *string `json:"flavorId"` + // REQUIRED + Labels *map[string]interface{} `json:"labels"` // Name of the instance - Name *string `json:"name,omitempty"` + // REQUIRED + Name *string `json:"name"` // Version of the MSSQL Server - Version *string `json:"version,omitempty"` + // REQUIRED + Version *string `json:"version"` } diff --git a/services/sqlserverflex/model_user_response_user.go b/services/sqlserverflex/model_user_response_user.go new file mode 100644 index 000000000..4bf81c5a9 --- /dev/null +++ b/services/sqlserverflex/model_user_response_user.go @@ -0,0 +1,20 @@ +/* +STACKIT MSSQL Service API + +This is the documentation for the STACKIT MSSQL service + +API version: 1.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package sqlserverflex + +type UserResponseUser struct { + DefaultDatabase *string `json:"default_database,omitempty"` + Host *string `json:"host,omitempty"` + Id *string `json:"id,omitempty"` + Port *int64 `json:"port,omitempty"` + Roles *[]string `json:"roles,omitempty"` + Username *string `json:"username,omitempty"` +} From 4c89e1411de56eb95977332d90a3911fdb9e85f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Palet?= Date: Tue, 9 Jul 2024 11:54:41 +0100 Subject: [PATCH 2/3] Add changelogs --- CHANGELOG.md | 8 ++++++++ services/sqlserverflex/CHANGELOG.md | 12 +++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f793426a6..7861e9dff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ ## Release (2024-XX-XX) +- `sqlserverflex`: [v0.3.0](services/sqlserverflex/CHANGELOG.md#v030-2024-07-09) + - **Breaking changes:** + - `Database` renamed to `DefaultDatabase`, in `CreateUserPayload` + - `Roles` type changed from `[]Role` to `[]string`, in `CreateUserPayload` + - `User` renamed to `SingleUser`, in `CreateUserResponse` + - `OwnerName` renamed to `Owner`, in `DatabaseOptions` + - Fields in `GetDatabaseResponse` are now nested in a `Database` field (with type `SingleDatabase`) + - `GetDatabaseResponseOptions` renamed to `SingleDatabaseOptions` (and `OwnerName` renamed to `Owner`) - `archiving`: [v0.1.0](services/archiving/CHANGELOG.md#v010-2024-07-04) - Manage your STACKIT Archiving instance with: `CreateInstance`, `DeleteInstance`, `GetInstance`, `ListInstances` and `PartialUpdateInstance`. - `ske`: [v0.17.0](services/ske/CHANGELOG.md#v0170-2024-07-04) diff --git a/services/sqlserverflex/CHANGELOG.md b/services/sqlserverflex/CHANGELOG.md index 99e46d245..51d42111d 100644 --- a/services/sqlserverflex/CHANGELOG.md +++ b/services/sqlserverflex/CHANGELOG.md @@ -1,6 +1,16 @@ +## v0.3.0 (2024-07-09) + +- **Breaking changes:** + - `Database` renamed to `DefaultDatabase`, in `CreateUserPayload` + - `Roles` type changed from `[]Role` to `[]string`, in `CreateUserPayload` + - `User` renamed to `SingleUser`, in `CreateUserResponse` + - `OwnerName` renamed to `Owner`, in `DatabaseOptions` + - Fields in `GetDatabaseResponse` are now nested in a `Database` field (with type `SingleDatabase`) + - `GetDatabaseResponseOptions` renamed to `SingleDatabaseOptions` (and `OwnerName` renamed to `Owner`) + ## v0.2.0 (2024-05-24) -- **Feature** Waiters for async operations `CreateInstanceWaitHandler`, `UpdateInstanceWaitHandler`, and `DeleteInstanceWaitHandler` +- **Feature:** Waiters for async operations `CreateInstanceWaitHandler`, `UpdateInstanceWaitHandler`, and `DeleteInstanceWaitHandler` ## v0.1.0 (2024-05-22) From febec820ef8370f7062bc4b01dbc820c74dec2ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Palet?= Date: Tue, 9 Jul 2024 11:55:58 +0100 Subject: [PATCH 3/3] Improve phrasing --- CHANGELOG.md | 2 +- services/sqlserverflex/CHANGELOG.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7861e9dff..dff711d6d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ - `sqlserverflex`: [v0.3.0](services/sqlserverflex/CHANGELOG.md#v030-2024-07-09) - **Breaking changes:** - `Database` renamed to `DefaultDatabase`, in `CreateUserPayload` - - `Roles` type changed from `[]Role` to `[]string`, in `CreateUserPayload` + - Type of `Roles` changed from `[]Role` to `[]string`, in `CreateUserPayload` - `User` renamed to `SingleUser`, in `CreateUserResponse` - `OwnerName` renamed to `Owner`, in `DatabaseOptions` - Fields in `GetDatabaseResponse` are now nested in a `Database` field (with type `SingleDatabase`) diff --git a/services/sqlserverflex/CHANGELOG.md b/services/sqlserverflex/CHANGELOG.md index 51d42111d..b92d9436c 100644 --- a/services/sqlserverflex/CHANGELOG.md +++ b/services/sqlserverflex/CHANGELOG.md @@ -2,7 +2,7 @@ - **Breaking changes:** - `Database` renamed to `DefaultDatabase`, in `CreateUserPayload` - - `Roles` type changed from `[]Role` to `[]string`, in `CreateUserPayload` + - Type of `Roles` changed from `[]Role` to `[]string`, in `CreateUserPayload` - `User` renamed to `SingleUser`, in `CreateUserResponse` - `OwnerName` renamed to `Owner`, in `DatabaseOptions` - Fields in `GetDatabaseResponse` are now nested in a `Database` field (with type `SingleDatabase`)