diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstance.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstance.tsp index cfc0e21079f1..8fb0fd9669f7 100644 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstance.tsp +++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstance.tsp @@ -3,7 +3,6 @@ import "./models.tsp"; using TypeSpec.Rest; using Azure.ResourceManager; using TypeSpec.Http; -using TypeSpec.OpenAPI; namespace Microsoft.Workloads; /** @@ -78,45 +77,73 @@ interface SAPVirtualInstances { /** * Gets the sizing recommendations. */ - #suppress "@azure-tools/typespec-azure-core/no-openapi" "Added Operation ID as it determines the PowerShell verb used." - @operationId("SapVirtualInstances_InvokeSizingRecommendations") - getSizingRecommendations is VirtualResourceActionSync< - SAPVirtualInstanceMetadata, + getSizingRecommendations is ArmResourceActionSync< + SubscriptionLocationResource, SAPSizingRecommendationRequest, - SAPSizingRecommendationResult + SAPSizingRecommendationResult, + Parameters = { + /** + * The default variable. + */ + @path + @segment("sapVirtualInstanceMetadata") + @key + name: "default"; + } >; /** * Get a list of SAP supported SKUs for ASCS, Application and Database tier. */ - #suppress "@azure-tools/typespec-azure-core/no-openapi" "Added Operation ID as it determines the PowerShell verb used." - @operationId("SapVirtualInstances_InvokeSapSupportedSku") - getSapSupportedSku is VirtualResourceActionSync< - SAPVirtualInstanceMetadata, + getSapSupportedSku is ArmResourceActionSync< + SubscriptionLocationResource, SAPSupportedSkusRequest, - SAPSupportedResourceSkusResult + SAPSupportedResourceSkusResult, + Parameters = { + /** + * The default variable. + */ + @path + @segment("sapVirtualInstanceMetadata") + @key + name: "default"; + } >; /** * Get the SAP Disk Configuration Layout prod/non-prod SAP System. */ - #suppress "@azure-tools/typespec-azure-core/no-openapi" "Added Operation ID as it determines the PowerShell verb used." - @operationId("SapVirtualInstances_InvokeDiskConfigurations") - getDiskConfigurations is VirtualResourceActionSync< - SAPVirtualInstanceMetadata, + getDiskConfigurations is ArmResourceActionSync< + SubscriptionLocationResource, SAPDiskConfigurationsRequest, - SAPDiskConfigurationsResult + SAPDiskConfigurationsResult, + Parameters = { + /** + * The default variable. + */ + @path + @segment("sapVirtualInstanceMetadata") + @key + name: "default"; + } >; /** * Get the recommended SAP Availability Zone Pair Details for your region. */ - #suppress "@azure-tools/typespec-azure-core/no-openapi" "Added Operation ID as it determines the PowerShell verb used." - @operationId("SapVirtualInstances_InvokeAvailabilityZoneDetails") - getAvailabilityZoneDetails is VirtualResourceActionSync< - SAPVirtualInstanceMetadata, + getAvailabilityZoneDetails is ArmResourceActionSync< + SubscriptionLocationResource, SAPAvailabilityZoneDetailsRequest, - SAPAvailabilityZoneDetailsResult + SAPAvailabilityZoneDetailsResult, + Parameters = { + /** + * The default variable. + */ + @path + @segment("sapVirtualInstanceMetadata") + @key + name: "default"; + } >; } diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstanceMetadata.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstanceMetadata.tsp deleted file mode 100644 index cb25e5462664..000000000000 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/SAPVirtualInstanceMetadata.tsp +++ /dev/null @@ -1,23 +0,0 @@ -using TypeSpec.Http; -using TypeSpec.Rest; -using Azure.ResourceManager; - -namespace Microsoft.Workloads; - -/** - * The SAP Virtual Instance Metadata. - */ -#suppress "@azure-tools/typespec-azure-core/casing-style" "SAP is used for representing the company product." -@singleton -@parentResource(SubscriptionLocationResource) -@armVirtualResource -model SAPVirtualInstanceMetadata { - /** - * The default variable. - */ - @path - @visibility(Lifecycle.Read) - @segment("sapVirtualInstanceMetadata") - @key - default: "string"; -} diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/back-compatible.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/back-compatible.tsp index acfcbc865753..2bd56d602863 100644 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/back-compatible.tsp +++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/back-compatible.tsp @@ -17,6 +17,22 @@ using Microsoft.Workloads; "SapApplicationServerInstances", "autorest" ); +@@clientName(SAPVirtualInstances.getSizingRecommendations, + "InvokeSizingRecommendations", + "autorest" +); +@@clientName(SAPVirtualInstances.getSapSupportedSku, + "InvokeSapSupportedSku", + "autorest" +); +@@clientName(SAPVirtualInstances.getDiskConfigurations, + "InvokeDiskConfigurations", + "autorest" +); +@@clientName(SAPVirtualInstances.getAvailabilityZoneDetails, + "InvokeAvailabilityZoneDetails", + "autorest" +); @@Azure.ClientGenerator.Core.Legacy.flattenProperty(SAPApplicationServerInstance.properties, "autorest" diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/client.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/client.tsp index 0bd4bae822bf..2e4b9394a90b 100644 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/client.tsp +++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/client.tsp @@ -91,7 +91,6 @@ using Microsoft.Workloads; @@clientName(SAPCentralServerInstance, "SapCentralServerInstance", "java"); @@clientName(SAPDatabaseInstance, "SapDatabaseInstance", "java"); @@clientName(SAPVirtualInstance, "SapVirtualInstance", "java"); -@@clientName(SAPVirtualInstanceMetadata, "SapVirtualInstanceMetadata", "java"); @@clientName(UpdateSAPVirtualInstanceRequest, "UpdateSapVirtualInstanceRequest", "java" @@ -216,10 +215,6 @@ using Microsoft.Workloads; @@clientName(SAPCentralServerInstance, "SapCentralServerInstance", "csharp"); @@clientName(SAPDatabaseInstance, "SapDatabaseInstance", "csharp"); @@clientName(SAPVirtualInstance, "SapVirtualInstance", "csharp"); -@@clientName(SAPVirtualInstanceMetadata, - "SapVirtualInstanceMetadata", - "csharp" -); @@clientName(UpdateSAPVirtualInstanceRequest, "UpdateSapVirtualInstanceRequest", "csharp" diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/custom.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/custom.tsp index 48bd83dad7f7..14927fd82f30 100644 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/custom.tsp +++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/custom.tsp @@ -1,39 +1,6 @@ using Http; using Rest; using Azure.ResourceManager; -using Azure.ResourceManager.Foundations; - -/** - * A synchronous resource action. - * @template Resource The resource being acted upon - * @template Request The request model for the action - * @template Response The response model for the action - * @template BaseParameters Optional. Allows overriding the parameters for the operation - * @template Parameters Optional. Additional parameters after the path parameters - * @template Error Optional. The error response, if non-standard. - */ -#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-operation" "Custom template" -// THIS IS TO PROVIDE a temp workaround. The standard ArmResourceXX operations will be expected to support -// ARM virtual resources. Until then, use this custom template -@autoRoute -@armResourceAction(Resource) -@post -@returnsDoc("Azure operation completed successfully.") -op VirtualResourceActionSync< - Resource extends Foundations.Resource, - Request extends TypeSpec.Reflection.Model | void, - Response extends TypeSpec.Reflection.Model | void, - BaseParameters = DefaultBaseParameters, - Parameters extends {} = {}, - Error extends {} = ErrorResponse ->( - ...ResourceInstanceParameters, - ...Parameters, - - @doc("The content of the action request") - @bodyRoot - body: Request, -): Response | Error; /** * @dev A long-running resource action. diff --git a/specification/workloads/Workloads.SAPVirtualInstance.Management/main.tsp b/specification/workloads/Workloads.SAPVirtualInstance.Management/main.tsp index 4aed7841e6ca..ad44df5c2215 100644 --- a/specification/workloads/Workloads.SAPVirtualInstance.Management/main.tsp +++ b/specification/workloads/Workloads.SAPVirtualInstance.Management/main.tsp @@ -13,7 +13,6 @@ import "./SAPVirtualInstance.tsp"; import "./SAPCentralServerInstance.tsp"; import "./SAPDatabaseInstance.tsp"; import "./SAPApplicationServerInstance.tsp"; -import "./SAPVirtualInstanceMetadata.tsp"; import "./custom.tsp"; import "./back-compatible.tsp";