From e6dcb6ffe51e57f87ca745002ecdd6bcaa1c00f4 Mon Sep 17 00:00:00 2001
From: Azure PowerShell
<65331932+azure-powershell-bot@users.noreply.github.com>
Date: Fri, 20 Dec 2024 17:08:12 +0800
Subject: [PATCH] Move ComputeSchedule to main (#26912)
---
.../Az.ComputeSchedule.csproj | 10 +
.../Az.ComputeSchedule.format.ps1xml | 743 +++
.../Az.ComputeSchedule.psd1 | 23 +
.../Az.ComputeSchedule.psm1 | 119 +
.../ComputeSchedule.AutoRest/README.md | 238 +
.../ComputeSchedule.AutoRest/build-module.ps1 | 191 +
.../check-dependencies.ps1 | 65 +
.../create-model-cmdlets.ps1 | 262 +
.../custom/Az.ComputeSchedule.custom.psm1 | 17 +
.../ComputeSchedule.AutoRest/custom/README.md | 41 +
.../Get-AzComputeScheduleOperationError.md | 25 +
.../Get-AzComputeScheduleOperationStatus.md | 43 +
...voke-AzComputeScheduleExecuteDeallocate.md | 49 +
...nvoke-AzComputeScheduleExecuteHibernate.md | 49 +
.../Invoke-AzComputeScheduleExecuteStart.md | 49 +
...nvoke-AzComputeScheduleSubmitDeallocate.md | 51 +
...Invoke-AzComputeScheduleSubmitHibernate.md | 51 +
.../Invoke-AzComputeScheduleSubmitStart.md | 51 +
.../Stop-AzComputeScheduleScheduledAction.md | 43 +
.../export-surface.ps1 | 41 +
.../Get-AzComputeScheduleOperationError.ps1 | 189 +
.../Get-AzComputeScheduleOperationStatus.ps1 | 195 +
...oke-AzComputeScheduleExecuteDeallocate.ps1 | 207 +
...voke-AzComputeScheduleExecuteHibernate.ps1 | 207 +
.../Invoke-AzComputeScheduleExecuteStart.ps1 | 207 +
...voke-AzComputeScheduleSubmitDeallocate.ps1 | 226 +
...nvoke-AzComputeScheduleSubmitHibernate.ps1 | 226 +
.../Invoke-AzComputeScheduleSubmitStart.ps1 | 226 +
.../exports/ProxyCmdletDefinitions.ps1 | 1810 ++++++
.../exports/README.md | 20 +
.../Stop-AzComputeScheduleScheduledAction.ps1 | 247 +
.../generate-help.ps1 | 74 +
.../generate-portal-ux.ps1 | 383 ++
.../generated/Module.cs | 202 +
.../generated/api/ComputeSchedule.cs | 4319 +++++++++++++
.../generated/api/Models/Any.PowerShell.cs | 156 +
.../generated/api/Models/Any.TypeConverter.cs | 146 +
.../generated/api/Models/Any.cs | 34 +
.../generated/api/Models/Any.json.cs | 104 +
.../CancelOperationsRequest.PowerShell.cs | 174 +
.../CancelOperationsRequest.TypeConverter.cs | 147 +
.../api/Models/CancelOperationsRequest.cs | 76 +
.../Models/CancelOperationsRequest.json.cs | 120 +
.../CancelOperationsResponse.PowerShell.cs | 164 +
.../CancelOperationsResponse.TypeConverter.cs | 147 +
.../api/Models/CancelOperationsResponse.cs | 54 +
.../Models/CancelOperationsResponse.json.cs | 116 +
.../ComputeScheduleIdentity.PowerShell.cs | 178 +
.../ComputeScheduleIdentity.TypeConverter.cs | 157 +
.../api/Models/ComputeScheduleIdentity.cs | 91 +
.../Models/ComputeScheduleIdentity.json.cs | 111 +
...ateResourceOperationResponse.PowerShell.cs | 192 +
...ResourceOperationResponse.TypeConverter.cs | 149 +
.../DeallocateResourceOperationResponse.cs | 114 +
...eallocateResourceOperationResponse.json.cs | 126 +
.../Models/ErrorAdditionalInfo.PowerShell.cs | 172 +
.../ErrorAdditionalInfo.TypeConverter.cs | 147 +
.../api/Models/ErrorAdditionalInfo.cs | 80 +
.../api/Models/ErrorAdditionalInfo.json.cs | 116 +
.../api/Models/ErrorDetail.PowerShell.cs | 196 +
.../api/Models/ErrorDetail.TypeConverter.cs | 147 +
.../generated/api/Models/ErrorDetail.cs | 149 +
.../generated/api/Models/ErrorDetail.json.cs | 147 +
.../api/Models/ErrorResponse.PowerShell.cs | 208 +
.../api/Models/ErrorResponse.TypeConverter.cs | 147 +
.../generated/api/Models/ErrorResponse.cs | 151 +
.../api/Models/ErrorResponse.json.cs | 111 +
.../ExecuteDeallocateRequest.PowerShell.cs | 220 +
.../ExecuteDeallocateRequest.TypeConverter.cs | 147 +
.../api/Models/ExecuteDeallocateRequest.cs | 153 +
.../Models/ExecuteDeallocateRequest.json.cs | 112 +
.../ExecuteHibernateRequest.PowerShell.cs | 220 +
.../ExecuteHibernateRequest.TypeConverter.cs | 147 +
.../api/Models/ExecuteHibernateRequest.cs | 153 +
.../Models/ExecuteHibernateRequest.json.cs | 112 +
.../Models/ExecuteStartRequest.PowerShell.cs | 220 +
.../ExecuteStartRequest.TypeConverter.cs | 147 +
.../api/Models/ExecuteStartRequest.cs | 153 +
.../api/Models/ExecuteStartRequest.json.cs | 112 +
.../Models/ExecutionParameters.PowerShell.cs | 188 +
.../ExecutionParameters.TypeConverter.cs | 147 +
.../api/Models/ExecutionParameters.cs | 102 +
.../api/Models/ExecutionParameters.json.cs | 110 +
.../GetOperationErrorsRequest.PowerShell.cs | 164 +
...GetOperationErrorsRequest.TypeConverter.cs | 147 +
.../api/Models/GetOperationErrorsRequest.cs | 54 +
.../Models/GetOperationErrorsRequest.json.cs | 116 +
.../GetOperationErrorsResponse.PowerShell.cs | 164 +
...etOperationErrorsResponse.TypeConverter.cs | 147 +
.../api/Models/GetOperationErrorsResponse.cs | 54 +
.../Models/GetOperationErrorsResponse.json.cs | 116 +
.../GetOperationStatusRequest.PowerShell.cs | 172 +
...GetOperationStatusRequest.TypeConverter.cs | 147 +
.../api/Models/GetOperationStatusRequest.cs | 74 +
.../Models/GetOperationStatusRequest.json.cs | 118 +
.../GetOperationStatusResponse.PowerShell.cs | 164 +
...etOperationStatusResponse.TypeConverter.cs | 147 +
.../api/Models/GetOperationStatusResponse.cs | 54 +
.../Models/GetOperationStatusResponse.json.cs | 116 +
...ateResourceOperationResponse.PowerShell.cs | 192 +
...ResourceOperationResponse.TypeConverter.cs | 149 +
.../HibernateResourceOperationResponse.cs | 114 +
...HibernateResourceOperationResponse.json.cs | 126 +
.../api/Models/Operation.PowerShell.cs | 230 +
.../api/Models/Operation.TypeConverter.cs | 146 +
.../generated/api/Models/Operation.cs | 284 +
.../generated/api/Models/Operation.json.cs | 130 +
.../api/Models/OperationDisplay.PowerShell.cs | 188 +
.../Models/OperationDisplay.TypeConverter.cs | 147 +
.../generated/api/Models/OperationDisplay.cs | 153 +
.../api/Models/OperationDisplay.json.cs | 126 +
.../OperationErrorDetails.PowerShell.cs | 196 +
.../OperationErrorDetails.TypeConverter.cs | 147 +
.../api/Models/OperationErrorDetails.cs | 134 +
.../api/Models/OperationErrorDetails.json.cs | 116 +
.../OperationErrorsResult.PowerShell.cs | 214 +
.../OperationErrorsResult.TypeConverter.cs | 147 +
.../api/Models/OperationErrorsResult.cs | 176 +
.../api/Models/OperationErrorsResult.json.cs | 130 +
.../Models/OperationListResult.PowerShell.cs | 176 +
.../OperationListResult.TypeConverter.cs | 147 +
.../api/Models/OperationListResult.cs | 85 +
.../api/Models/OperationListResult.json.cs | 127 +
.../Models/ResourceOperation.PowerShell.cs | 308 +
.../Models/ResourceOperation.TypeConverter.cs | 147 +
.../generated/api/Models/ResourceOperation.cs | 343 +
.../api/Models/ResourceOperation.json.cs | 114 +
.../ResourceOperationDetails.PowerShell.cs | 276 +
.../ResourceOperationDetails.TypeConverter.cs | 147 +
.../api/Models/ResourceOperationDetails.cs | 312 +
.../Models/ResourceOperationDetails.json.cs | 128 +
.../ResourceOperationError.PowerShell.cs | 172 +
.../ResourceOperationError.TypeConverter.cs | 147 +
.../api/Models/ResourceOperationError.cs | 74 +
.../api/Models/ResourceOperationError.json.cs | 110 +
.../api/Models/Resources.PowerShell.cs | 164 +
.../api/Models/Resources.TypeConverter.cs | 146 +
.../generated/api/Models/Resources.cs | 54 +
.../generated/api/Models/Resources.json.cs | 116 +
.../api/Models/RetryPolicy.PowerShell.cs | 172 +
.../api/Models/RetryPolicy.TypeConverter.cs | 147 +
.../generated/api/Models/RetryPolicy.cs | 74 +
.../generated/api/Models/RetryPolicy.json.cs | 110 +
.../api/Models/Schedule.PowerShell.cs | 180 +
.../api/Models/Schedule.TypeConverter.cs | 146 +
.../generated/api/Models/Schedule.cs | 96 +
.../generated/api/Models/Schedule.json.cs | 112 +
...artResourceOperationResponse.PowerShell.cs | 188 +
...ResourceOperationResponse.TypeConverter.cs | 148 +
.../Models/StartResourceOperationResponse.cs | 114 +
.../StartResourceOperationResponse.json.cs | 125 +
.../SubmitDeallocateRequest.PowerShell.cs | 252 +
.../SubmitDeallocateRequest.TypeConverter.cs | 147 +
.../api/Models/SubmitDeallocateRequest.cs | 218 +
.../Models/SubmitDeallocateRequest.json.cs | 114 +
.../SubmitHibernateRequest.PowerShell.cs | 252 +
.../SubmitHibernateRequest.TypeConverter.cs | 147 +
.../api/Models/SubmitHibernateRequest.cs | 218 +
.../api/Models/SubmitHibernateRequest.json.cs | 114 +
.../Models/SubmitStartRequest.PowerShell.cs | 252 +
.../SubmitStartRequest.TypeConverter.cs | 147 +
.../api/Models/SubmitStartRequest.cs | 218 +
.../api/Models/SubmitStartRequest.json.cs | 114 +
...mputeScheduleOperationError_GetExpanded.cs | 521 ++
...uteScheduleOperationStatus_GetExpanded1.cs | 531 ++
.../GetAzComputeScheduleOperation_List.cs | 485 ++
...eScheduledAction_GetViaIdentityExpanded.cs | 510 ++
...ScheduledAction_GetViaIdentityExpanded1.cs | 520 ++
...eduleScheduledAction_GetViaJsonFilePath.cs | 523 ++
...duleScheduledAction_GetViaJsonFilePath1.cs | 522 ++
...cheduleScheduledAction_GetViaJsonString.cs | 521 ++
...heduleScheduledAction_GetViaJsonString1.cs | 520 ++
...heduleExecuteDeallocate_ExecuteExpanded.cs | 561 ++
...heduleExecuteHibernate_ExecuteExpanded1.cs | 561 ++
...eduledAction_ExecuteViaIdentityExpanded.cs | 554 ++
...duledAction_ExecuteViaIdentityExpanded1.cs | 554 ++
...duledAction_ExecuteViaIdentityExpanded2.cs | 554 ++
...eScheduledAction_ExecuteViaJsonFilePath.cs | 514 ++
...ScheduledAction_ExecuteViaJsonFilePath1.cs | 514 ++
...ScheduledAction_ExecuteViaJsonFilePath2.cs | 514 ++
...uteScheduledAction_ExecuteViaJsonString.cs | 512 ++
...teScheduledAction_ExecuteViaJsonString1.cs | 512 ++
...teScheduledAction_ExecuteViaJsonString2.cs | 512 ++
...teScheduleExecuteStart_ExecuteExpanded2.cs | 561 ++
...ScheduleSubmitDeallocate_SubmitExpanded.cs | 594 ++
...ScheduleSubmitHibernate_SubmitExpanded1.cs | 594 ++
...puteScheduleSubmitStart_SubmitExpanded2.cs | 594 ++
...duleOperation_CancelViaIdentityExpanded.cs | 522 ++
...AzComputeScheduleScheduledAction_Cancel.cs | 518 ++
...eScheduleScheduledAction_CancelExpanded.cs | 530 ++
...heduleScheduledAction_CancelViaIdentity.cs | 509 ++
...leScheduledAction_CancelViaJsonFilePath.cs | 518 ++
...duleScheduledAction_CancelViaJsonString.cs | 516 ++
...heduledAction_SubmitViaIdentityExpanded.cs | 582 ++
...eduledAction_SubmitViaIdentityExpanded1.cs | 582 ++
...eduledAction_SubmitViaIdentityExpanded2.cs | 582 ++
...leScheduledAction_SubmitViaJsonFilePath.cs | 512 ++
...eScheduledAction_SubmitViaJsonFilePath1.cs | 513 ++
...eScheduledAction_SubmitViaJsonFilePath2.cs | 513 ++
...duleScheduledAction_SubmitViaJsonString.cs | 510 ++
...uleScheduledAction_SubmitViaJsonString1.cs | 510 ++
...uleScheduledAction_SubmitViaJsonString2.cs | 510 ++
.../generated/runtime/AsyncCommandRuntime.cs | 832 +++
.../generated/runtime/AsyncJob.cs | 270 +
.../runtime/AsyncOperationResponse.cs | 176 +
.../Attributes/ExternalDocsAttribute.cs | 30 +
.../PSArgumentCompleterAttribute.cs | 52 +
.../BuildTime/Cmdlets/ExportCmdletSurface.cs | 113 +
.../BuildTime/Cmdlets/ExportExampleStub.cs | 74 +
.../BuildTime/Cmdlets/ExportFormatPs1xml.cs | 103 +
.../BuildTime/Cmdlets/ExportHelpMarkdown.cs | 56 +
.../BuildTime/Cmdlets/ExportModelSurface.cs | 117 +
.../BuildTime/Cmdlets/ExportProxyCmdlet.cs | 180 +
.../runtime/BuildTime/Cmdlets/ExportPsd1.cs | 193 +
.../BuildTime/Cmdlets/ExportTestStub.cs | 197 +
.../BuildTime/Cmdlets/GetCommonParameter.cs | 52 +
.../BuildTime/Cmdlets/GetModuleGuid.cs | 31 +
.../BuildTime/Cmdlets/GetScriptCmdlet.cs | 54 +
.../runtime/BuildTime/CollectionExtensions.cs | 20 +
.../runtime/BuildTime/MarkdownRenderer.cs | 122 +
.../runtime/BuildTime/Models/PsFormatTypes.cs | 138 +
.../BuildTime/Models/PsHelpMarkdownOutputs.cs | 199 +
.../runtime/BuildTime/Models/PsHelpTypes.cs | 202 +
.../BuildTime/Models/PsMarkdownTypes.cs | 329 +
.../BuildTime/Models/PsProxyOutputs.cs | 662 ++
.../runtime/BuildTime/Models/PsProxyTypes.cs | 544 ++
.../runtime/BuildTime/PsAttributes.cs | 131 +
.../runtime/BuildTime/PsExtensions.cs | 176 +
.../generated/runtime/BuildTime/PsHelpers.cs | 105 +
.../runtime/BuildTime/StringExtensions.cs | 24 +
.../runtime/BuildTime/XmlExtensions.cs | 28 +
.../generated/runtime/CmdInfoHandler.cs | 40 +
.../generated/runtime/Context.cs | 33 +
.../Conversions/ConversionException.cs | 17 +
.../runtime/Conversions/IJsonConverter.cs | 13 +
.../Conversions/Instances/BinaryConverter.cs | 24 +
.../Conversions/Instances/BooleanConverter.cs | 13 +
.../Instances/DateTimeConverter.cs | 18 +
.../Instances/DateTimeOffsetConverter.cs | 15 +
.../Conversions/Instances/DecimalConverter.cs | 16 +
.../Conversions/Instances/DoubleConverter.cs | 13 +
.../Conversions/Instances/EnumConverter.cs | 30 +
.../Conversions/Instances/GuidConverter.cs | 15 +
.../Instances/HashSet'1Converter.cs | 27 +
.../Conversions/Instances/Int16Converter.cs | 13 +
.../Conversions/Instances/Int32Converter.cs | 13 +
.../Conversions/Instances/Int64Converter.cs | 13 +
.../Instances/JsonArrayConverter.cs | 13 +
.../Instances/JsonObjectConverter.cs | 13 +
.../Conversions/Instances/SingleConverter.cs | 13 +
.../Conversions/Instances/StringConverter.cs | 13 +
.../Instances/TimeSpanConverter.cs | 15 +
.../Conversions/Instances/UInt16Converter.cs | 13 +
.../Conversions/Instances/UInt32Converter.cs | 13 +
.../Conversions/Instances/UInt64Converter.cs | 13 +
.../Conversions/Instances/UriConverter.cs | 15 +
.../runtime/Conversions/JsonConverter.cs | 21 +
.../Conversions/JsonConverterAttribute.cs | 18 +
.../Conversions/JsonConverterFactory.cs | 91 +
.../Conversions/StringLikeConverter.cs | 45 +
.../Customizations/IJsonSerializable.cs | 263 +
.../runtime/Customizations/JsonArray.cs | 13 +
.../runtime/Customizations/JsonBoolean.cs | 16 +
.../runtime/Customizations/JsonNode.cs | 21 +
.../runtime/Customizations/JsonNumber.cs | 78 +
.../runtime/Customizations/JsonObject.cs | 183 +
.../runtime/Customizations/JsonString.cs | 34 +
.../runtime/Customizations/XNodeArray.cs | 44 +
.../generated/runtime/Debugging.cs | 28 +
.../generated/runtime/DictionaryExtensions.cs | 33 +
.../generated/runtime/EventData.cs | 78 +
.../generated/runtime/EventDataExtensions.cs | 94 +
.../generated/runtime/EventListener.cs | 247 +
.../generated/runtime/Events.cs | 27 +
.../generated/runtime/EventsExtensions.cs | 27 +
.../generated/runtime/Extensions.cs | 117 +
.../Extensions/StringBuilderExtensions.cs | 23 +
.../Helpers/Extensions/TypeExtensions.cs | 61 +
.../generated/runtime/Helpers/Seperator.cs | 11 +
.../generated/runtime/Helpers/TypeDetails.cs | 116 +
.../generated/runtime/Helpers/XHelper.cs | 75 +
.../generated/runtime/HttpPipeline.cs | 88 +
.../generated/runtime/HttpPipelineMocking.ps1 | 110 +
.../generated/runtime/IAssociativeArray.cs | 24 +
.../generated/runtime/IHeaderSerializable.cs | 14 +
.../generated/runtime/ISendAsync.cs | 413 ++
.../generated/runtime/InfoAttribute.cs | 38 +
.../generated/runtime/InputHandler.cs | 22 +
.../generated/runtime/Iso/IsoDate.cs | 214 +
.../generated/runtime/JsonType.cs | 18 +
.../generated/runtime/MessageAttribute.cs | 350 +
.../runtime/MessageAttributeHelper.cs | 184 +
.../generated/runtime/Method.cs | 19 +
.../generated/runtime/Models/JsonMember.cs | 83 +
.../generated/runtime/Models/JsonModel.cs | 89 +
.../runtime/Models/JsonModelCache.cs | 19 +
.../runtime/Nodes/Collections/JsonArray.cs | 65 +
.../Nodes/Collections/XImmutableArray.cs | 62 +
.../runtime/Nodes/Collections/XList.cs | 64 +
.../runtime/Nodes/Collections/XNodeArray.cs | 73 +
.../runtime/Nodes/Collections/XSet.cs | 60 +
.../generated/runtime/Nodes/JsonBoolean.cs | 42 +
.../generated/runtime/Nodes/JsonDate.cs | 173 +
.../generated/runtime/Nodes/JsonNode.cs | 250 +
.../generated/runtime/Nodes/JsonNumber.cs | 109 +
.../generated/runtime/Nodes/JsonObject.cs | 172 +
.../generated/runtime/Nodes/JsonString.cs | 42 +
.../generated/runtime/Nodes/XBinary.cs | 40 +
.../generated/runtime/Nodes/XNull.cs | 15 +
.../Parser/Exceptions/ParseException.cs | 24 +
.../generated/runtime/Parser/JsonParser.cs | 180 +
.../generated/runtime/Parser/JsonToken.cs | 66 +
.../generated/runtime/Parser/JsonTokenizer.cs | 177 +
.../generated/runtime/Parser/Location.cs | 43 +
.../runtime/Parser/Readers/SourceReader.cs | 130 +
.../generated/runtime/Parser/TokenReader.cs | 39 +
.../generated/runtime/PipelineMocking.cs | 262 +
.../runtime/Properties/Resources.Designer.cs | 5655 +++++++++++++++++
.../runtime/Properties/Resources.resx | 1747 +++++
.../generated/runtime/Response.cs | 27 +
.../runtime/Serialization/JsonSerializer.cs | 350 +
.../Serialization/PropertyTransformation.cs | 21 +
.../Serialization/SerializationOptions.cs | 65 +
.../generated/runtime/SerializationMode.cs | 18 +
.../runtime/TypeConverterExtensions.cs | 261 +
.../runtime/UndeclaredResponseException.cs | 112 +
.../generated/runtime/Writers/JsonWriter.cs | 223 +
.../generated/runtime/delegates.cs | 23 +
.../help/Az.ComputeSchedule.md | 40 +
.../Get-AzComputeScheduleOperationError.md | 157 +
.../Get-AzComputeScheduleOperationStatus.md | 190 +
...voke-AzComputeScheduleExecuteDeallocate.md | 227 +
...nvoke-AzComputeScheduleExecuteHibernate.md | 227 +
.../Invoke-AzComputeScheduleExecuteStart.md | 227 +
...nvoke-AzComputeScheduleSubmitDeallocate.md | 276 +
...Invoke-AzComputeScheduleSubmitHibernate.md | 276 +
.../Invoke-AzComputeScheduleSubmitStart.md | 276 +
.../ComputeSchedule.AutoRest/help/README.md | 11 +
.../Stop-AzComputeScheduleScheduledAction.md | 280 +
.../ComputeSchedule.AutoRest/how-to.md | 58 +
.../internal/Az.ComputeSchedule.internal.psm1 | 38 +
.../Get-AzComputeScheduleOperation.ps1 | 125 +
.../Get-AzComputeScheduleScheduledAction.ps1 | 207 +
...zComputeScheduleExecuteScheduledAction.ps1 | 238 +
.../internal/ProxyCmdletDefinitions.ps1 | 937 +++
.../internal/README.md | 14 +
.../Stop-AzComputeScheduleOperation.ps1 | 155 +
...ubmit-AzComputeScheduleScheduledAction.ps1 | 272 +
.../ComputeSchedule.AutoRest/pack-module.ps1 | 17 +
.../ComputeSchedule.AutoRest/run-module.ps1 | 62 +
.../ComputeSchedule.AutoRest/test-module.ps1 | 98 +
.../test/AzComputeSchedule.Recording.json | 380 ++
.../test/AzComputeSchedule.Tests.ps1 | 145 +
...-AzComputeScheduleOperationError.Tests.ps1 | 21 +
...AzComputeScheduleOperationStatus.Tests.ps1 | 21 +
...ComputeScheduleExecuteDeallocate.Tests.ps1 | 21 +
...zComputeScheduleExecuteHibernate.Tests.ps1 | 21 +
...ke-AzComputeScheduleExecuteStart.Tests.ps1 | 21 +
...zComputeScheduleSubmitDeallocate.Tests.ps1 | 21 +
...AzComputeScheduleSubmitHibernate.Tests.ps1 | 21 +
...oke-AzComputeScheduleSubmitStart.Tests.ps1 | 21 +
.../ComputeSchedule.AutoRest/test/README.md | 17 +
...AzComputeScheduleScheduledAction.Tests.ps1 | 37 +
.../ComputeSchedule.AutoRest/test/env.json | 4 +
.../ComputeSchedule.AutoRest/test/loadEnv.ps1 | 29 +
.../test/localEnv.json | 4 +
.../ComputeSchedule.AutoRest/test/utils.ps1 | 56 +
.../utils/Get-SubscriptionIdTestSafe.ps1 | 7 +
.../utils/Unprotect-SecureString.ps1 | 16 +
src/ComputeSchedule/ComputeSchedule.sln | 74 +
.../ComputeSchedule/Az.ComputeSchedule.psd1 | 140 +
.../ComputeSchedule/ChangeLog.md | 24 +
.../ComputeSchedule/ComputeSchedule.csproj | 28 +
.../Properties/AssemblyInfo.cs | 28 +
.../help/Az.ComputeSchedule.md | 40 +
.../Get-AzComputeScheduleOperationError.md | 171 +
.../Get-AzComputeScheduleOperationStatus.md | 205 +
...voke-AzComputeScheduleExecuteDeallocate.md | 241 +
...nvoke-AzComputeScheduleExecuteHibernate.md | 241 +
.../Invoke-AzComputeScheduleExecuteStart.md | 241 +
...nvoke-AzComputeScheduleSubmitDeallocate.md | 290 +
...Invoke-AzComputeScheduleSubmitHibernate.md | 290 +
.../Invoke-AzComputeScheduleSubmitStart.md | 290 +
.../Stop-AzComputeScheduleScheduledAction.md | 296 +
tools/CreateMappings_rules.json | 4 +
385 files changed, 78308 insertions(+)
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.csproj
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.format.ps1xml
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psd1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psm1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/build-module.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/check-dependencies.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/create-model-cmdlets.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/custom/Az.ComputeSchedule.custom.psm1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/custom/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationError.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationStatus.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Stop-AzComputeScheduleScheduledAction.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/export-surface.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationError.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationStatus.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteDeallocate.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteHibernate.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteStart.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitDeallocate.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitHibernate.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitStart.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/ProxyCmdletDefinitions.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Stop-AzComputeScheduleScheduledAction.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generate-help.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generate-portal-ux.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/Module.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/ComputeSchedule.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Any.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Any.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Any.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Any.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/CancelOperationsResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ComputeScheduleIdentity.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ComputeScheduleIdentity.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ComputeScheduleIdentity.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ComputeScheduleIdentity.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/DeallocateResourceOperationResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/DeallocateResourceOperationResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/DeallocateResourceOperationResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/DeallocateResourceOperationResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorAdditionalInfo.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorAdditionalInfo.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorAdditionalInfo.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorAdditionalInfo.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorDetail.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorDetail.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorDetail.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorDetail.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ErrorResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteDeallocateRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteDeallocateRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteDeallocateRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteDeallocateRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteHibernateRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteHibernateRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteHibernateRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteHibernateRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteStartRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteStartRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteStartRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecuteStartRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecutionParameters.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecutionParameters.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecutionParameters.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ExecutionParameters.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationErrorsResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/GetOperationStatusResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/HibernateResourceOperationResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/HibernateResourceOperationResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/HibernateResourceOperationResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/HibernateResourceOperationResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Operation.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Operation.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Operation.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Operation.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationDisplay.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationDisplay.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationDisplay.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationDisplay.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorDetails.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorDetails.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorDetails.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorDetails.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorsResult.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorsResult.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorsResult.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationErrorsResult.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationListResult.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationListResult.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationListResult.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/OperationListResult.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperation.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperation.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperation.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperation.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationDetails.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationDetails.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationDetails.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationDetails.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationError.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationError.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationError.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/ResourceOperationError.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Resources.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Resources.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Resources.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Resources.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/RetryPolicy.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/RetryPolicy.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/RetryPolicy.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/RetryPolicy.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Schedule.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Schedule.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Schedule.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/Schedule.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/StartResourceOperationResponse.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/StartResourceOperationResponse.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/StartResourceOperationResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/StartResourceOperationResponse.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitDeallocateRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitDeallocateRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitDeallocateRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitDeallocateRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitHibernateRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitHibernateRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitHibernateRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitHibernateRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitStartRequest.PowerShell.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitStartRequest.TypeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitStartRequest.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/api/Models/SubmitStartRequest.json.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleOperationError_GetExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleOperationStatus_GetExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleOperation_List.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaIdentityExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaIdentityExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaJsonFilePath.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaJsonFilePath1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaJsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/GetAzComputeScheduleScheduledAction_GetViaJsonString1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteDeallocate_ExecuteExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteHibernate_ExecuteExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaIdentityExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaIdentityExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaIdentityExpanded2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonFilePath.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonFilePath1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonFilePath2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonString1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteScheduledAction_ExecuteViaJsonString2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleExecuteStart_ExecuteExpanded2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleSubmitDeallocate_SubmitExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleSubmitHibernate_SubmitExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/InvokeAzComputeScheduleSubmitStart_SubmitExpanded2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleOperation_CancelViaIdentityExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleScheduledAction_Cancel.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleScheduledAction_CancelExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleScheduledAction_CancelViaIdentity.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleScheduledAction_CancelViaJsonFilePath.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/StopAzComputeScheduleScheduledAction_CancelViaJsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaIdentityExpanded.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaIdentityExpanded1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaIdentityExpanded2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonFilePath.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonFilePath1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonFilePath2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonString1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/cmdlets/SubmitAzComputeScheduleScheduledAction_SubmitViaJsonString2.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/AsyncCommandRuntime.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/AsyncJob.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/AsyncOperationResponse.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Attributes/ExternalDocsAttribute.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Attributes/PSArgumentCompleterAttribute.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportCmdletSurface.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportExampleStub.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportFormatPs1xml.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportHelpMarkdown.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportModelSurface.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportProxyCmdlet.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportPsd1.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/ExportTestStub.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/GetCommonParameter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/GetModuleGuid.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Cmdlets/GetScriptCmdlet.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/CollectionExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/MarkdownRenderer.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsFormatTypes.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsHelpMarkdownOutputs.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsHelpTypes.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsMarkdownTypes.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsProxyOutputs.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/Models/PsProxyTypes.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/PsAttributes.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/PsExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/PsHelpers.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/StringExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/BuildTime/XmlExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/CmdInfoHandler.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Context.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/ConversionException.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/IJsonConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/BinaryConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/BooleanConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/DateTimeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/DateTimeOffsetConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/DecimalConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/DoubleConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/EnumConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/GuidConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/HashSet'1Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/Int16Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/Int32Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/Int64Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/JsonArrayConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/JsonObjectConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/SingleConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/StringConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/TimeSpanConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/UInt16Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/UInt32Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/UInt64Converter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/Instances/UriConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/JsonConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/JsonConverterAttribute.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/JsonConverterFactory.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Conversions/StringLikeConverter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/IJsonSerializable.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonBoolean.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonNode.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonNumber.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonObject.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/JsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Customizations/XNodeArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Debugging.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/DictionaryExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/EventData.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/EventDataExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/EventListener.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Events.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/EventsExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Extensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Helpers/Extensions/StringBuilderExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Helpers/Extensions/TypeExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Helpers/Seperator.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Helpers/TypeDetails.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Helpers/XHelper.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/HttpPipeline.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/HttpPipelineMocking.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/IAssociativeArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/IHeaderSerializable.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/ISendAsync.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/InfoAttribute.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/InputHandler.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Iso/IsoDate.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/JsonType.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/MessageAttribute.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/MessageAttributeHelper.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Method.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Models/JsonMember.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Models/JsonModel.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Models/JsonModelCache.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/Collections/JsonArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/Collections/XImmutableArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/Collections/XList.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/Collections/XNodeArray.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/Collections/XSet.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonBoolean.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonDate.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonNode.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonNumber.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonObject.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/JsonString.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/XBinary.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Nodes/XNull.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/Exceptions/ParseException.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/JsonParser.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/JsonToken.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/JsonTokenizer.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/Location.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/Readers/SourceReader.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Parser/TokenReader.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/PipelineMocking.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Properties/Resources.Designer.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Properties/Resources.resx
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Response.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Serialization/JsonSerializer.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Serialization/PropertyTransformation.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Serialization/SerializationOptions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/SerializationMode.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/TypeConverterExtensions.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/UndeclaredResponseException.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/Writers/JsonWriter.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/generated/runtime/delegates.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Az.ComputeSchedule.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Get-AzComputeScheduleOperationError.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Get-AzComputeScheduleOperationStatus.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleExecuteDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleExecuteHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleExecuteStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleSubmitDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleSubmitHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Invoke-AzComputeScheduleSubmitStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/help/Stop-AzComputeScheduleScheduledAction.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/how-to.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Az.ComputeSchedule.internal.psm1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Get-AzComputeScheduleOperation.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Get-AzComputeScheduleScheduledAction.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Invoke-AzComputeScheduleExecuteScheduledAction.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/ProxyCmdletDefinitions.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Stop-AzComputeScheduleOperation.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/internal/Submit-AzComputeScheduleScheduledAction.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/pack-module.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/run-module.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test-module.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/AzComputeSchedule.Recording.json
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/AzComputeSchedule.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Get-AzComputeScheduleOperationError.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Get-AzComputeScheduleOperationStatus.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleExecuteDeallocate.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleExecuteHibernate.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleExecuteStart.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleSubmitDeallocate.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleSubmitHibernate.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Invoke-AzComputeScheduleSubmitStart.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/README.md
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/Stop-AzComputeScheduleScheduledAction.Tests.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/env.json
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/loadEnv.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/localEnv.json
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/test/utils.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/utils/Get-SubscriptionIdTestSafe.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.AutoRest/utils/Unprotect-SecureString.ps1
create mode 100644 src/ComputeSchedule/ComputeSchedule.sln
create mode 100644 src/ComputeSchedule/ComputeSchedule/Az.ComputeSchedule.psd1
create mode 100644 src/ComputeSchedule/ComputeSchedule/ChangeLog.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/ComputeSchedule.csproj
create mode 100644 src/ComputeSchedule/ComputeSchedule/Properties/AssemblyInfo.cs
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Az.ComputeSchedule.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Get-AzComputeScheduleOperationError.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Get-AzComputeScheduleOperationStatus.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleExecuteDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleExecuteHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleExecuteStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleSubmitDeallocate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleSubmitHibernate.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Invoke-AzComputeScheduleSubmitStart.md
create mode 100644 src/ComputeSchedule/ComputeSchedule/help/Stop-AzComputeScheduleScheduledAction.md
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.csproj b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.csproj
new file mode 100644
index 000000000000..b1048fce4767
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.csproj
@@ -0,0 +1,10 @@
+
+
+ ComputeSchedule
+ ComputeSchedule
+ ComputeSchedule.AutoRest
+
+
+
+
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.format.ps1xml b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.format.ps1xml
new file mode 100644
index 000000000000..72641808b172
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.format.ps1xml
@@ -0,0 +1,743 @@
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.CancelOperationsRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.CancelOperationsRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ComputeScheduleIdentity
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ComputeScheduleIdentity#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Locationparameter
+
+
+ SubscriptionId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.DeallocateResourceOperationResponse
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.DeallocateResourceOperationResponse#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ErrorDetail
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ErrorDetail#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Code
+
+
+ Message
+
+
+ Target
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteDeallocateRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteDeallocateRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteHibernateRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteHibernateRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteStartRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecuteStartRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecutionParameters
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ExecutionParameters#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ OptimizationPreference
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.GetOperationStatusRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.GetOperationStatusRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.HibernateResourceOperationResponse
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.HibernateResourceOperationResponse#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.Operation
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.Operation#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ActionType
+
+
+ IsDataAction
+
+
+ Name
+
+
+ Origin
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationDisplay
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationDisplay#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Operation
+
+
+ Provider
+
+
+ Resource
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationErrorDetails
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationErrorDetails#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AzureOperationName
+
+
+ CrpOperationId
+
+
+ ErrorCode
+
+
+ ErrorDetail
+
+
+ Timestamp
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationErrorsResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationErrorsResult#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ActivationTime
+
+
+ CompletedAt
+
+
+ CreationTime
+
+
+ OperationId
+
+
+ RequestErrorCode
+
+
+ RequestErrorDetail
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationListResult
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.OperationListResult#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ NextLink
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperation
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperation#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ErrorCode
+
+
+ ErrorDetail
+
+
+ ResourceId
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperationDetails
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperationDetails#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CompletedAt
+
+
+ Deadline
+
+
+ DeadlineType
+
+
+ OpType
+
+
+ OperationId
+
+
+ ResourceId
+
+
+ State
+
+
+ SubscriptionId
+
+
+ Timezone
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperationError
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ResourceOperationError#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ErrorCode
+
+
+ ErrorDetail
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.RetryPolicy
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.RetryPolicy#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RetryCount
+
+
+ RetryWindowInMinute
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.Schedule
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.Schedule#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deadline
+
+
+ DeadlineType
+
+
+ Timezone
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.StartResourceOperationResponse
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.StartResourceOperationResponse#Multiple
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Description
+
+
+ Location
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitDeallocateRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitDeallocateRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitHibernateRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitHibernateRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitStartRequest
+
+ Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.SubmitStartRequest#Multiple
+
+
+
+
+
+
+
+
+
+
+
+ Correlationid
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psd1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psd1
new file mode 100644
index 000000000000..59d2a3f2ffdb
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psd1
@@ -0,0 +1,23 @@
+@{
+ GUID = '5520044e-6378-4984-b5f0-231004f1e12f'
+ RootModule = './Az.ComputeSchedule.psm1'
+ ModuleVersion = '0.1.0'
+ CompatiblePSEditions = 'Core', 'Desktop'
+ Author = 'Microsoft Corporation'
+ CompanyName = 'Microsoft Corporation'
+ Copyright = 'Microsoft Corporation. All rights reserved.'
+ Description = 'Microsoft Azure PowerShell: ComputeSchedule cmdlets'
+ PowerShellVersion = '5.1'
+ DotNetFrameworkVersion = '4.7.2'
+ RequiredAssemblies = './bin/Az.ComputeSchedule.private.dll'
+ FormatsToProcess = './Az.ComputeSchedule.format.ps1xml'
+ FunctionsToExport = 'Get-AzComputeScheduleOperationError', 'Get-AzComputeScheduleOperationStatus', 'Invoke-AzComputeScheduleExecuteDeallocate', 'Invoke-AzComputeScheduleExecuteHibernate', 'Invoke-AzComputeScheduleExecuteStart', 'Invoke-AzComputeScheduleSubmitDeallocate', 'Invoke-AzComputeScheduleSubmitHibernate', 'Invoke-AzComputeScheduleSubmitStart', 'Stop-AzComputeScheduleScheduledAction'
+ PrivateData = @{
+ PSData = @{
+ Tags = 'Azure', 'ResourceManager', 'ARM', 'PSModule', 'ComputeSchedule'
+ LicenseUri = 'https://aka.ms/azps-license'
+ ProjectUri = 'https://github.com/Azure/azure-powershell'
+ ReleaseNotes = ''
+ }
+ }
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psm1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psm1
new file mode 100644
index 000000000000..c187321e1019
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/Az.ComputeSchedule.psm1
@@ -0,0 +1,119 @@
+# region Generated
+ # ----------------------------------------------------------------------------------
+ # Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+ # ----------------------------------------------------------------------------------
+ # Load required Az.Accounts module
+ $accountsName = 'Az.Accounts'
+ $accountsModule = Get-Module -Name $accountsName
+ if(-not $accountsModule) {
+ $localAccountsPath = Join-Path $PSScriptRoot 'generated\modules'
+ if(Test-Path -Path $localAccountsPath) {
+ $localAccounts = Get-ChildItem -Path $localAccountsPath -Recurse -Include 'Az.Accounts.psd1' | Select-Object -Last 1
+ if($localAccounts) {
+ $accountsModule = Import-Module -Name ($localAccounts.FullName) -Scope Global -PassThru
+ }
+ }
+ if(-not $accountsModule) {
+ $hasAdequateVersion = (Get-Module -Name $accountsName -ListAvailable | Where-Object { $_.Version -ge [System.Version]'2.7.5' } | Measure-Object).Count -gt 0
+ if($hasAdequateVersion) {
+ $accountsModule = Import-Module -Name $accountsName -MinimumVersion 2.7.5 -Scope Global -PassThru
+ }
+ }
+ }
+
+ if(-not $accountsModule) {
+ Write-Error "`nThis module requires $accountsName version 2.7.5 or greater. For installation instructions, please see: https://learn.microsoft.com/powershell/azure/install-az-ps" -ErrorAction Stop
+ } elseif (($accountsModule.Version -lt [System.Version]'2.7.5') -and (-not $localAccounts)) {
+ Write-Error "`nThis module requires $accountsName version 2.7.5 or greater. An earlier version of Az.Accounts is imported in the current PowerShell session. If you are running test, please try to add the switch '-RegenerateSupportModule' when executing 'test-module.ps1'. Otherwise please open a new PowerShell session and import this module again.`nAdditionally, this error could indicate that multiple incompatible versions of Azure PowerShell modules are installed on your system. For troubleshooting information, please see: https://aka.ms/azps-version-error" -ErrorAction Stop
+ }
+ Write-Information "Loaded Module '$($accountsModule.Name)'"
+
+ # Load the private module dll
+ $null = Import-Module -Name (Join-Path $PSScriptRoot './bin/Az.ComputeSchedule.private.dll')
+
+ # Get the private module's instance
+ $instance = [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Module]::Instance
+
+ # Ask for the shared functionality table
+ $VTable = Register-AzModule
+
+ # Tweaks the pipeline on module load
+ $instance.OnModuleLoad = $VTable.OnModuleLoad
+
+ # Following two delegates are added for telemetry
+ $instance.GetTelemetryId = $VTable.GetTelemetryId
+ $instance.Telemetry = $VTable.Telemetry
+
+ # Delegate to sanitize the output object
+ $instance.SanitizeOutput = $VTable.SanitizerHandler
+
+ # Delegate to get the telemetry info
+ $instance.GetTelemetryInfo = $VTable.GetTelemetryInfo
+
+ # Tweaks the pipeline per call
+ $instance.OnNewRequest = $VTable.OnNewRequest
+
+ # Gets shared parameter values
+ $instance.GetParameterValue = $VTable.GetParameterValue
+
+ # Allows shared module to listen to events from this module
+ $instance.EventListener = $VTable.EventListener
+
+ # Gets shared argument completers
+ $instance.ArgumentCompleter = $VTable.ArgumentCompleter
+
+ # The name of the currently selected Azure profile
+ $instance.ProfileName = $VTable.ProfileName
+
+ # Load the custom module
+ $customModulePath = Join-Path $PSScriptRoot './custom/Az.ComputeSchedule.custom.psm1'
+ if(Test-Path $customModulePath) {
+ $null = Import-Module -Name $customModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export proxy cmdlet scripts
+ $exportsPath = Join-Path $PSScriptRoot './exports'
+ $directories = Get-ChildItem -Directory -Path $exportsPath
+ $profileDirectory = $null
+ if($instance.ProfileName) {
+ if(($directories | ForEach-Object { $_.Name }) -contains $instance.ProfileName) {
+ $profileDirectory = $directories | Where-Object { $_.Name -eq $instance.ProfileName }
+ } else {
+ # Don't export anything if the profile doesn't exist for the module
+ $exportsPath = $null
+ Write-Warning "Selected Azure profile '$($instance.ProfileName)' does not exist for module '$($instance.Name)'. No cmdlets were loaded."
+ }
+ } elseif(($directories | Measure-Object).Count -gt 0) {
+ # Load the last folder if no profile is selected
+ $profileDirectory = $directories | Select-Object -Last 1
+ }
+
+ if($profileDirectory) {
+ Write-Information "Loaded Azure profile '$($profileDirectory.Name)' for module '$($instance.Name)'"
+ $exportsPath = $profileDirectory.FullName
+ }
+
+ if($exportsPath) {
+ Get-ChildItem -Path $exportsPath -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ $cmdletNames = Get-ScriptCmdlet -ScriptFolder $exportsPath
+ Export-ModuleMember -Function $cmdletNames -Alias (Get-ScriptCmdlet -ScriptFolder $exportsPath -AsAlias)
+ }
+
+ # Finalize initialization of this module
+ $instance.Init();
+ Write-Information "Loaded Module '$($instance.Name)'"
+# endregion
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/README.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/README.md
new file mode 100644
index 000000000000..86111d2558da
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/README.md
@@ -0,0 +1,238 @@
+
+# Az.ComputeSchedule
+This directory contains the PowerShell module for the ComputeSchedule service.
+
+---
+## Info
+- Modifiable: yes
+- Generated: all
+- Committed: yes
+- Packaged: yes
+
+---
+## Detail
+This module was primarily generated via [AutoRest](https://github.com/Azure/autorest) using the [PowerShell](https://github.com/Azure/autorest.powershell) extension.
+
+## Module Requirements
+- [Az.Accounts module](https://www.powershellgallery.com/packages/Az.Accounts/), version 2.7.5 or greater
+
+## Authentication
+AutoRest does not generate authentication code for the module. Authentication is handled via Az.Accounts by altering the HTTP payload before it is sent.
+
+## Development
+For information on how to develop for `Az.ComputeSchedule`, see [how-to.md](how-to.md).
+
+
+### AutoRest Configuration
+> see https://aka.ms/autorest
+
+```yaml
+# pin the swagger version by using the commit id instead of branch name
+commit: edcf57995e73f9662a4060586f0308bb999d7493
+tag: package-2024-10-01
+require:
+# readme.azure.noprofile.md is the common configuration file
+ - $(this-folder)/../../readme.azure.noprofile.md
+ - $(repo)/specification/computeschedule/resource-manager/readme.md
+# If the swagger has not been put in the repo, you may uncomment the following line and refer to it locally
+# - (this-folder)/relative-path-to-your-local-readme.md
+
+try-require:
+ - $(repo)/specification/computeschedule/resource-manager/readme.powershell.md
+
+# For new RP, the version is 0.1.0
+module-version: 0.1.0
+# Normally, title is the service name
+title: ComputeSchedule
+subject-prefix: $(service-name)
+
+# The next three configurations are exclusive to v3, and in v4, they are activated by default. If you are still using v3, please uncomment them.
+# identity-correction-for-post: true
+# resourcegroup-append: true
+# nested-object-to-string: true
+
+directive:
+ # Following are common directives which are normally required in all the RPs
+ # 1. Remove the unexpanded parameter set
+ # 2. For New-* cmdlets, ViaIdentity is not required
+ # Following two directives are v4 specific
+ - where:
+ variant: ^(Create|Update|Invoke|Execute|Submit)(?!.*?(Expanded|JsonFilePath|JsonString))
+ remove: true
+ - where:
+ variant: ^CreateViaIdentity.*$
+ remove: true
+ # Follow directive is v3 specific. If you are using v3, uncomment following directive and comments out two directives above
+ #- where:
+ # variant: ^Create$|^CreateViaIdentity$|^CreateViaIdentityExpanded$|^Update$|^UpdateViaIdentity$
+ # remove: true
+
+ - where:
+ subject: ScheduledAction
+ variant: ^(Get)(?!.*?(Expanded|JsonFilePath|JsonString))
+ remove: true
+
+# rename camelCase properties
+ - from: computeschedule.json
+ where: "$.definitions.OperationErrorDetails.properties.timeStamp"
+ transform: >
+ $ = undefined
+ - from: computeschedule.json
+ where: "$.definitions.Schedule.properties.timeZone"
+ transform: >
+ $ = undefined
+ - from: computeschedule.json
+ where: "$.definitions.ResourceOperationDetails.properties.timeZone"
+ transform: >
+ $ = undefined
+ - from: computeschedule.json
+ where: "$.definitions.Schedule.properties.deadLine"
+ transform: >
+ $ = undefined
+
+# Rename cmdlets to expose endpoints
+ - where:
+ verb: Get
+ subject: ScheduledAction
+ variant: GetExpanded
+ set:
+ subject: OperationError
+
+ - where:
+ verb: Get
+ subject: ScheduledAction
+ variant: GetExpanded1
+ set:
+ subject: OperationStatus
+
+ - where:
+ verb: Invoke
+ subject: ExecuteScheduledAction
+ variant: ExecuteExpanded
+ set:
+ subject: ExecuteDeallocate
+
+ - where:
+ verb: Invoke
+ subject: ExecuteScheduledAction
+ variant: ExecuteExpanded1
+ set:
+ subject: ExecuteHibernate
+
+ - where:
+ verb: Invoke
+ subject: ExecuteScheduledAction
+ variant: ExecuteExpanded2
+ set:
+ subject: ExecuteStart
+
+ - where:
+ verb: Submit
+ subject: ScheduledAction
+ variant: SubmitExpanded
+ set:
+ verb: Invoke
+ subject: SubmitDeallocate
+
+ - where:
+ verb: Submit
+ subject: ScheduledAction
+ variant: SubmitExpanded1
+ set:
+ verb: Invoke
+ subject: SubmitHibernate
+
+ - where:
+ verb: Submit
+ subject: ScheduledAction
+ variant: SubmitExpanded2
+ set:
+ verb: Invoke
+ subject: SubmitStart
+
+ - where:
+ verb: Stop
+ subject: ScheduledAction
+ variant: CancelViaIdentityExpanded
+ set:
+ verb: Stop
+ subject: Operation
+
+# Hide initial cmdlets generated with all endpoints grouped
+ - where:
+ verb: Invoke
+ subject: ExecuteScheduledAction
+ hide: true
+
+ - where:
+ verb: Submit
+ subject: ScheduledAction
+ hide: true
+
+ - where:
+ verb: Get
+ subject: ScheduledAction
+ hide: true
+
+# rename parameters
+ - where:
+ verb: Invoke
+ subject: ^(Submit|Execute)(.*)
+ parameter-name: RetryPolicyRetryCount
+ set:
+ parameter-name: RetryCount
+
+ - where:
+ verb: Invoke
+ subject: ^(Submit|Execute)(.*)
+ parameter-name: RetryPolicyRetryWindowInMinute
+ set:
+ parameter-name: RetryWindowInMinutes
+
+ - where:
+ verb: Invoke|Get|Stop
+ subject: ^(Submit|Execute|Operation|Scheduled)(.*)
+ parameter-name: Locationparameter
+ set:
+ parameter-name: Location
+
+ - where:
+ verb: Invoke|Get|Stop
+ subject: ^(Submit|Execute|Operation)(.*)
+ parameter-name: Correlationid
+ set:
+ parameter-name: CorrelationId
+
+ - where:
+ verb: Invoke
+ subject: ^(Submit)(.*)
+ parameter-name: ScheduleDeadLine
+ set:
+ parameter-name: Deadline
+
+ - where:
+ verb: Invoke
+ subject: ^(Submit)(.*)
+ parameter-name: ScheduleDeadlineType
+ set:
+ parameter-name: DeadlineType
+
+ - where:
+ verb: Invoke
+ subject: ^(Submit)(.*)
+ parameter-name: ScheduleTimeZone
+ set:
+ parameter-name: Timezone
+
+# Hide OptimizationPreference paramater
+ - where:
+ verb: Invoke
+ subject: ^(Submit|Execute)(.*)
+ parameter-name: ExecutionParameterOptimizationPreference
+ hide: true
+
+ # Remove the set-* cmdlet
+ - where:
+ verb: Set
+ remove: true
+```
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/build-module.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/build-module.ps1
new file mode 100644
index 000000000000..9a2c158150de
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/build-module.ps1
@@ -0,0 +1,191 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+param([switch]$NotIsolated, [switch]$Run, [switch]$Test, [switch]$Docs, [switch]$Pack, [switch]$Code, [switch]$Release, [switch]$Debugger, [switch]$NoDocs, [switch]$UX, [Switch]$DisableAfterBuildTasks)
+$ErrorActionPreference = 'Stop'
+
+if($PSEdition -ne 'Core') {
+ Write-Error 'This script requires PowerShell Core to execute. [Note] Generated cmdlets will work in both PowerShell Core or Windows PowerShell.'
+}
+
+if(-not $NotIsolated -and -not $Debugger) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -NotIsolated
+
+ if($LastExitCode -ne 0) {
+ # Build failed. Don't attempt to run the module.
+ return
+ }
+
+ if($Test) {
+ . (Join-Path $PSScriptRoot 'test-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Tests failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Docs) {
+ . (Join-Path $PSScriptRoot 'generate-help.ps1')
+ if($LastExitCode -ne 0) {
+ # Docs generation failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($UX) {
+ . (Join-Path $PSScriptRoot 'generate-portal-ux.ps1')
+ if($LastExitCode -ne 0) {
+ # UX generation failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ if($Pack) {
+ . (Join-Path $PSScriptRoot 'pack-module.ps1')
+ if($LastExitCode -ne 0) {
+ # Packing failed. Don't attempt to run the module.
+ return
+ }
+ }
+
+ $runModulePath = Join-Path $PSScriptRoot 'run-module.ps1'
+ if($Code) {
+ . $runModulePath -Code
+ } elseif($Run) {
+ . $runModulePath
+ } else {
+ Write-Host -ForegroundColor Cyan "To run this module in an isolated PowerShell session, run the 'run-module.ps1' script or provide the '-Run' parameter to this script."
+ }
+ return
+}
+
+$binFolder = Join-Path $PSScriptRoot 'bin'
+$objFolder = Join-Path $PSScriptRoot 'obj'
+
+$isAzure = [System.Convert]::ToBoolean('true')
+
+if(-not $Debugger) {
+ Write-Host -ForegroundColor Green 'Cleaning build folders...'
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path $binFolder, $objFolder
+
+ if((Test-Path $binFolder) -or (Test-Path $objFolder)) {
+ Write-Host -ForegroundColor Cyan 'Did you forget to exit your isolated module session before rebuilding?'
+ Write-Error 'Unable to clean ''bin'' or ''obj'' folder. A process may have an open handle.'
+ }
+
+ Write-Host -ForegroundColor Green 'Compiling module...'
+ $buildConfig = 'Debug'
+ if($Release) {
+ $buildConfig = 'Release'
+ }
+ dotnet publish $PSScriptRoot --verbosity quiet --configuration $buildConfig /nologo
+ if($LastExitCode -ne 0) {
+ Write-Error 'Compilation failed.'
+ }
+
+ $null = Remove-Item -Recurse -ErrorAction SilentlyContinue -Path (Join-Path $binFolder 'Debug'), (Join-Path $binFolder 'Release')
+}
+
+$dll = Join-Path $PSScriptRoot 'bin\Az.ComputeSchedule.private.dll'
+if(-not (Test-Path $dll)) {
+ Write-Error "Unable to find output assembly in '$binFolder'."
+}
+
+# Load DLL to use build-time cmdlets
+$null = Import-Module -Name $dll
+
+$modulePaths = $dll
+$customPsm1 = Join-Path $PSScriptRoot 'custom\Az.ComputeSchedule.custom.psm1'
+if(Test-Path $customPsm1) {
+ $modulePaths = @($dll, $customPsm1)
+}
+
+$exportsFolder = Join-Path $PSScriptRoot 'exports'
+if(Test-Path $exportsFolder) {
+ $null = Get-ChildItem -Path $exportsFolder -Recurse -Exclude 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $exportsFolder
+
+$internalFolder = Join-Path $PSScriptRoot 'internal'
+if(Test-Path $internalFolder) {
+ $null = Get-ChildItem -Path $internalFolder -Recurse -Exclude '*.psm1', 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $internalFolder
+
+$psd1 = Join-Path $PSScriptRoot './Az.ComputeSchedule.psd1'
+$guid = Get-ModuleGuid -Psd1Path $psd1
+$moduleName = 'Az.ComputeSchedule'
+$examplesFolder = Join-Path $PSScriptRoot 'examples'
+$null = New-Item -ItemType Directory -Force -Path $examplesFolder
+
+Write-Host -ForegroundColor Green 'Creating cmdlets for specified models...'
+$modelCmdlets = @()
+$modelCmdletFolder = Join-Path (Join-Path $PSScriptRoot './custom') 'autogen-model-cmdlets'
+if (Test-Path $modelCmdletFolder) {
+ $null = Remove-Item -Force -Recurse -Path $modelCmdletFolder
+}
+if ($modelCmdlets.Count -gt 0) {
+ . (Join-Path $PSScriptRoot 'create-model-cmdlets.ps1')
+ CreateModelCmdlet($modelCmdlets)
+}
+
+if($NoDocs) {
+ Write-Host -ForegroundColor Green 'Creating exports...'
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ExcludeDocs -ExamplesFolder $examplesFolder
+} else {
+ Write-Host -ForegroundColor Green 'Creating exports and docs...'
+ $moduleDescription = 'Microsoft Azure PowerShell: ComputeSchedule cmdlets'
+ $docsFolder = Join-Path $PSScriptRoot 'docs'
+ if(Test-Path $docsFolder) {
+ $null = Get-ChildItem -Path $docsFolder -Recurse -Exclude 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+ }
+ $null = New-Item -ItemType Directory -Force -Path $docsFolder
+ $addComplexInterfaceInfo = !$isAzure
+ Export-ProxyCmdlet -ModuleName $moduleName -ModulePath $modulePaths -ExportsFolder $exportsFolder -InternalFolder $internalFolder -ModuleDescription $moduleDescription -DocsFolder $docsFolder -ExamplesFolder $examplesFolder -ModuleGuid $guid -AddComplexInterfaceInfo:$addComplexInterfaceInfo
+}
+
+Write-Host -ForegroundColor Green 'Creating format.ps1xml...'
+$formatPs1xml = Join-Path $PSScriptRoot './Az.ComputeSchedule.format.ps1xml'
+Export-FormatPs1xml -FilePath $formatPs1xml
+
+Write-Host -ForegroundColor Green 'Creating psd1...'
+$customFolder = Join-Path $PSScriptRoot 'custom'
+Export-Psd1 -ExportsFolder $exportsFolder -CustomFolder $customFolder -Psd1Path $psd1 -ModuleGuid $guid
+
+Write-Host -ForegroundColor Green 'Creating test stubs...'
+$testFolder = Join-Path $PSScriptRoot 'test'
+$null = New-Item -ItemType Directory -Force -Path $testFolder
+Export-TestStub -ModuleName $moduleName -ExportsFolder $exportsFolder -OutputFolder $testFolder
+
+Write-Host -ForegroundColor Green 'Creating example stubs...'
+Export-ExampleStub -ExportsFolder $exportsFolder -OutputFolder $examplesFolder
+
+if (Test-Path (Join-Path $PSScriptRoot 'generate-portal-ux.ps1'))
+{
+ Write-Host -ForegroundColor Green 'Creating ux metadata...'
+ . (Join-Path $PSScriptRoot 'generate-portal-ux.ps1')
+}
+
+if (-not $DisableAfterBuildTasks){
+ $afterBuildTasksPath = Join-Path $PSScriptRoot ''
+ $afterBuildTasksArgs = ConvertFrom-Json 'true' -AsHashtable
+ if(Test-Path -Path $afterBuildTasksPath -PathType leaf){
+ Write-Host -ForegroundColor Green 'Running after build tasks...'
+ . $afterBuildTasksPath @afterBuildTasksArgs
+ }
+}
+
+Write-Host -ForegroundColor Green '-------------Done-------------'
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/check-dependencies.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/check-dependencies.ps1
new file mode 100644
index 000000000000..90ca9867ae40
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/check-dependencies.ps1
@@ -0,0 +1,65 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+param([switch]$NotIsolated, [switch]$Accounts, [switch]$Pester, [switch]$Resources)
+$ErrorActionPreference = 'Stop'
+
+if(-not $NotIsolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ $pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+ & "$pwsh" -NoExit -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -NotIsolated
+ return
+}
+
+function DownloadModule ([bool]$predicate, [string]$path, [string]$moduleName, [string]$versionMinimum, [string]$requiredVersion) {
+ if($predicate) {
+ $module = Get-Module -ListAvailable -Name $moduleName
+ if((-not $module) -or ($versionMinimum -and ($module | ForEach-Object { $_.Version } | Where-Object { $_ -ge [System.Version]$versionMinimum } | Measure-Object).Count -eq 0) -or ($requiredVersion -and ($module | ForEach-Object { $_.Version } | Where-Object { $_ -eq [System.Version]$requiredVersion } | Measure-Object).Count -eq 0)) {
+ $null = New-Item -ItemType Directory -Force -Path $path
+ Write-Host -ForegroundColor Green "Installing local $moduleName module into '$path'..."
+ if ($requiredVersion) {
+ Find-Module -Name $moduleName -RequiredVersion $requiredVersion -Repository PSGallery | Save-Module -Path $path
+ }elseif($versionMinimum) {
+ Find-Module -Name $moduleName -MinimumVersion $versionMinimum -Repository PSGallery | Save-Module -Path $path
+ } else {
+ Find-Module -Name $moduleName -Repository PSGallery | Save-Module -Path $path
+ }
+ }
+ }
+}
+
+$ProgressPreference = 'SilentlyContinue'
+$all = (@($Accounts.IsPresent, $Pester.IsPresent) | Select-Object -Unique | Measure-Object).Count -eq 1
+
+$localModulesPath = Join-Path $PSScriptRoot 'generated\modules'
+if(Test-Path -Path $localModulesPath) {
+ $env:PSModulePath = "$localModulesPath$([IO.Path]::PathSeparator)$env:PSModulePath"
+}
+
+DownloadModule -predicate ($all -or $Accounts) -path $localModulesPath -moduleName 'Az.Accounts' -versionMinimum '2.7.5'
+DownloadModule -predicate ($all -or $Pester) -path $localModulesPath -moduleName 'Pester' -requiredVersion '4.10.1'
+
+$tools = Join-Path $PSScriptRoot 'tools'
+$resourceDir = Join-Path $tools 'Resources'
+$resourceModule = Join-Path $HOME '.PSSharedModules\Resources\Az.Resources.TestSupport.psm1'
+
+if ($Resources.IsPresent -and ((-not (Test-Path -Path $resourceModule)) -or $RegenerateSupportModule.IsPresent)) {
+ Write-Host -ForegroundColor Green "Building local Resource module used for test..."
+ Set-Location $resourceDir
+ $null = autorest .\README.md --use:@autorest/powershell@3.0.414 --output-folder=$HOME/.PSSharedModules/Resources
+ $null = Copy-Item custom/* $HOME/.PSSharedModules/Resources/custom/
+ Set-Location $HOME/.PSSharedModules/Resources
+ $null = .\build-module.ps1
+ Set-Location $PSScriptRoot
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/create-model-cmdlets.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/create-model-cmdlets.ps1
new file mode 100644
index 000000000000..317647a0017c
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/create-model-cmdlets.ps1
@@ -0,0 +1,262 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+function CreateModelCmdlet {
+
+ param([Hashtable[]]$Models)
+
+ if ($Models.Count -eq 0)
+ {
+ return
+ }
+
+ $ModelCsPath = Join-Path (Join-Path $PSScriptRoot 'generated\api') 'Models'
+ $OutputDir = Join-Path $PSScriptRoot 'custom\autogen-model-cmdlets'
+ $null = New-Item -ItemType Directory -Force -Path $OutputDir
+ if (''.length -gt 0) {
+ $ModuleName = ''
+ } else {
+ $ModuleName = 'Az.ComputeSchedule'
+ }
+ $CsFiles = Get-ChildItem -Path $ModelCsPath -Recurse -Filter *.cs
+ $Content = ''
+ $null = $CsFiles | ForEach-Object -Process { if ($_.Name.Split('.').count -eq 2 )
+ { $Content += get-content $_.fullname -raw
+ } }
+
+ $Tree = [Microsoft.CodeAnalysis.CSharp.SyntaxFactory]::ParseCompilationUnit($Content)
+ $Nodes = $Tree.ChildNodes().ChildNodes()
+ $classConstantMember = @{}
+ foreach ($Model in $Models)
+ {
+ $ModelName = $Model.modelName
+ $InterfaceNode = $Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq "I$ModelName") }
+ $ClassNode = $Nodes | Where-Object { ($_.Keyword.value -eq 'class') -and ($_.Identifier.value -eq "$ModelName") }
+ $classConstantMember = @()
+ foreach ($class in $ClassNode) {
+ foreach ($member in $class.Members) {
+ $isConstant = $false
+ foreach ($attr in $member.AttributeLists) {
+ $memberName = $attr.Attributes.Name.ToString()
+ if ($memberName.EndsWith('.Constant')) {
+ $isConstant = $true
+ break
+ }
+ }
+ if (($member.Modifiers.ToString() -eq 'public') -and $isConstant) {
+ $classConstantMember += $member.Identifier.Value
+ }
+ }
+ }
+ if ($InterfaceNode.count -eq 0) {
+ continue
+ }
+ # through a queue, we iterate all the parent models.
+ $Queue = @($InterfaceNode)
+ $visited = @("I$ModelName")
+ $AllInterfaceNodes = @()
+ while ($Queue.count -ne 0)
+ {
+ $AllInterfaceNodes += $Queue[0]
+ # Baselist contains the direct parent models.
+ foreach ($parent in $Queue[0].BaseList.Types)
+ {
+ if (($parent.Type.Right.Identifier.Value -ne 'IJsonSerializable') -and (-not $visited.Contains($parent.Type.Right.Identifier.Value)))
+ {
+ $Queue = [Array]$Queue + ($Nodes | Where-Object { ($_.Keyword.value -eq 'interface') -and ($_.Identifier.value -eq $parent.Type.Right.Identifier.Value) })
+ $visited = [Array]$visited + $parent.Type.Right.Identifier.Value
+ }
+ }
+ $first, $Queue = $Queue
+ }
+
+ $Namespace = $InterfaceNode.Parent.Name
+ $ObjectType = $ModelName
+ $ObjectTypeWithNamespace = "${Namespace}.${ObjectType}"
+ # remove duplicated module name
+ if ($ObjectType.StartsWith('ComputeSchedule')) {
+ $ModulePrefix = ''
+ } else {
+ $ModulePrefix = 'ComputeSchedule'
+ }
+ $OutputPath = Join-Path -ChildPath "New-Az${ModulePrefix}${ObjectType}Object.ps1" -Path $OutputDir
+
+ $ParameterDefineScriptList = New-Object System.Collections.Generic.List[string]
+ $ParameterAssignScriptList = New-Object System.Collections.Generic.List[string]
+ foreach ($Node in $AllInterfaceNodes)
+ {
+ foreach ($Member in $Node.Members)
+ {
+ if ($classConstantMember.Contains($Member.Identifier.Value)) {
+ # skip constant member
+ continue
+ }
+ $Arguments = $Member.AttributeLists.Attributes.ArgumentList.Arguments
+ $Required = $false
+ $Description = ""
+ $Readonly = $False
+ $mutability = @{Read = $true; Create = $true; Update = $true}
+ foreach ($Argument in $Arguments)
+ {
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Required")
+ {
+ $Required = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Description")
+ {
+ $Description = $Argument.Expression.Token.Value.Trim('.').replace('"', '`"')
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Readonly")
+ {
+ $Readonly = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Read")
+ {
+ $mutability.Read = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Create")
+ {
+ $mutability.Create = $Argument.Expression.Token.Value
+ }
+ if ($Argument.NameEquals.Name.Identifier.Value -eq "Update")
+ {
+ $mutability.Update = $Argument.Expression.Token.Value
+ }
+ }
+ if ($Readonly)
+ {
+ continue
+ }
+ $Identifier = $Member.Identifier.Value
+ $Type = $Member.Type.ToString().replace('?', '').Split("::")[-1]
+ $Type = $Member.Type.ToString().replace('?', '').Split("::")[-1]
+ if ($Type.StartsWith("System.Collections.Generic.List"))
+ {
+ # if the type is a list, we need to convert it to array
+ $matched = $Type -match '\<(?.+)\>$'
+ if ($matched)
+ {
+ $Type = $matches.Name + '[]';
+ }
+ }
+ $ParameterDefinePropertyList = New-Object System.Collections.Generic.List[string]
+ if ($Required -and $mutability.Create -and $mutability.Update)
+ {
+ $ParameterDefinePropertyList.Add("Mandatory")
+ }
+ if ($Description -ne "")
+ {
+ $ParameterDefinePropertyList.Add("HelpMessage=`"${Description}.`"")
+ }
+ $ParameterDefineProperty = [System.String]::Join(", ", $ParameterDefinePropertyList)
+ # check whether completer is needed
+ $completer = '';
+ if(IsEnumType($Member)){
+ $completer += GetCompleter($Member)
+ }
+ $ParameterDefineScript = "
+ [Parameter($ParameterDefineProperty)]${completer}
+ [${Type}]
+ `$${Identifier}"
+ $ParameterDefineScriptList.Add($ParameterDefineScript)
+ $ParameterAssignScriptList.Add("
+ if (`$PSBoundParameters.ContainsKey('${Identifier}')) {
+ `$Object.${Identifier} = `$${Identifier}
+ }")
+ }
+ }
+ $ParameterDefineScript = $ParameterDefineScriptList | Join-String -Separator ","
+ $ParameterAssignScript = $ParameterAssignScriptList | Join-String -Separator ""
+
+ $cmdletName = "New-Az${ModulePrefix}${ObjectType}Object"
+ if ('' -ne $Model.cmdletName) {
+ $cmdletName = $Model.cmdletName
+ }
+ $OutputPath = Join-Path -ChildPath "${cmdletName}.ps1" -Path $OutputDir
+ $cmdletNameInLowerCase = $cmdletName.ToLower()
+ $Script = "
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the ""License"");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an ""AS IS"" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+Create an in-memory object for ${ObjectType}.
+.Description
+Create an in-memory object for ${ObjectType}.
+
+.Outputs
+${ObjectTypeWithNamespace}
+.Link
+https://learn.microsoft.com/powershell/module/${ModuleName}/${cmdletNameInLowerCase}
+#>
+function ${cmdletName} {
+ [OutputType('${ObjectTypeWithNamespace}')]
+ [CmdletBinding(PositionalBinding=`$false)]
+ Param(
+${ParameterDefineScript}
+ )
+
+ process {
+ `$Object = [${ObjectTypeWithNamespace}]::New()
+${ParameterAssignScript}
+ return `$Object
+ }
+}
+"
+ Set-Content -Path $OutputPath -Value $Script
+ }
+}
+
+function IsEnumType {
+ param (
+ [Microsoft.CodeAnalysis.CSharp.Syntax.PropertyDeclarationSyntax]$property
+ )
+ $isEnum = $false
+ foreach ($attr in $property.AttributeLists) {
+ $attributeName = $attr.Attributes.Name.ToString()
+ if ($attributeName.Contains('ArgumentCompleter')) {
+ $isEnum = $true
+ break
+ }
+ }
+ return $isEnum;
+}
+
+function GetCompleter {
+ param (
+ [Microsoft.CodeAnalysis.CSharp.Syntax.PropertyDeclarationSyntax]$property
+ )
+ foreach ($attr in $property.AttributeLists) {
+ $attributeName = $attr.Attributes.Name.ToString()
+ if ($attributeName.Contains('ArgumentCompleter')) {
+ $attributeName = $attributeName.Split("::")[-1]
+ $possibleValues = [System.String]::Join(", ", $attr.Attributes.ArgumentList.Arguments)
+ $completer += "`n [${attributeName}(${possibleValues})]"
+ return $completer
+ }
+ }
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/Az.ComputeSchedule.custom.psm1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/Az.ComputeSchedule.custom.psm1
new file mode 100644
index 000000000000..306ce355c31a
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/Az.ComputeSchedule.custom.psm1
@@ -0,0 +1,17 @@
+# region Generated
+ # Load the private module dll
+ $null = Import-Module -PassThru -Name (Join-Path $PSScriptRoot '..\bin\Az.ComputeSchedule.private.dll')
+
+ # Load the internal module
+ $internalModulePath = Join-Path $PSScriptRoot '..\internal\Az.ComputeSchedule.internal.psm1'
+ if(Test-Path $internalModulePath) {
+ $null = Import-Module -Name $internalModulePath
+ }
+
+ # Export nothing to clear implicit exports
+ Export-ModuleMember
+
+ # Export script cmdlets
+ Get-ChildItem -Path $PSScriptRoot -Recurse -Include '*.ps1' -File | ForEach-Object { . $_.FullName }
+ Export-ModuleMember -Function (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot) -Alias (Get-ScriptCmdlet -ScriptFolder $PSScriptRoot -AsAlias)
+# endregion
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/README.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/README.md
new file mode 100644
index 000000000000..aa1d6ea5418d
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/custom/README.md
@@ -0,0 +1,41 @@
+# Custom
+This directory contains custom implementation for non-generated cmdlets for the `Az.ComputeSchedule` module. Both scripts (`.ps1`) and C# files (`.cs`) can be implemented here. They will be used during the build process in `build-module.ps1`, and create cmdlets into the `..\exports` folder. The only generated file into this folder is the `Az.ComputeSchedule.custom.psm1`. This file should not be modified.
+
+## Info
+- Modifiable: yes
+- Generated: partial
+- Committed: yes
+- Packaged: yes
+
+## Details
+For `Az.ComputeSchedule` to use custom cmdlets, it does this two different ways. We **highly recommend** creating script cmdlets, as they are easier to write and allow access to the other exported cmdlets. C# cmdlets *cannot access exported cmdlets*.
+
+For C# cmdlets, they are compiled with the rest of the generated low-level cmdlets into the `./bin/Az.ComputeSchedule.private.dll`. The names of the cmdlets (methods) and files must follow the `[cmdletName]_[variantName]` syntax used for generated cmdlets. The `variantName` is used as the `ParameterSetName`, so use something appropriate that doesn't clash with already created variant or parameter set names. You cannot use the `ParameterSetName` property in the `Parameter` attribute on C# cmdlets. Each cmdlet must be separated into variants using the same pattern as seen in the `generated/cmdlets` folder.
+
+For script cmdlets, these are loaded via the `Az.ComputeSchedule.custom.psm1`. Then, during the build process, this module is loaded and processed in the same manner as the C# cmdlets. The fundamental difference is the script cmdlets use the `ParameterSetName` attribute and C# cmdlets do not. To create a script cmdlet variant of a generated cmdlet, simply decorate all parameters in the script with the new `ParameterSetName` in the `Parameter` attribute. This will appropriately treat each parameter set as a separate variant when processed to be exported during the build.
+
+## Purpose
+This allows the modules to have cmdlets that were not defined in the REST specification. It also allows combining logic using generated cmdlets. This is a level of customization beyond what can be done using the [readme configuration options](https://github.com/Azure/autorest/blob/master/docs/powershell/options.md) that are currently available. These custom cmdlets are then referenced by the cmdlets created at build-time in the `..\exports` folder.
+
+## Usage
+The easiest way currently to start developing custom cmdlets is to copy an existing cmdlet. For C# cmdlets, copy one from the `generated/cmdlets` folder. For script cmdlets, build the project using `build-module.ps1` and copy one of the scripts from the `..\exports` folder. After that, if you want to add new parameter sets, follow the guidelines in the `Details` section above. For implementing a new cmdlets, at minimum, please keep these parameters:
+- Break
+- DefaultProfile
+- HttpPipelineAppend
+- HttpPipelinePrepend
+- Proxy
+- ProxyCredential
+- ProxyUseDefaultCredentials
+
+These provide functionality to our HTTP pipeline and other useful features. In script, you can forward these parameters using `$PSBoundParameters` to the other cmdlets you're calling within `Az.ComputeSchedule`. For C#, follow the usage seen in the `ProcessRecordAsync` method.
+
+### Attributes
+For processing the cmdlets, we've created some additional attributes:
+- `Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.DescriptionAttribute`
+ - Used in C# cmdlets to provide a high-level description of the cmdlet. This is propagated to reference documentation via [help comments](https://learn.microsoft.com/powershell/module/microsoft.powershell.core/about/about_comment_based_help) in the exported scripts.
+- `Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.DoNotExportAttribute`
+ - Used in C# and script cmdlets to suppress creating an exported cmdlet at build-time. These cmdlets will *not be exposed* by `Az.ComputeSchedule`.
+- `Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.InternalExportAttribute`
+ - Used in C# cmdlets to route exported cmdlets to the `..\internal`, which are *not exposed* by `Az.ComputeSchedule`. For more information, see [README.md](..\internal/README.md) in the `..\internal` folder.
+- `Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.ProfileAttribute`
+ - Used in C# and script cmdlets to define which Azure profiles the cmdlet supports. This is only supported for Azure (`--azure`) modules.
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationError.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationError.md
new file mode 100644
index 000000000000..c206ec87fd58
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationError.md
@@ -0,0 +1,25 @@
+### Example 1: Gets the details on the retriable errors that may have occured during the lifetime of an operation requested on a virtual machine
+```powershell
+Get-AzComputeScheduleOperationError -Location "eastus2euap" -OperationId "1fd870d3-d2b7-44c8-8ccb-bec05bbbf36f","5018cb59-bc54-42c3-a6c0-a9a4b0cf3f1b" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+```
+
+```output
+ActivationTime : 12/18/2024 5:08:36 AM
+CompletedAt : 12/18/2024 5:09:20 AM
+CreationTime : 12/18/2024 5:08:36 AM
+OperationError : {}
+OperationId : 1fd870d3-d2b7-44c8-8ccb-bec05bbbf36f
+RequestErrorCode :
+RequestErrorDetail :
+
+ActivationTime : 12/18/2024 5:03:15 AM
+CompletedAt : 12/18/2024 5:04:18 AM
+CreationTime : 12/18/2024 5:03:15 AM
+OperationError : {}
+OperationId : 75018cb59-bc54-42c3-a6c0-a9a4b0cf3f1b
+RequestErrorCode :
+RequestErrorDetail :
+```
+
+The above command gets the details on the retriable errors that may have occured during the lifetime of an operation requested on a virtual machine
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationStatus.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationStatus.md
new file mode 100644
index 000000000000..ec986958151e
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Get-AzComputeScheduleOperationStatus.md
@@ -0,0 +1,43 @@
+### Example 1: Poll the status of operations performed on a batch of virtual machines using the operation id from a previous Start/Deallocate/Hibernate operation
+```powershell
+Get-AzComputeScheduleOperationStatus -Location "eastus2euap" -Correlationid "bbb34b32-0ca1-473f-b53d-d06148d0d1fa" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+```
+
+```output
+ErrorCode :
+ErrorDetail :
+OperationCompletedAt : 12/18/2024 5:09:20 AM
+OperationDeadline : 12/18/2024 5:08:36 AM
+OperationDeadlineType : InitiateAt
+OperationId : d099fda7-4fdb-4db0-98e5-53fab1821267
+OperationOpType : Start
+OperationResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/exesta83600
+OperationState : Succeeded
+OperationSubscriptionId : ed5d2ee7-ede1-44bd-97a2-369489bbefe4
+OperationTimezone :
+ResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/exesta83600
+ResourceOperationErrorCode :
+ResourceOperationErrorDetail :
+RetryPolicyRetryCount : 3
+RetryPolicyRetryWindowInMinute : 30
+
+ErrorCode :
+ErrorDetail :
+OperationCompletedAt : 12/18/2024 5:04:18 AM
+OperationDeadline : 12/18/2024 5:03:15 AM
+OperationDeadlineType : InitiateAt
+OperationId : 333f8f97-32d0-4a88-9bf0-75e65da2052c
+OperationOpType : Hibernate
+OperationResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/exeHib80440
+OperationState : Succeeded
+OperationSubscriptionId : ed5d2ee7-ede1-44bd-97a2-369489bbefe4
+OperationTimezone :
+ResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/exeHib80440
+ResourceOperationErrorCode :
+ResourceOperationErrorDetail :
+RetryPolicyRetryCount : 3
+RetryPolicyRetryWindowInMinute : 30
+```
+
+The above command cancels scheduled operations (Start/Deallocate/Hibernate) on virtual machines using the operationids gotten from previous Execute/Submit type API calls
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteDeallocate.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteDeallocate.md
new file mode 100644
index 000000000000..d0fe11de9370
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteDeallocate.md
@@ -0,0 +1,49 @@
+### Example 1: Deallocate a batch of virtual machines immediately
+```powershell
+Invoke-AzComputeScheduleExecuteDeallocate -Location "eastus2euap" -CorrelationId "0736f2d2-2708-4ed1-a567-e64ffe857ad9" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85190", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85253" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+```
+
+```output
+Description : Deallocate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85190",
+ "opType": "Deallocate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85190"
+ }}
+Type : VirtualMachines
+
+Description : Deallocate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85253",
+ "opType": "Deallocate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85253"
+ }}
+Type : VirtualMachines
+```
+
+Above command is deallocating a batch of virtual machines immediately
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteHibernate.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteHibernate.md
new file mode 100644
index 000000000000..cd05b420e879
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteHibernate.md
@@ -0,0 +1,49 @@
+### Example 1: Hibernate a batch of virtual machines immediately
+```powershell
+Invoke-AzComputeScheduleExecuteHibernate -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-2", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-3" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+```
+
+```output
+Description : Hibernate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85158",
+ "opType": "Hibernate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85158"
+ }}
+Type : VirtualMachines
+
+Description : Hibernate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85123",
+ "opType": "Hibernate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85123"
+ }}
+Type : VirtualMachines
+```
+
+Above command is hibernating a batch of virtual machines immediately
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteStart.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteStart.md
new file mode 100644
index 000000000000..479765962c50
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleExecuteStart.md
@@ -0,0 +1,49 @@
+### Example 1: Start a batch of virtual machines immediately
+```powershell
+Invoke-AzComputeScheduleExecuteStart -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+```
+
+```output
+Description : Start Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223",
+ "opType": "Start",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223"
+ }}
+Type : VirtualMachines
+
+Description : Start Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129",
+ "opType": "Start",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129"
+ }}
+Type : VirtualMachines
+```
+
+Above command is starting a batch of virtual machines immediately
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitDeallocate.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitDeallocate.md
new file mode 100644
index 000000000000..391d79822045
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitDeallocate.md
@@ -0,0 +1,51 @@
+### Example 1: Deallocate a batch of virtual machines at the given deadline
+```powershell
+Invoke-AzComputeScheduleSubmitDeallocate -Location "eastus2euap" -CorrelationId "abb9b6a2-013a-4ad7-af2c-efd2449e6600" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85543", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85762" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+```
+
+```output
+Description : Deallocate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85762",
+ "opType": "Deallocate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85762"
+ }}
+Type : VirtualMachines
+
+Description : Deallocate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85543",
+ "opType": "Deallocate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85543"
+ }}
+Type : VirtualMachines
+```
+
+The above command is scheduling a deallocate operation on a batch of virtual machines by the given deadline. The list below describes guidance on Deadline and Timezone:
+- Computeschedule supports "UTC" timezone currently
+- Deadline for a submit type operation can not be more than 5 minutes in the past or greater than 14 days in the future
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitHibernate.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitHibernate.md
new file mode 100644
index 000000000000..626bb883c687
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitHibernate.md
@@ -0,0 +1,51 @@
+### Example 1: Hibernate a batch of virtual machines at the given deadline
+```powershell
+Invoke-AzComputeScheduleSubmitHibernate -Location "eastus2euap" -CorrelationId "baa8dd07-e59e-4f97-be6a-76ad8d4584ae" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85150", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85151" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+```
+
+```output
+Description : Hibernate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/rg-nneka-computeschedule-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85150",
+ "opType": "Hibernate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/rg-nneka-computeschedule-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85150"
+ }}
+Type : VirtualMachines
+
+Description : Hibernate Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/rg-nneka-computeschedule-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85151",
+ "opType": "Hibernate",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/rg-nneka-computeschedule-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85151"
+ }}
+Type : VirtualMachines
+```
+
+The above command is scheduling a hibernate operation on a batch of virtual machines by the given deadline. The list below describes guidance on Deadline and Timezone:
+- Computeschedule supports "UTC" timezone currently
+- Deadline for a submit type operation can not be more than 5 minutes in the past or greater than 14 days in the future
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitStart.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitStart.md
new file mode 100644
index 000000000000..57f3c48fe435
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Invoke-AzComputeScheduleSubmitStart.md
@@ -0,0 +1,51 @@
+### Example 1: Start a batch of virtual machines at the given deadline
+```powershell
+Invoke-AzComputeScheduleSubmitStart -Location "eastus2euap" -CorrelationId "33483c00-dfab-4ac5-bf3a-d1cb9386863c" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+```
+
+```output
+Description : Start Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223",
+ "opType": "Start",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223"
+ }}
+Type : VirtualMachines
+
+Description : Start Resource request
+Location : eastus2euap
+Result : {{
+ "operation": {
+ "retryPolicy": {
+ "retryCount": 2,
+ "retryWindowInMinutes": 30
+ },
+ "operationId": "7eebe846-f687-463d-aa68-3c7485ce28a3",
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129",
+ "opType": "Start",
+ "subscriptionId": "ed5d2ee7-ede1-44bd-97a2-369489bbefe4",
+ "deadline": "2024-12-25T23:00:00.0000000Z",
+ "deadlineType": "InitiateAt",
+ "state": "Succeeded"
+ },
+ "resourceId": "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129"
+ }}
+Type : VirtualMachines
+```
+
+The above command is scheduling a start operation on a batch of virtual machines by the given deadline. The list below describes guidance on Deadline and Timezone:
+- Computeschedule supports "UTC" timezone currently
+- Deadline for a submit type operation can not be more than 5 minutes in the past or greater than 14 days in the future
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Stop-AzComputeScheduleScheduledAction.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Stop-AzComputeScheduleScheduledAction.md
new file mode 100644
index 000000000000..13e3764ee3c4
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/examples/Stop-AzComputeScheduleScheduledAction.md
@@ -0,0 +1,43 @@
+### Example 1: Cancel a batch of operations scheduled on virtual machines using the operation id from a previous Start/Deallocate/Hibernate operation
+```powershell
+Stop-AzComputeScheduleScheduledAction -Location "eastus2euap" -Correlationid "9992a233-8f42-4e7c-8b5a-71eea1a0ead2" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+```
+
+```output
+ErrorCode :
+ErrorDetail :
+OperationCompletedAt : 12/18/2024 5:36:18 PM
+OperationDeadline : 12/25/2024 11:00:00 PM
+OperationDeadlineType : InitiateAt
+OperationId : d099fda7-4fdb-4db0-98e5-53fab1821267
+OperationOpType : Hibernate
+OperationResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/pwshtest85155
+OperationState : Cancelled
+OperationSubscriptionId : ed5d2ee7-ede1-44bd-97a2-369489bbefe4
+OperationTimezone :
+ResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/pwshtest85155
+ResourceOperationErrorCode : OperationCancelledByUser
+ResourceOperationErrorDetail : Operation: d099fda7-4fdb-4db0-98e5-53fab1821267 was cancelled by the user.
+RetryPolicyRetryCount : 2
+RetryPolicyRetryWindowInMinute : 30
+
+ErrorCode :
+ErrorDetail :
+OperationCompletedAt : 12/18/2024 5:36:18 PM
+OperationDeadline : 12/25/2024 11:00:00 PM
+OperationDeadlineType : InitiateAt
+OperationId : 333f8f97-32d0-4a88-9bf0-75e65da2052c
+OperationOpType : Hibernate
+OperationResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/pwshtest85152
+OperationState : Cancelled
+OperationSubscriptionId : ed5d2ee7-ede1-44bd-97a2-369489bbefe4
+OperationTimezone :
+ResourceId : /subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-resource-group/providers/Microsoft.Compute/virtualMachines/pwshtest85152
+ResourceOperationErrorCode : OperationCancelledByUser
+ResourceOperationErrorDetail : Operation: 333f8f97-32d0-4a88-9bf0-75e65da2052c was cancelled by the user.
+RetryPolicyRetryCount : 2
+RetryPolicyRetryWindowInMinute : 30
+```
+
+The above command cancels scheduled operations (Start/Deallocate/Hibernate) on virtual machines using the operationids gotten from previous Execute/Submit type API calls.
+
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/export-surface.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/export-surface.ps1
new file mode 100644
index 000000000000..7ee05ff40b7a
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/export-surface.ps1
@@ -0,0 +1,41 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+param([switch]$NotIsolated, [switch]$IncludeGeneralParameters, [switch]$UseExpandedFormat)
+$ErrorActionPreference = 'Stop'
+
+$pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+if(-not $NotIsolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -NotIsolated
+ return
+}
+
+$dll = Join-Path $PSScriptRoot 'bin\Az.ComputeSchedule.private.dll'
+if(-not (Test-Path $dll)) {
+ Write-Error "Unable to find output assembly in '$binFolder'."
+}
+$null = Import-Module -Name $dll
+
+$moduleName = 'Az.ComputeSchedule'
+$exportsFolder = Join-Path $PSScriptRoot 'exports'
+$resourcesFolder = Join-Path $PSScriptRoot 'resources'
+
+Export-CmdletSurface -ModuleName $moduleName -CmdletFolder $exportsFolder -OutputFolder $resourcesFolder -IncludeGeneralParameters $IncludeGeneralParameters.IsPresent -UseExpandedFormat $UseExpandedFormat.IsPresent
+Write-Host -ForegroundColor Green "CmdletSurface file(s) created in '$resourcesFolder'"
+
+Export-ModelSurface -OutputFolder $resourcesFolder -UseExpandedFormat $UseExpandedFormat.IsPresent
+Write-Host -ForegroundColor Green "ModelSurface file created in '$resourcesFolder'"
+
+Write-Host -ForegroundColor Green '-------------Done-------------'
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationError.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationError.ps1
new file mode 100644
index 000000000000..0db2350c9e03
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationError.ps1
@@ -0,0 +1,189 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesGetOperationErrors: Get error details on operation errors (like transient errors encountered, additional logs) if they exist.
+.Description
+VirtualMachinesGetOperationErrors: Get error details on operation errors (like transient errors encountered, additional logs) if they exist.
+.Example
+Get-AzComputeScheduleOperationError -Location "eastus2euap" -OperationId "1fd870d3-d2b7-44c8-8ccb-bec05bbbf36f","5018cb59-bc54-42c3-a6c0-a9a4b0cf3f1b" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationErrorsResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/get-azcomputescheduleoperationerror
+#>
+function Get-AzComputeScheduleOperationError {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationErrorsResponse])]
+[CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String[]]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to query errors of
+ ${OperationId},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ GetExpanded = 'Az.ComputeSchedule.private\Get-AzComputeScheduleOperationError_GetExpanded';
+ }
+ if (('GetExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationStatus.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationStatus.ps1
new file mode 100644
index 000000000000..1a0d649dbe8c
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Get-AzComputeScheduleOperationStatus.ps1
@@ -0,0 +1,195 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesGetOperationStatus: Polling endpoint to read status of operations performed on virtual machines
+.Description
+VirtualMachinesGetOperationStatus: Polling endpoint to read status of operations performed on virtual machines
+.Example
+Get-AzComputeScheduleOperationStatus -Location "eastus2euap" -Correlationid "bbb34b32-0ca1-473f-b53d-d06148d0d1fa" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationStatusResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/get-azcomputescheduleoperationstatus
+#>
+function Get-AzComputeScheduleOperationStatus {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationStatusResponse])]
+[CmdletBinding(DefaultParameterSetName='GetExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String[]]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to get the status of
+ ${OperationId},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ GetExpanded1 = 'Az.ComputeSchedule.private\Get-AzComputeScheduleOperationStatus_GetExpanded1';
+ }
+ if (('GetExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteDeallocate.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteDeallocate.ps1
new file mode 100644
index 000000000000..f3437b9d395d
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteDeallocate.ps1
@@ -0,0 +1,207 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesExecuteDeallocate: Execute deallocate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteDeallocate: Execute deallocate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteDeallocate -Location "eastus2euap" -CorrelationId "0736f2d2-2708-4ed1-a567-e64ffe857ad9" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85190", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85253" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutedeallocate
+#>
+function Invoke-AzComputeScheduleExecuteDeallocate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteDeallocate_ExecuteExpanded';
+ }
+ if (('ExecuteExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteHibernate.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteHibernate.ps1
new file mode 100644
index 000000000000..23f3e411ef1e
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteHibernate.ps1
@@ -0,0 +1,207 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesExecuteHibernate: Execute hibernate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteHibernate: Execute hibernate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteHibernate -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-2", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-3" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutehibernate
+#>
+function Invoke-AzComputeScheduleExecuteHibernate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded1 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteHibernate_ExecuteExpanded1';
+ }
+ if (('ExecuteExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteStart.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteStart.ps1
new file mode 100644
index 000000000000..c150d61d7a17
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleExecuteStart.ps1
@@ -0,0 +1,207 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesExecuteStart: Execute start operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteStart: Execute start operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteStart -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutestart
+#>
+function Invoke-AzComputeScheduleExecuteStart {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded2', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded2 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteStart_ExecuteExpanded2';
+ }
+ if (('ExecuteExpanded2') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitDeallocate.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitDeallocate.ps1
new file mode 100644
index 000000000000..311cdbd9a1f8
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitDeallocate.ps1
@@ -0,0 +1,226 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesSubmitDeallocate: Schedule deallocate operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitDeallocate: Schedule deallocate operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitDeallocate -Location "eastus2euap" -CorrelationId "abb9b6a2-013a-4ad7-af2c-efd2449e6600" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85543", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85762" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmitdeallocate
+#>
+function Invoke-AzComputeScheduleSubmitDeallocate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitDeallocate_SubmitExpanded';
+ }
+ if (('SubmitExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitHibernate.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitHibernate.ps1
new file mode 100644
index 000000000000..ce83a8429652
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitHibernate.ps1
@@ -0,0 +1,226 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesSubmitHibernate: Schedule hibernate operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitHibernate: Schedule hibernate operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitHibernate -Location "eastus2euap" -CorrelationId "baa8dd07-e59e-4f97-be6a-76ad8d4584ae" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85150", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85151" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmithibernate
+#>
+function Invoke-AzComputeScheduleSubmitHibernate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded1 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitHibernate_SubmitExpanded1';
+ }
+ if (('SubmitExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitStart.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitStart.ps1
new file mode 100644
index 000000000000..1439f1a7cb7a
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Invoke-AzComputeScheduleSubmitStart.ps1
@@ -0,0 +1,226 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesSubmitStart: Schedule start operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitStart: Schedule start operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitStart -Location "eastus2euap" -CorrelationId "33483c00-dfab-4ac5-bf3a-d1cb9386863c" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmitstart
+#>
+function Invoke-AzComputeScheduleSubmitStart {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded2', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded2 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitStart_SubmitExpanded2';
+ }
+ if (('SubmitExpanded2') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/ProxyCmdletDefinitions.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/ProxyCmdletDefinitions.ps1
new file mode 100644
index 000000000000..9c3497d0c6c9
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/ProxyCmdletDefinitions.ps1
@@ -0,0 +1,1810 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesGetOperationErrors: Get error details on operation errors (like transient errors encountered, additional logs) if they exist.
+.Description
+VirtualMachinesGetOperationErrors: Get error details on operation errors (like transient errors encountered, additional logs) if they exist.
+.Example
+Get-AzComputeScheduleOperationError -Location "eastus2euap" -OperationId "1fd870d3-d2b7-44c8-8ccb-bec05bbbf36f","5018cb59-bc54-42c3-a6c0-a9a4b0cf3f1b" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationErrorsResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/get-azcomputescheduleoperationerror
+#>
+function Get-AzComputeScheduleOperationError {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationErrorsResponse])]
+[CmdletBinding(DefaultParameterSetName='GetExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String[]]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to query errors of
+ ${OperationId},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ GetExpanded = 'Az.ComputeSchedule.private\Get-AzComputeScheduleOperationError_GetExpanded';
+ }
+ if (('GetExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesGetOperationStatus: Polling endpoint to read status of operations performed on virtual machines
+.Description
+VirtualMachinesGetOperationStatus: Polling endpoint to read status of operations performed on virtual machines
+.Example
+Get-AzComputeScheduleOperationStatus -Location "eastus2euap" -Correlationid "bbb34b32-0ca1-473f-b53d-d06148d0d1fa" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationStatusResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/get-azcomputescheduleoperationstatus
+#>
+function Get-AzComputeScheduleOperationStatus {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IGetOperationStatusResponse])]
+[CmdletBinding(DefaultParameterSetName='GetExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String[]]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to get the status of
+ ${OperationId},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ GetExpanded1 = 'Az.ComputeSchedule.private\Get-AzComputeScheduleOperationStatus_GetExpanded1';
+ }
+ if (('GetExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesExecuteDeallocate: Execute deallocate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteDeallocate: Execute deallocate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteDeallocate -Location "eastus2euap" -CorrelationId "0736f2d2-2708-4ed1-a567-e64ffe857ad9" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85190", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85253" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutedeallocate
+#>
+function Invoke-AzComputeScheduleExecuteDeallocate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteDeallocate_ExecuteExpanded';
+ }
+ if (('ExecuteExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesExecuteHibernate: Execute hibernate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteHibernate: Execute hibernate operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteHibernate -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-2", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/test-vm-3" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutehibernate
+#>
+function Invoke-AzComputeScheduleExecuteHibernate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded1 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteHibernate_ExecuteExpanded1';
+ }
+ if (('ExecuteExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesExecuteStart: Execute start operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Description
+VirtualMachinesExecuteStart: Execute start operation for a batch of virtual machines, this operation is triggered as soon as Computeschedule receives it.
+.Example
+Invoke-AzComputeScheduleExecuteStart -Location "eastus2euap" -CorrelationId "d8cae7b7-190f-4574-a793-7bffa7a1b4a8" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -RetryCount 2 -RetryWindowInMinutes 30 | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputescheduleexecutestart
+#>
+function Invoke-AzComputeScheduleExecuteStart {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='ExecuteExpanded2', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ ExecuteExpanded2 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleExecuteStart_ExecuteExpanded2';
+ }
+ if (('ExecuteExpanded2') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesSubmitDeallocate: Schedule deallocate operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitDeallocate: Schedule deallocate operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitDeallocate -Location "eastus2euap" -CorrelationId "abb9b6a2-013a-4ad7-af2c-efd2449e6600" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85543", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85762" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmitdeallocate
+#>
+function Invoke-AzComputeScheduleSubmitDeallocate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IDeallocateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitDeallocate_SubmitExpanded';
+ }
+ if (('SubmitExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesSubmitHibernate: Schedule hibernate operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitHibernate: Schedule hibernate operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitHibernate -Location "eastus2euap" -CorrelationId "baa8dd07-e59e-4f97-be6a-76ad8d4584ae" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85150", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85151" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmithibernate
+#>
+function Invoke-AzComputeScheduleSubmitHibernate {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IHibernateResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded1', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded1 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitHibernate_SubmitExpanded1';
+ }
+ if (('SubmitExpanded1') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesSubmitStart: Schedule start operation for a batch of virtual machines at datetime in future.
+.Description
+VirtualMachinesSubmitStart: Schedule start operation for a batch of virtual machines at datetime in future.
+.Example
+Invoke-AzComputeScheduleSubmitStart -Location "eastus2euap" -CorrelationId "33483c00-dfab-4ac5-bf3a-d1cb9386863c" -DeadlineType "InitiateAt" -ResourceId "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85223", "/subscriptions/ed5d2ee7-ede1-44bd-97a2-369489bbefe4/resourceGroups/test-rg/providers/Microsoft.Compute/virtualMachines/pwshtest85129" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" -Deadline 2025-01-10T23:00:00 -RetryCount 2 -RetryWindowInMinutes 30 -Timezone "UTC" | Format-List
+
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/invoke-azcomputeschedulesubmitstart
+#>
+function Invoke-AzComputeScheduleSubmitStart {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IStartResourceOperationResponse])]
+[CmdletBinding(DefaultParameterSetName='SubmitExpanded2', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${CorrelationId},
+
+ [Parameter(Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.PSArgumentCompleterAttribute("Unknown", "InitiateAt", "CompleteBy")]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The deadlinetype of the operation, this can either be InitiateAt or CompleteBy
+ ${DeadlineType},
+
+ [Parameter(Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The resource ids used for the request
+ ${ResourceId},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.DateTime]
+ # The deadline for the operation
+ ${Deadline},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry count for user request
+ ${RetryCount},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.Int32]
+ # Retry window in minutes for user request
+ ${RetryWindowInMinutes},
+
+ [Parameter()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # The timezone for the operation
+ ${Timezone},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ SubmitExpanded2 = 'Az.ComputeSchedule.private\Invoke-AzComputeScheduleSubmitStart_SubmitExpanded2';
+ }
+ if (('SubmitExpanded2') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
+
+<#
+.Synopsis
+VirtualMachinesCancelOperations: Cancel a previously submitted (start/deallocate/hibernate) request
+.Description
+VirtualMachinesCancelOperations: Cancel a previously submitted (start/deallocate/hibernate) request
+.Example
+Stop-AzComputeScheduleScheduledAction -Location "eastus2euap" -Correlationid "9992a233-8f42-4e7c-8b5a-71eea1a0ead2" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Inputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsRequest
+.Inputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IComputeScheduleIdentity
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsResponse
+.Notes
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+INPUTOBJECT : Identity Parameter
+ [Id ]: Resource identity path
+ [Locationparameter ]: The location name.
+ [SubscriptionId ]: The ID of the target subscription. The value must be an UUID.
+
+REQUESTBODY : This is the request to cancel running operations in scheduled actions using the operation ids
+ Correlationid : CorrelationId item
+ OperationId >: The list of operation ids to cancel operations on
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/stop-azcomputeschedulescheduledaction
+#>
+function Stop-AzComputeScheduleScheduledAction {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsResponse])]
+[CmdletBinding(DefaultParameterSetName='CancelExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(ParameterSetName='Cancel', Mandatory)]
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [Parameter(ParameterSetName='CancelViaJsonFilePath', Mandatory)]
+ [Parameter(ParameterSetName='CancelViaJsonString', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter(ParameterSetName='Cancel')]
+ [Parameter(ParameterSetName='CancelExpanded')]
+ [Parameter(ParameterSetName='CancelViaJsonFilePath')]
+ [Parameter(ParameterSetName='CancelViaJsonString')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(ParameterSetName='CancelViaIdentity', Mandatory, ValueFromPipeline)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IComputeScheduleIdentity]
+ # Identity Parameter
+ ${InputObject},
+
+ [Parameter(ParameterSetName='Cancel', Mandatory, ValueFromPipeline)]
+ [Parameter(ParameterSetName='CancelViaIdentity', Mandatory, ValueFromPipeline)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsRequest]
+ # This is the request to cancel running operations in scheduled actions using the operation ids
+ ${RequestBody},
+
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${Correlationid},
+
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to cancel operations on
+ ${OperationId},
+
+ [Parameter(ParameterSetName='CancelViaJsonFilePath', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # Path of Json file supplied to the Cancel operation
+ ${JsonFilePath},
+
+ [Parameter(ParameterSetName='CancelViaJsonString', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # Json string supplied to the Cancel operation
+ ${JsonString},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ Cancel = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_Cancel';
+ CancelExpanded = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelExpanded';
+ CancelViaIdentity = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaIdentity';
+ CancelViaJsonFilePath = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaJsonFilePath';
+ CancelViaJsonString = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaJsonString';
+ }
+ if (('Cancel', 'CancelExpanded', 'CancelViaJsonFilePath', 'CancelViaJsonString') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/README.md b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/README.md
new file mode 100644
index 000000000000..95a71fc8795a
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/README.md
@@ -0,0 +1,20 @@
+# Exports
+This directory contains the cmdlets *exported by* `Az.ComputeSchedule`. No other cmdlets in this repository are directly exported. What that means is the `Az.ComputeSchedule` module will run [Export-ModuleMember](https://learn.microsoft.com/powershell/module/microsoft.powershell.core/export-modulemember) on the cmldets in this directory. The cmdlets in this directory are generated at **build-time**. Do not put any custom code, files, cmdlets, etc. into this directory. Please use `..\custom` for all custom implementation.
+
+## Info
+- Modifiable: no
+- Generated: all
+- Committed: no
+- Packaged: yes
+
+## Details
+The cmdlets generated here are created every time you run `build-module.ps1`. These cmdlets are a merge of all (excluding `InternalExport`) cmdlets from the private binary (`..\bin\Az.ComputeSchedule.private.dll`) and from the `..\custom\Az.ComputeSchedule.custom.psm1` module. Cmdlets that are *not merged* from those directories are decorated with the `InternalExport` attribute. This happens when you set the cmdlet to **hide** from configuration. For more information on hiding, see [cmdlet hiding](https://github.com/Azure/autorest/blob/master/docs/powershell/options.md#cmdlet-hiding-exportation-suppression) or the [README.md](..\internal/README.md) in the `..\internal` folder.
+
+## Purpose
+We generate script cmdlets out of the binary cmdlets and custom cmdlets. The format of script cmdlets are simplistic; thus, easier to generate at build time. Generating the cmdlets is required as to allow merging of generated binary, hand-written binary, and hand-written custom cmdlets. For Azure cmdlets, having script cmdlets simplifies the mechanism for exporting Azure profiles.
+
+## Structure
+The cmdlets generated here will flat in the directory (no sub-folders) as long as there are no Azure profiles specified for any cmdlets. Azure profiles (the `Profiles` attribute) is only applied when generating with the `--azure` attribute (or `azure: true` in the configuration). When Azure profiles are applied, the folder structure has a folder per profile. Each profile folder has only those cmdlets that apply to that profile.
+
+## Usage
+When `./Az.ComputeSchedule.psm1` is loaded, it dynamically exports cmdlets here based on the folder structure and on the selected profile. If there are no sub-folders, it exports all cmdlets at the root of this folder. If there are sub-folders, it checks to see the selected profile. If no profile is selected, it exports the cmdlets in the last sub-folder (alphabetically). If a profile is selected, it exports the cmdlets in the sub-folder that matches the profile name. If there is no sub-folder that matches the profile name, it exports no cmdlets and writes a warning message.
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Stop-AzComputeScheduleScheduledAction.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Stop-AzComputeScheduleScheduledAction.ps1
new file mode 100644
index 000000000000..eea4076d511f
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/exports/Stop-AzComputeScheduleScheduledAction.ps1
@@ -0,0 +1,247 @@
+
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+
+<#
+.Synopsis
+VirtualMachinesCancelOperations: Cancel a previously submitted (start/deallocate/hibernate) request
+.Description
+VirtualMachinesCancelOperations: Cancel a previously submitted (start/deallocate/hibernate) request
+.Example
+Stop-AzComputeScheduleScheduledAction -Location "eastus2euap" -Correlationid "9992a233-8f42-4e7c-8b5a-71eea1a0ead2" -OperationId "d099fda7-4fdb-4db0-98e5-53fab1821267","333f8f97-32d0-4a88-9bf0-75e65da2052c" -SubscriptionId "ed5d2ee7-ede1-44bd-97a2-369489bbefe4" | Format-List
+
+.Inputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsRequest
+.Inputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IComputeScheduleIdentity
+.Outputs
+Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsResponse
+.Notes
+COMPLEX PARAMETER PROPERTIES
+
+To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
+
+INPUTOBJECT : Identity Parameter
+ [Id ]: Resource identity path
+ [Locationparameter ]: The location name.
+ [SubscriptionId ]: The ID of the target subscription. The value must be an UUID.
+
+REQUESTBODY : This is the request to cancel running operations in scheduled actions using the operation ids
+ Correlationid : CorrelationId item
+ OperationId >: The list of operation ids to cancel operations on
+.Link
+https://learn.microsoft.com/powershell/module/az.computeschedule/stop-azcomputeschedulescheduledaction
+#>
+function Stop-AzComputeScheduleScheduledAction {
+[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsResponse])]
+[CmdletBinding(DefaultParameterSetName='CancelExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
+param(
+ [Parameter(ParameterSetName='Cancel', Mandatory)]
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [Parameter(ParameterSetName='CancelViaJsonFilePath', Mandatory)]
+ [Parameter(ParameterSetName='CancelViaJsonString', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [System.String]
+ # The location name.
+ ${Location},
+
+ [Parameter(ParameterSetName='Cancel')]
+ [Parameter(ParameterSetName='CancelExpanded')]
+ [Parameter(ParameterSetName='CancelViaJsonFilePath')]
+ [Parameter(ParameterSetName='CancelViaJsonString')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
+ [System.String]
+ # The ID of the target subscription.
+ # The value must be an UUID.
+ ${SubscriptionId},
+
+ [Parameter(ParameterSetName='CancelViaIdentity', Mandatory, ValueFromPipeline)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Path')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.IComputeScheduleIdentity]
+ # Identity Parameter
+ ${InputObject},
+
+ [Parameter(ParameterSetName='Cancel', Mandatory, ValueFromPipeline)]
+ [Parameter(ParameterSetName='CancelViaIdentity', Mandatory, ValueFromPipeline)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Models.ICancelOperationsRequest]
+ # This is the request to cancel running operations in scheduled actions using the operation ids
+ ${RequestBody},
+
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # CorrelationId item
+ ${Correlationid},
+
+ [Parameter(ParameterSetName='CancelExpanded', Mandatory)]
+ [AllowEmptyCollection()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String[]]
+ # The list of operation ids to cancel operations on
+ ${OperationId},
+
+ [Parameter(ParameterSetName='CancelViaJsonFilePath', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # Path of Json file supplied to the Cancel operation
+ ${JsonFilePath},
+
+ [Parameter(ParameterSetName='CancelViaJsonString', Mandatory)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Body')]
+ [System.String]
+ # Json string supplied to the Cancel operation
+ ${JsonString},
+
+ [Parameter()]
+ [Alias('AzureRMContext', 'AzureCredential')]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Azure')]
+ [System.Management.Automation.PSObject]
+ # The DefaultProfile parameter is not functional.
+ # Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription.
+ ${DefaultProfile},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Wait for .NET debugger to attach
+ ${Break},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be appended to the front of the pipeline
+ ${HttpPipelineAppend},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.SendAsyncStep[]]
+ # SendAsync Pipeline Steps to be prepended to the front of the pipeline
+ ${HttpPipelinePrepend},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Uri]
+ # The URI for the proxy server to use
+ ${Proxy},
+
+ [Parameter(DontShow)]
+ [ValidateNotNull()]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.PSCredential]
+ # Credentials for a proxy server to use for the remote call
+ ${ProxyCredential},
+
+ [Parameter(DontShow)]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Category('Runtime')]
+ [System.Management.Automation.SwitchParameter]
+ # Use the default credentials for the proxy
+ ${ProxyUseDefaultCredentials}
+)
+
+begin {
+ try {
+ $outBuffer = $null
+ if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
+ $PSBoundParameters['OutBuffer'] = 1
+ }
+ $parameterSet = $PSCmdlet.ParameterSetName
+
+ if ($null -eq [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion) {
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PowerShellVersion = $PSVersionTable.PSVersion.ToString()
+ }
+ $preTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ if ($preTelemetryId -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId =(New-Guid).ToString()
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Create', $MyInvocation, $parameterSet, $PSCmdlet)
+ } else {
+ $internalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ if ($internalCalledCmdlets -eq '') {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $MyInvocation.MyCommand.Name
+ } else {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets += ',' + $MyInvocation.MyCommand.Name
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = 'internal'
+ }
+
+ $mapping = @{
+ Cancel = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_Cancel';
+ CancelExpanded = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelExpanded';
+ CancelViaIdentity = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaIdentity';
+ CancelViaJsonFilePath = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaJsonFilePath';
+ CancelViaJsonString = 'Az.ComputeSchedule.private\Stop-AzComputeScheduleScheduledAction_CancelViaJsonString';
+ }
+ if (('Cancel', 'CancelExpanded', 'CancelViaJsonFilePath', 'CancelViaJsonString') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId') ) {
+ $testPlayback = $false
+ $PSBoundParameters['HttpPipelinePrepend'] | Foreach-Object { if ($_) { $testPlayback = $testPlayback -or ('Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.PipelineMock' -eq $_.Target.GetType().FullName -and 'Playback' -eq $_.Target.Mode) } }
+ if ($testPlayback) {
+ $PSBoundParameters['SubscriptionId'] = . (Join-Path $PSScriptRoot '..' 'utils' 'Get-SubscriptionIdTestSafe.ps1')
+ } else {
+ $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id
+ }
+ }
+ $cmdInfo = Get-Command -Name $mapping[$parameterSet]
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ if ($null -ne $MyInvocation.MyCommand -and [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets -notcontains $MyInvocation.MyCommand.Name -and [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ContainsPreviewAttribute($cmdInfo, $MyInvocation)){
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Utilities.Common.AzurePSCmdlet]::PromptedPreviewMessageCmdlets.Enqueue($MyInvocation.MyCommand.Name)
+ }
+ $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
+ $scriptCmd = {& $wrappedCmd @PSBoundParameters}
+ $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
+ $steppablePipeline.Begin($PSCmdlet)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+
+process {
+ try {
+ $steppablePipeline.Process($_)
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+
+ finally {
+ $backupTelemetryId = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId
+ $backupInternalCalledCmdlets = [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+
+}
+end {
+ try {
+ $steppablePipeline.End()
+
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $backupTelemetryId
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::InternalCalledCmdlets = $backupInternalCalledCmdlets
+ if ($preTelemetryId -eq '') {
+ [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.module]::Instance.Telemetry.Invoke('Send', $MyInvocation, $parameterSet, $PSCmdlet)
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ }
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::TelemetryId = $preTelemetryId
+
+ } catch {
+ [Microsoft.WindowsAzure.Commands.Common.MetricHelper]::ClearTelemetryContext()
+ throw
+ }
+}
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-help.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-help.ps1
new file mode 100644
index 000000000000..b7ace658d248
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-help.ps1
@@ -0,0 +1,74 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+# ----------------------------------------------------------------------------------
+param([switch]$NotIsolated)
+$ErrorActionPreference = 'Stop'
+
+$pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+if(-not $NotIsolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -NotIsolated
+ return
+}
+
+$exportsFolder = Join-Path $PSScriptRoot 'exports'
+if(-not (Test-Path $exportsFolder)) {
+ Write-Error "Exports folder '$exportsFolder' was not found."
+}
+
+$directories = Get-ChildItem -Directory -Path $exportsFolder
+$hasProfiles = ($directories | Measure-Object).Count -gt 0
+if(-not $hasProfiles) {
+ $directories = Get-Item -Path $exportsFolder
+}
+
+$docsFolder = Join-Path $PSScriptRoot 'docs'
+if(Test-Path $docsFolder) {
+ $null = Get-ChildItem -Path $docsFolder -Recurse -Exclude 'README.md' | Remove-Item -Recurse -ErrorAction SilentlyContinue
+}
+$null = New-Item -ItemType Directory -Force -Path $docsFolder -ErrorAction SilentlyContinue
+$examplesFolder = Join-Path $PSScriptRoot 'examples'
+
+$modulePsd1 = Get-Item -Path (Join-Path $PSScriptRoot './Az.ComputeSchedule.psd1')
+$modulePath = $modulePsd1.FullName
+$moduleName = $modulePsd1.BaseName
+
+# Load DLL to use build-time cmdlets
+Import-Module -Name $modulePath
+Import-Module -Name (Join-Path $PSScriptRoot './bin/Az.ComputeSchedule.private.dll')
+$instance = [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Module]::Instance
+# Module info is shared per profile
+$moduleInfo = Get-Module -Name $moduleName
+
+foreach($directory in $directories)
+{
+ if($hasProfiles) {
+ Select-AzProfile -Name $directory.Name
+ }
+ # Reload module per profile
+ Import-Module -Name $modulePath -Force
+
+ $cmdletNames = Get-ScriptCmdlet -ScriptFolder $directory.FullName
+ $cmdletHelpInfo = $cmdletNames | ForEach-Object { Get-Help -Name $_ -Full }
+ $cmdletFunctionInfo = Get-ScriptCmdlet -ScriptFolder $directory.FullName -AsFunctionInfo
+
+ $docsPath = Join-Path $docsFolder $directory.Name
+ $null = New-Item -ItemType Directory -Force -Path $docsPath -ErrorAction SilentlyContinue
+ $examplesPath = Join-Path $examplesFolder $directory.Name
+ $addComplexInterfaceInfo = ![System.Convert]::ToBoolean('true')
+ Export-HelpMarkdown -ModuleInfo $moduleInfo -FunctionInfo $cmdletFunctionInfo -HelpInfo $cmdletHelpInfo -DocsFolder $docsPath -ExamplesFolder $examplesPath -AddComplexInterfaceInfo:$addComplexInterfaceInfo
+ Write-Host -ForegroundColor Green "Created documentation in '$docsPath'"
+}
+
+Write-Host -ForegroundColor Green '-------------Done-------------'
\ No newline at end of file
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-portal-ux.ps1 b/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-portal-ux.ps1
new file mode 100644
index 000000000000..5e7e24a006d0
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/generate-portal-ux.ps1
@@ -0,0 +1,383 @@
+# ----------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# Code generated by Microsoft (R) AutoRest Code Generator.Changes may cause incorrect behavior and will be lost if the code
+# is regenerated.
+#
+# This Script will create a folder dedicated to Azure-specific content and includes metadata files essential for enhancing the user experience (UX) within the Azure portal.
+# These files are utilized by the Azure portal to effectively present the usage of cmdlets related to specific resources on portal pages.
+# ----------------------------------------------------------------------------------
+param([switch]$NotIsolated)
+$ErrorActionPreference = 'Stop'
+
+$pwsh = [System.Diagnostics.Process]::GetCurrentProcess().Path
+if(-not $NotIsolated) {
+ Write-Host -ForegroundColor Green 'Creating isolated process...'
+ & "$pwsh" -NonInteractive -NoLogo -NoProfile -File $MyInvocation.MyCommand.Path @PSBoundParameters -NotIsolated
+ return
+}
+
+$moduleName = 'Az.ComputeSchedule'
+$rootModuleName = ''
+if ($rootModuleName -eq "")
+{
+ $rootModuleName = $moduleName
+}
+$modulePsd1 = Get-Item -Path (Join-Path $PSScriptRoot "./$moduleName.psd1")
+$modulePath = $modulePsd1.FullName
+
+# Load DLL to use build-time cmdlets
+Import-Module -Name $modulePath
+Import-Module -Name (Join-Path $PSScriptRoot "./bin/$moduleName.private.dll")
+$instance = [Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Module]::Instance
+# Module info is shared per profile
+$moduleInfo = Get-Module -Name $moduleName
+$parameterSetsInfo = Get-Module -Name "$moduleName.private"
+
+function Test-FunctionSupported()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [string]
+ $FunctionName
+ )
+
+ If (-not $FunctionName.Contains("_")) {
+ return $false
+ }
+
+ $cmdletName, $parameterSetName = $FunctionName.Split("_")
+ If ($parameterSetName.Contains("List") -or $parameterSetName.Contains("ViaIdentity") -or $parameterSetName.Contains("ViaJson")) {
+ return $false
+ }
+ If ($cmdletName.StartsWith("New") -or $cmdletName.StartsWith("Set") -or $cmdletName.StartsWith("Update")) {
+ return $false
+ }
+
+ $parameterSetInfo = $parameterSetsInfo.ExportedCmdlets[$FunctionName]
+ foreach ($parameterInfo in $parameterSetInfo.Parameters.Values)
+ {
+ $category = (Get-ParameterAttribute -ParameterInfo $parameterInfo -AttributeName "CategoryAttribute").Categories
+ $invalideCategory = @('Query', 'Body')
+ if ($invalideCategory -contains $category)
+ {
+ return $false
+ }
+ }
+
+ $customFiles = Get-ChildItem -Path custom -Filter "$cmdletName.*"
+ if ($customFiles.Length -ne 0)
+ {
+ Write-Host -ForegroundColor Yellow "There are come custom files for $cmdletName, skip generate UX data for it."
+ return $false
+ }
+
+ return $true
+}
+
+function Get-MappedCmdletFromFunctionName()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [string]
+ $FunctionName
+ )
+
+ $cmdletName, $parameterSetName = $FunctionName.Split("_")
+
+ return $cmdletName
+}
+
+function Get-ParameterAttribute()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.ParameterMetadata]
+ $ParameterInfo,
+ [Parameter()]
+ [String]
+ $AttributeName
+ )
+ return $ParameterInfo.Attributes | Where-Object { $_.TypeId.Name -eq $AttributeName }
+}
+
+function Get-CmdletAttribute()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.CommandInfo]
+ $CmdletInfo,
+ [Parameter()]
+ [String]
+ $AttributeName
+ )
+
+ return $CmdletInfo.ImplementingType.GetTypeInfo().GetCustomAttributes([System.object], $true) | Where-Object { $_.TypeId.Name -eq $AttributeName }
+}
+
+function Get-CmdletDescription()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [String]
+ $CmdletName
+ )
+ $helpInfo = Get-Help $CmdletName -Full
+
+ $description = $helpInfo.Description.Text
+ if ($null -eq $description)
+ {
+ return ""
+ }
+ return $description
+}
+
+# Test whether the parameter is from swagger http path
+function Test-ParameterFromSwagger()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.ParameterMetadata]
+ $ParameterInfo
+ )
+ $category = (Get-ParameterAttribute -ParameterInfo $ParameterInfo -AttributeName "CategoryAttribute").Categories
+ $doNotExport = Get-ParameterAttribute -ParameterInfo $ParameterInfo -AttributeName "DoNotExportAttribute"
+ if ($null -ne $doNotExport)
+ {
+ return $false
+ }
+
+ $valideCategory = @('Path')
+ if ($valideCategory -contains $category)
+ {
+ return $true
+ }
+ return $false
+}
+
+function New-ExampleForParameterSet()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.CommandInfo]
+ $ParameterSetInfo
+ )
+ $parameters = $ParameterSetInfo.Parameters.Values | Where-Object { Test-ParameterFromSwagger $_ }
+ $result = @()
+ foreach ($parameter in $parameters)
+ {
+ $category = (Get-ParameterAttribute -parameterInfo $parameter -AttributeName "CategoryAttribute").Categories
+ $sourceName = (Get-ParameterAttribute -parameterInfo $parameter -AttributeName "InfoAttribute").SerializedName
+ $name = $parameter.Name
+ $result += [ordered]@{
+ name = "-$Name"
+ value = "[$category.$sourceName]"
+ }
+ }
+
+ return $result
+}
+
+function New-ParameterArrayInParameterSet()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.CommandInfo]
+ $ParameterSetInfo
+ )
+ $parameters = $ParameterSetInfo.Parameters.Values | Where-Object { Test-ParameterFromSwagger $_ }
+ $result = @()
+ foreach ($parameter in $parameters)
+ {
+ $isMandatory = (Get-ParameterAttribute -parameterInfo $parameter -AttributeName "ParameterAttribute").Mandatory
+ $parameterName = $parameter.Name
+ $parameterType = $parameter.ParameterType.ToString().Split('.')[1]
+ if ($parameter.SwitchParameter)
+ {
+ $parameterSignature = "-$parameterName"
+ }
+ else
+ {
+ $parameterSignature = "-$parameterName <$parameterType>"
+ }
+ if ($parameterName -eq "SubscriptionId")
+ {
+ $isMandatory = $false
+ }
+ if (-not $isMandatory)
+ {
+ $parameterSignature = "[$parameterSignature]"
+ }
+ $result += $parameterSignature
+ }
+
+ return $result
+}
+
+function New-MetadataForParameterSet()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Management.Automation.CommandInfo]
+ $ParameterSetInfo
+ )
+ $httpAttribute = Get-CmdletAttribute -CmdletInfo $ParameterSetInfo -AttributeName "HttpPathAttribute"
+ $httpPath = $httpAttribute.Path
+ $apiVersion = $httpAttribute.ApiVersion
+ $provider = [System.Text.RegularExpressions.Regex]::New("/providers/([\w+\.]+)/").Match($httpPath).Groups[1].Value
+ $resourcePath = "/" + $httpPath.Split("$provider/")[1]
+ $resourceType = [System.Text.RegularExpressions.Regex]::New("/([\w]+)/\{\w+\}").Matches($resourcePath) | ForEach-Object {$_.groups[1].Value} | Join-String -Separator "/"
+ $cmdletName = Get-MappedCmdletFromFunctionName $ParameterSetInfo.Name
+ $description = (Get-CmdletAttribute -CmdletInfo $ParameterSetInfo -AttributeName "DescriptionAttribute").Description
+ [object[]]$example = New-ExampleForParameterSet $ParameterSetInfo
+ if ($Null -eq $example)
+ {
+ $example = @()
+ }
+
+ [string[]]$signature = New-ParameterArrayInParameterSet $ParameterSetInfo
+ if ($Null -eq $signature)
+ {
+ $signature = @()
+ }
+
+ return @{
+ Path = $httpPath
+ Provider = $provider
+ ResourceType = $resourceType
+ ApiVersion = $apiVersion
+ CmdletName = $cmdletName
+ Description = $description
+ Example = $example
+ Signature = @{
+ parameters = $signature
+ }
+ }
+}
+
+function Merge-WithExistCmdletMetadata()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [System.Collections.Specialized.OrderedDictionary]
+ $ExistedCmdletInfo,
+ [Parameter()]
+ [Hashtable]
+ $ParameterSetMetadata
+ )
+ $ExistedCmdletInfo.help.parameterSets += $ParameterSetMetadata.Signature
+ $ExistedCmdletInfo.examples += [ordered]@{
+ description = $ParameterSetMetadata.Description
+ parameters = $ParameterSetMetadata.Example
+ }
+
+ return $ExistedCmdletInfo
+}
+
+function New-MetadataForCmdlet()
+{
+ [CmdletBinding()]
+ Param (
+ [Parameter()]
+ [Hashtable]
+ $ParameterSetMetadata
+ )
+ $cmdletName = $ParameterSetMetadata.CmdletName
+ $description = Get-CmdletDescription $cmdletName
+ $result = [ordered]@{
+ name = $cmdletName
+ description = $description
+ path = $ParameterSetMetadata.Path
+ help = [ordered]@{
+ learnMore = [ordered]@{
+ url = "https://learn.microsoft.com/powershell/module/$rootModuleName/$cmdletName".ToLower()
+ }
+ parameterSets = @()
+ }
+ examples = @()
+ }
+ $result = Merge-WithExistCmdletMetadata -ExistedCmdletInfo $result -ParameterSetMetadata $ParameterSetMetadata
+ return $result
+}
+
+$parameterSets = $parameterSetsInfo.ExportedCmdlets.Keys | Where-Object { Test-FunctionSupported($_) }
+$resourceTypes = @{}
+foreach ($parameterSetName in $parameterSets)
+{
+ $cmdletInfo = $parameterSetsInfo.ExportedCommands[$parameterSetName]
+ $parameterSetMetadata = New-MetadataForParameterSet -ParameterSetInfo $cmdletInfo
+ $cmdletName = $parameterSetMetadata.CmdletName
+ if (-not ($moduleInfo.ExportedCommands.ContainsKey($cmdletName)))
+ {
+ continue
+ }
+ if ($resourceTypes.ContainsKey($parameterSetMetadata.ResourceType))
+ {
+ $ExistedCmdletInfo = $resourceTypes[$parameterSetMetadata.ResourceType].commands | Where-Object { $_.name -eq $cmdletName }
+ if ($ExistedCmdletInfo)
+ {
+ $ExistedCmdletInfo = Merge-WithExistCmdletMetadata -ExistedCmdletInfo $ExistedCmdletInfo -ParameterSetMetadata $parameterSetMetadata
+ }
+ else
+ {
+ $cmdletInfo = New-MetadataForCmdlet -ParameterSetMetadata $parameterSetMetadata
+ $resourceTypes[$parameterSetMetadata.ResourceType].commands += $cmdletInfo
+ }
+ }
+ else
+ {
+ $cmdletInfo = New-MetadataForCmdlet -ParameterSetMetadata $parameterSetMetadata
+ $resourceTypes[$parameterSetMetadata.ResourceType] = [ordered]@{
+ resourceType = $parameterSetMetadata.ResourceType
+ apiVersion = $parameterSetMetadata.ApiVersion
+ learnMore = @{
+ url = "https://learn.microsoft.com/powershell/module/$rootModuleName".ToLower()
+ }
+ commands = @($cmdletInfo)
+ provider = $parameterSetMetadata.Provider
+ }
+ }
+}
+
+$UXFolder = 'UX'
+if (Test-Path $UXFolder)
+{
+ Remove-Item -Path $UXFolder -Recurse
+}
+$null = New-Item -ItemType Directory -Path $UXFolder
+
+foreach ($resourceType in $resourceTypes.Keys)
+{
+ $resourceTypeFileName = $resourceType -replace "/", "-"
+ if ($resourceTypeFileName -eq "")
+ {
+ continue
+ }
+ $resourceTypeInfo = $resourceTypes[$resourceType]
+ $provider = $resourceTypeInfo.provider
+ $providerFolder = "$UXFolder/$provider"
+ if (-not (Test-Path $providerFolder))
+ {
+ $null = New-Item -ItemType Directory -Path $providerFolder
+ }
+ $resourceTypeInfo.Remove("provider")
+ $resourceTypeInfo | ConvertTo-Json -Depth 10 | Out-File "$providerFolder/$resourceTypeFileName.json"
+}
diff --git a/src/ComputeSchedule/ComputeSchedule.AutoRest/generated/Module.cs b/src/ComputeSchedule/ComputeSchedule.AutoRest/generated/Module.cs
new file mode 100644
index 000000000000..c6ea96beadd2
--- /dev/null
+++ b/src/ComputeSchedule/ComputeSchedule.AutoRest/generated/Module.cs
@@ -0,0 +1,202 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License. See License.txt in the project root for license information.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+namespace Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule
+{
+ using static Microsoft.Azure.PowerShell.Cmdlets.ComputeSchedule.Runtime.Extensions;
+ using SendAsyncStepDelegate = global::System.Func, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>;
+ using PipelineChangeDelegate = global::System.Action, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>>;
+ using GetParameterDelegate = global::System.Func;
+ using ModuleLoadPipelineDelegate = global::System.Action, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>>, global::System.Action, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>>>;
+ using ArgumentCompleterDelegate = global::System.Func;
+ using GetTelemetryIdDelegate = global::System.Func;
+ using TelemetryDelegate = global::System.Action;
+ using NewRequestPipelineDelegate = global::System.Action, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>>, global::System.Action, global::System.Threading.Tasks.Task>, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>>>;
+ using SignalDelegate = global::System.Func, global::System.Threading.Tasks.Task>;
+ using EventListenerDelegate = global::System.Func, global::System.Func, global::System.Threading.Tasks.Task>, global::System.Management.Automation.InvocationInfo, string, string, string, global::System.Exception, global::System.Threading.Tasks.Task>;
+ using NextDelegate = global::System.Func, global::System.Threading.Tasks.Task>, global::System.Threading.Tasks.Task>;
+ using SanitizerDelegate = global::System.Action