Skip to content

Deploy Logical Servers API spec updates for Soft-Delete #33764

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{

Check notice on line 1 in specification/sql/resource-manager/Microsoft.Sql/preview/2023-05-01-preview/Servers.json

View workflow job for this annotation

GitHub Actions / TypeSpec Requirement

Brownfield services will soon be required to convert from OpenAPI to TypeSpec. See https://aka.ms/azsdk/typespec.
"swagger": "2.0",
"info": {
"version": "2023-05-01-preview",
Expand Down Expand Up @@ -256,7 +256,7 @@
}
},
"default": {
"description": "*** Error Responses: ***\n\n * 400 ManagedInstanceStoppingOrStopped - Conflicting operation submitted while instance is in stopping/stopped state\n\n * 400 ManagedInstanceStarting - Conflicting operation submitted while instance is in starting state\n\n * 400 MissingIdentityId - No user assigned identity is provided when the identity type is set to UserAssigned\n\n * 400 InvalidPrimaryIdentityId - User provides a value for PrimaryUserIdentityId but the same is not listed in the IdentityId parameter\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 UmiMissingAkvPermissions - PrimaryUserAssignedIdentityId provided by user does not have access to KeyId provided\n\n * 400 MissingPrimaryIdentity - PrimaryUserAssignedIdentityId provided by user does not have access to KeyId provided\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 PrimaryIdentityMissingPermissionForKeyId - KeyId is provided by user during create but PrimaryUserAssignedIdentityId is not provided in the API call\n\n * 400 InvalidIdentityTypeForKeyId - KeyId is provided by user during create but identity type is not set to 'UserAssigned'\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 Ipv6FeatureNotEnabled - User tried to turn on Ipv6 support on the server without enabling feature flag on subscription, or the feature support is currently disabled in the region.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CMKOperationNotAllowed - User tried to perform an operation on the server when the server did not have Azure Key Vault Access.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 400 ExternalAdministratorLoginSameAsSqlAdmin - The names of the Azure Active Directory administrator and of the server admin account must be different. Please provide different values.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionNotFound - The requested subscription was not found.\n\n * 409 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.",
"description": "*** Error Responses: ***\n\n * 400 ManagedInstanceStoppingOrStopped - Conflicting operation submitted while instance is in stopping/stopped state\n\n * 400 ManagedInstanceStarting - Conflicting operation submitted while instance is in starting state\n\n * 400 NameAlreadyExistsSoftDeleted - The server name requested is taken by a server in soft deleted state. Purge or recover the server to unblock. \n\n * 400 MissingIdentityId - No user assigned identity is provided when the identity type is set to UserAssigned\n\n * 400 InvalidPrimaryIdentityId - User provides a value for PrimaryUserIdentityId but the same is not listed in the IdentityId parameter\n\n * 400 PECsNotExistingToDenyPublicNetworkAccess - Unable to set Deny Public Network Access to Yes since there is no private endpoint enabled to access the server. Please set up private endpoints and retry the operation (https://docs.microsoft.com/azure/sql-database/sql-database-private-endpoint-overview#how-to-set-up-private-link-for-azure-sql-database).\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 UmiMissingAkvPermissions - PrimaryUserAssignedIdentityId provided by user does not have access to KeyId provided\n\n * 400 MissingPrimaryIdentity - PrimaryUserAssignedIdentityId provided by user does not have access to KeyId provided\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 PrimaryIdentityMissingPermissionForKeyId - KeyId is provided by user during create but PrimaryUserAssignedIdentityId is not provided in the API call\n\n * 400 InvalidIdentityTypeForKeyId - KeyId is provided by user during create but identity type is not set to 'UserAssigned'\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 Ipv6FeatureNotEnabled - User tried to turn on Ipv6 support on the server without enabling feature flag on subscription, or the feature support is currently disabled in the region.\n\n * 400 PasswordTooShort - The provided password is too short\n\n * 400 AadOnlyAuthenticationIsEnabled - Azure Active Directory Only Authentication is enabled. Please contact your system administrator.\n\n * 400 RegionDoesNotSupportVersion - A user attempted to create a server of a specified version in a location where that server version isn't supported.\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 CMKOperationNotAllowed - User tried to perform an operation on the server when the server did not have Azure Key Vault Access.\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 RegionDoesNotAllowProvisioning - The selected location is not accepting new Windows Azure SQL Database servers. This may change at a later time.\n\n * 400 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidExternalAdministratorLogin - Invalid or missing external administrator login name.\n\n * 400 InvalidExternalAdministratorSid - Invalid or missing external administrator object id.\n\n * 400 InvalidExternalAdministratorTenantId - Invalid or missing external administrator tenant id.\n\n * 400 ExternalAdministratorPrincipalType - Invalid or missing external administrator principal type. Please select from User, Application or Group.\n\n * 400 MissingExternalAdministratorWithAadOnlyAuth - In order to use Azure AD Only Authentication, please provide details of an external administrator.\n\n * 400 ExternalAdministratorLoginSameAsSqlAdmin - The names of the Azure Active Directory administrator and of the server admin account must be different. Please provide different values.\n\n * 400 ServerAdministratorNameAlreadyExists - User tried to set the external admin and the principal name already exists in the 'master' database.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 SubscriptionNotFound - The requested subscription was not found.\n\n * 409 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\n\n * 409 OperationCancelled - The operation has been cancelled by user.\n\n * 409 OperationInterrupted - The operation on the resource could not be completed because it was interrupted by another operation on the same resource.\n\n * 409 UpsertLogicalServerRequestAlreadyInProgress - An ongoing logical server request is already in progress, please try your request again later.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.",
"schema": {
"$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
}
Expand Down Expand Up @@ -1170,6 +1170,31 @@
"name": "ExternalGovernanceStatus",
"modelAsString": true
}
},
"retentionDays": {
"format": "int32",
"description": "Number of days this server will stay soft-deleted.",
"type": "integer"
},
"createMode": {
"description": "Create mode for server, only valid values for this are Normal and Restore.",
"enum": [
"Normal",
"ServerMigrationV1",
"DatabaseMigrationV1",
"ServerMigration",
"Standby",
"Restore"
],
"type": "string",
"x-ms-enum": {
"name": "ServerCreateMode",
"modelAsString": true
},
"x-ms-mutability": [
"read",
"create"
]
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
},
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled"
"isIPv6Enabled": "Enabled",
"retentionDays": 7
},
"location": "Japan East"
}
Expand All @@ -38,6 +39,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"administrators": {
"principalType": "User",
"login": "[email protected]",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"privateEndpointConnections": [
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"administrators": {
"principalType": "User",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"privateEndpointConnections": [
{
Expand Down Expand Up @@ -56,6 +57,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"privateEndpointConnections": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"privateEndpointConnections": [
{
Expand Down Expand Up @@ -57,6 +58,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"privateEndpointConnections": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"administrators": {
"principalType": "User",
Expand Down Expand Up @@ -64,6 +65,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"administrators": {
"principalType": "User",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"administrators": {
"principalType": "User",
Expand Down Expand Up @@ -63,6 +64,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"administrators": {
"principalType": "User",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
"administratorLoginPassword": "placeholder",
"publicNetworkAccess": "Disabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled"
"isIPv6Enabled": "Enabled",
"retentionDays": 7
}
}
},
Expand All @@ -33,6 +34,7 @@
"publicNetworkAccess": "Disabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"privateEndpointConnections": [
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{

Check notice on line 1 in specification/sql/resource-manager/Microsoft.Sql/stable/2023-08-01/Servers.json

View workflow job for this annotation

GitHub Actions / TypeSpec Requirement

Brownfield services will soon be required to convert from OpenAPI to TypeSpec. See https://aka.ms/azsdk/typespec.
"swagger": "2.0",
"info": {
"version": "2023-08-01",
Expand Down Expand Up @@ -1177,6 +1177,31 @@
"name": "ExternalGovernanceStatus",
"modelAsString": true
}
},
"retentionDays": {
"format": "int32",
"description": "Number of days this server will stay soft-deleted.",
"type": "integer"
},
"createMode": {
"description": "Create mode for server, only valid values for this are Normal and Restore.",
"enum": [
"Normal",
"ServerMigrationV1",
"DatabaseMigrationV1",
"ServerMigration",
"Standby",
"Restore"
],
"type": "string",
"x-ms-enum": {
"name": "ServerCreateMode",
"modelAsString": true
},
"x-ms-mutability": [
"read",
"create"
]
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
},
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled"
"isIPv6Enabled": "Enabled",
"retentionDays": 7
},
"location": "Japan East"
}
Expand All @@ -38,6 +39,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"administrators": {
"principalType": "User",
"login": "[email protected]",
Expand Down Expand Up @@ -77,6 +79,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"version": "12.0",
"state": "Ready",
"administrators": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
"publicNetworkAccess": "Enabled",
"restrictOutboundNetworkAccess": "Enabled",
"isIPv6Enabled": "Enabled",
"retentionDays": 7,
"externalGovernanceStatus": "Enabled",
"privateEndpointConnections": [
{
Expand Down
Loading
Loading