From a9a0fccad89323d8650d02127e1787efc71ce7b6 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Thu, 13 Jan 2022 16:22:59 +0000 Subject: [PATCH] CodeGen from PR 15957 in Azure/azure-rest-api-specs Merge a75b23bfa66ed6639e952c38eb0466aa912d5415 into 25949d0ef9e779baf66559411d34a0e5e7aa383d --- sdk/devtestlabs/arm-devtestlabs/CHANGELOG.md | 737 +- sdk/devtestlabs/arm-devtestlabs/LICENSE | 2 +- sdk/devtestlabs/arm-devtestlabs/README.md | 2 +- sdk/devtestlabs/arm-devtestlabs/_meta.json | 6 +- sdk/devtestlabs/arm-devtestlabs/package.json | 18 +- .../review/arm-devtestlabs.api.md | 1899 +++-- .../arm-devtestlabs/src/devTestLabsClient.ts | 26 +- .../arm-devtestlabs/src/models/index.ts | 4230 +++++++--- .../arm-devtestlabs/src/models/mappers.ts | 7498 ++++++++++++----- .../arm-devtestlabs/src/models/parameters.ts | 164 +- .../src/operations/armTemplates.ts | 18 +- .../src/operations/artifactSources.ts | 33 +- .../src/operations/artifacts.ts | 22 +- .../src/operations/bastionHosts.ts | 582 ++ .../arm-devtestlabs/src/operations/costs.ts | 169 +- .../src/operations/customImages.ts | 36 +- .../arm-devtestlabs/src/operations/disks.ts | 48 +- .../src/operations/environments.ts | 82 +- .../src/operations/formulas.ts | 38 +- .../src/operations/galleryImages.ts | 56 +- .../src/operations/globalSchedules.ts | 50 +- .../arm-devtestlabs/src/operations/index.ts | 4 + .../src/operations/labSecrets.ts | 523 ++ .../arm-devtestlabs/src/operations/labs.ts | 221 +- .../src/operations/notificationChannels.ts | 39 +- .../src/operations/operations.ts | 21 +- .../src/operations/policies.ts | 32 +- .../src/operations/policySets.ts | 162 +- .../src/operations/providerOperations.ts | 16 +- .../src/operations/schedules.ts | 174 +- .../arm-devtestlabs/src/operations/secrets.ts | 38 +- .../src/operations/serviceFabricSchedules.ts | 38 +- .../src/operations/serviceFabrics.ts | 60 +- .../src/operations/serviceRunners.ts | 337 +- .../src/operations/sharedGalleries.ts | 374 + .../src/operations/sharedImages.ts | 428 + .../arm-devtestlabs/src/operations/users.ts | 36 +- .../src/operations/virtualMachineSchedules.ts | 38 +- .../src/operations/virtualMachines.ts | 206 +- .../src/operations/virtualNetworks.ts | 41 +- .../src/operationsInterfaces/armTemplates.ts | 4 +- .../operationsInterfaces/artifactSources.ts | 13 +- .../src/operationsInterfaces/artifacts.ts | 6 +- .../src/operationsInterfaces/bastionHosts.ts | 141 + .../src/operationsInterfaces/costs.ts | 20 +- .../src/operationsInterfaces/customImages.ts | 16 +- .../src/operationsInterfaces/disks.ts | 24 +- .../src/operationsInterfaces/environments.ts | 32 +- .../src/operationsInterfaces/formulas.ts | 18 +- .../src/operationsInterfaces/galleryImages.ts | 22 +- .../operationsInterfaces/globalSchedules.ts | 20 +- .../src/operationsInterfaces/index.ts | 4 + .../src/operationsInterfaces/labSecrets.ts | 127 + .../src/operationsInterfaces/labs.ts | 74 +- .../notificationChannels.ts | 17 +- .../src/operationsInterfaces/operations.ts | 8 +- .../src/operationsInterfaces/policies.ts | 12 +- .../src/operationsInterfaces/policySets.ts | 17 +- .../providerOperations.ts | 7 +- .../src/operationsInterfaces/schedules.ts | 47 +- .../src/operationsInterfaces/secrets.ts | 14 +- .../serviceFabricSchedules.ts | 16 +- .../operationsInterfaces/serviceFabrics.ts | 30 +- .../operationsInterfaces/serviceRunners.ts | 64 +- .../operationsInterfaces/sharedGalleries.ts | 94 + .../src/operationsInterfaces/sharedImages.ts | 103 + .../src/operationsInterfaces/users.ts | 16 +- .../virtualMachineSchedules.ts | 16 +- .../operationsInterfaces/virtualMachines.ts | 99 +- .../operationsInterfaces/virtualNetworks.ts | 17 +- .../arm-devtestlabs/test/sampleTest.ts | 48 + 71 files changed, 14888 insertions(+), 4762 deletions(-) create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operations/bastionHosts.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operations/labSecrets.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operations/sharedGalleries.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operations/sharedImages.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/bastionHosts.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labSecrets.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedGalleries.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedImages.ts create mode 100644 sdk/devtestlabs/arm-devtestlabs/test/sampleTest.ts diff --git a/sdk/devtestlabs/arm-devtestlabs/CHANGELOG.md b/sdk/devtestlabs/arm-devtestlabs/CHANGELOG.md index 55c343154327..9bfd97305d6e 100644 --- a/sdk/devtestlabs/arm-devtestlabs/CHANGELOG.md +++ b/sdk/devtestlabs/arm-devtestlabs/CHANGELOG.md @@ -1,15 +1,736 @@ # Release History + +## 5.0.0 (2022-01-13) + +**Features** -## 4.0.1 (Unreleased) + - Added operation group BastionHosts + - Added operation group LabSecrets + - Added operation group SharedGalleries + - Added operation group SharedImages + - Added operation Costs.list + - Added operation GalleryImages.get + - Added operation Labs.ensureCurrentUserProfile + - Added operation PolicySets.list + - Added operation ServiceRunners.beginCreateOrUpdate + - Added operation ServiceRunners.beginCreateOrUpdateAndWait + - Added operation ServiceRunners.beginDelete + - Added operation ServiceRunners.beginDeleteAndWait + - Added operation ServiceRunners.list + - Added operation VirtualMachines.clearArtifactResults + - Added Interface BastionHostList + - Added Interface BastionHostsCreateOrUpdateOptionalParams + - Added Interface BastionHostsDeleteOptionalParams + - Added Interface BastionHostsGetOptionalParams + - Added Interface BastionHostsListNextOptionalParams + - Added Interface BastionHostsListOptionalParams + - Added Interface BastionHostsUpdateOptionalParams + - Added Interface CheckNameAvailabilityRequest + - Added Interface CheckNameAvailabilityResponse + - Added Interface CostsListNextOptionalParams + - Added Interface CostsListOptionalParams + - Added Interface EncryptionProperties + - Added Interface EnvironmentList + - Added Interface ErrorAdditionalInfo + - Added Interface ErrorDetail + - Added Interface ErrorResponse + - Added Interface GalleryImagesGetOptionalParams + - Added Interface Identity + - Added Interface ImageVersionProperties + - Added Interface KeyVaultProperties + - Added Interface LabCostList + - Added Interface LabSecretList + - Added Interface LabSecretsCreateOrUpdateOptionalParams + - Added Interface LabSecretsDeleteOptionalParams + - Added Interface LabSecretsGetOptionalParams + - Added Interface LabSecretsListNextOptionalParams + - Added Interface LabSecretsListOptionalParams + - Added Interface LabSecretsUpdateOptionalParams + - Added Interface LabsEnsureCurrentUserProfileOptionalParams + - Added Interface LocationData + - Added Interface Operation + - Added Interface OperationDisplay + - Added Interface OperationListResult + - Added Interface OperationStatusResult + - Added Interface Plan + - Added Interface PolicySetList + - Added Interface PolicySetsListNextOptionalParams + - Added Interface PolicySetsListOptionalParams + - Added Interface ResourceModelWithAllowedPropertySet + - Added Interface ServiceRunnersListNextOptionalParams + - Added Interface ServiceRunnersListOptionalParams + - Added Interface SharedGalleriesCreateOrUpdateOptionalParams + - Added Interface SharedGalleriesDeleteOptionalParams + - Added Interface SharedGalleriesGetOptionalParams + - Added Interface SharedGalleriesListNextOptionalParams + - Added Interface SharedGalleriesListOptionalParams + - Added Interface SharedGalleriesUpdateOptionalParams + - Added Interface SharedGalleryList + - Added Interface SharedImageList + - Added Interface SharedImagesCreateOrUpdateOptionalParams + - Added Interface SharedImagesDeleteOptionalParams + - Added Interface SharedImagesGetOptionalParams + - Added Interface SharedImagesListNextOptionalParams + - Added Interface SharedImagesListOptionalParams + - Added Interface SharedImagesUpdateOptionalParams + - Added Interface Sku + - Added Interface SystemData + - Added Interface Tags + - Added Interface VirtualMachineList + - Added Interface VirtualMachinesClearArtifactResultsOptionalParams + - Added Type Alias ActionType + - Added Type Alias AzureEntityResource + - Added Type Alias BastionHost + - Added Type Alias BastionHostFragment + - Added Type Alias BastionHostsCreateOrUpdateResponse + - Added Type Alias BastionHostsGetResponse + - Added Type Alias BastionHostsListNextResponse + - Added Type Alias BastionHostsListResponse + - Added Type Alias BastionHostsUpdateResponse + - Added Type Alias CheckNameAvailabilityReason + - Added Type Alias Cost + - Added Type Alias CostsListNextResponse + - Added Type Alias CostsListResponse + - Added Type Alias CreatedByType + - Added Type Alias EnableState + - Added Type Alias EncryptionStatus + - Added Type Alias EncryptionType + - Added Type Alias Environment + - Added Type Alias EnvironmentFragment + - Added Type Alias FileUploadOption + - Added Type Alias GalleryImagesGetResponse + - Added Type Alias HostCachingOption + - Added Type Alias ImageType + - Added Type Alias LabSecret + - Added Type Alias LabSecretFragment + - Added Type Alias LabSecretsCreateOrUpdateResponse + - Added Type Alias LabSecretsGetResponse + - Added Type Alias LabSecretsListNextResponse + - Added Type Alias LabSecretsListResponse + - Added Type Alias LabSecretsUpdateResponse + - Added Type Alias Origin + - Added Type Alias OsType + - Added Type Alias PolicySet + - Added Type Alias PolicySetsListNextResponse + - Added Type Alias PolicySetsListResponse + - Added Type Alias ProxyResource + - Added Type Alias ResourceModelWithAllowedPropertySetIdentity + - Added Type Alias ResourceModelWithAllowedPropertySetPlan + - Added Type Alias ResourceModelWithAllowedPropertySetSku + - Added Type Alias ServiceRunnersListNextResponse + - Added Type Alias ServiceRunnersListResponse + - Added Type Alias SharedGalleriesCreateOrUpdateResponse + - Added Type Alias SharedGalleriesGetResponse + - Added Type Alias SharedGalleriesListNextResponse + - Added Type Alias SharedGalleriesListResponse + - Added Type Alias SharedGalleriesUpdateResponse + - Added Type Alias SharedGallery + - Added Type Alias SharedGalleryFragment + - Added Type Alias SharedImage + - Added Type Alias SharedImageFragment + - Added Type Alias SharedImagesCreateOrUpdateResponse + - Added Type Alias SharedImagesGetResponse + - Added Type Alias SharedImagesListNextResponse + - Added Type Alias SharedImagesListResponse + - Added Type Alias SharedImagesUpdateResponse + - Added Type Alias SkuTier + - Added Type Alias TrackedResource + - Added Type Alias VirtualMachine + - Added Type Alias VirtualMachineFragment + - Interface CostThresholdProperties has a new optional parameter thresholdValue + - Interface DataDiskProperties has a new optional parameter diskName + - Interface DataDiskProperties has a new optional parameter diskSizeGiB + - Interface DataDiskProperties has a new optional parameter diskType + - Interface LabVirtualMachineCreationParameter has a new optional parameter artifactsApplied + - Interface LabVirtualMachineCreationParameter has a new optional parameter canApplyArtifacts + - Interface LabVirtualMachineCreationParameter has a new optional parameter computeId + - Interface LabVirtualMachineCreationParameter has a new optional parameter createdByUser + - Interface LabVirtualMachineCreationParameter has a new optional parameter createdByUserId + - Interface LabVirtualMachineCreationParameter has a new optional parameter createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate + - Interface LabVirtualMachineCreationParameter has a new optional parameter createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate + - Interface LabVirtualMachineCreationParameter has a new optional parameter createdDatePropertiesCreatedDate + - Interface LabVirtualMachineCreationParameter has a new optional parameter dataDiskIds + - Interface LabVirtualMachineCreationParameter has a new optional parameter dataDisks + - Interface LabVirtualMachineCreationParameter has a new optional parameter deploymentStatus + - Interface LabVirtualMachineCreationParameter has a new optional parameter dnsName + - Interface LabVirtualMachineCreationParameter has a new optional parameter emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient + - Interface LabVirtualMachineCreationParameter has a new optional parameter emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient + - Interface LabVirtualMachineCreationParameter has a new optional parameter fqdn + - Interface LabVirtualMachineCreationParameter has a new optional parameter galleryImageVersionId + - Interface LabVirtualMachineCreationParameter has a new optional parameter idPropertiesApplicableScheduleId + - Interface LabVirtualMachineCreationParameter has a new optional parameter idPropertiesApplicableSchedulePropertiesLabVmsShutdownId + - Interface LabVirtualMachineCreationParameter has a new optional parameter idPropertiesApplicableSchedulePropertiesLabVmsStartupId + - Interface LabVirtualMachineCreationParameter has a new optional parameter inboundNatRules + - Interface LabVirtualMachineCreationParameter has a new optional parameter instanceCount + - Interface LabVirtualMachineCreationParameter has a new optional parameter lastKnownPowerState + - Interface LabVirtualMachineCreationParameter has a new optional parameter locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation + - Interface LabVirtualMachineCreationParameter has a new optional parameter locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation + - Interface LabVirtualMachineCreationParameter has a new optional parameter minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute + - Interface LabVirtualMachineCreationParameter has a new optional parameter minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute + - Interface LabVirtualMachineCreationParameter has a new optional parameter namePropertiesApplicableScheduleName + - Interface LabVirtualMachineCreationParameter has a new optional parameter namePropertiesApplicableSchedulePropertiesLabVmsShutdownName + - Interface LabVirtualMachineCreationParameter has a new optional parameter namePropertiesApplicableSchedulePropertiesLabVmsStartupName + - Interface LabVirtualMachineCreationParameter has a new optional parameter networkInterfaceId + - Interface LabVirtualMachineCreationParameter has a new optional parameter notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale + - Interface LabVirtualMachineCreationParameter has a new optional parameter notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale + - Interface LabVirtualMachineCreationParameter has a new optional parameter offer + - Interface LabVirtualMachineCreationParameter has a new optional parameter osDiskId + - Interface LabVirtualMachineCreationParameter has a new optional parameter osDiskSizeGb + - Interface LabVirtualMachineCreationParameter has a new optional parameter osTypePropertiesComputeVmOsType + - Interface LabVirtualMachineCreationParameter has a new optional parameter osTypePropertiesGalleryImageReferenceOsType + - Interface LabVirtualMachineCreationParameter has a new optional parameter osTypePropertiesOsType + - Interface LabVirtualMachineCreationParameter has a new optional parameter privateIpAddress + - Interface LabVirtualMachineCreationParameter has a new optional parameter provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState + - Interface LabVirtualMachineCreationParameter has a new optional parameter provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState + - Interface LabVirtualMachineCreationParameter has a new optional parameter provisioningStatePropertiesProvisioningState + - Interface LabVirtualMachineCreationParameter has a new optional parameter publicIpAddress + - Interface LabVirtualMachineCreationParameter has a new optional parameter publicIpAddressId + - Interface LabVirtualMachineCreationParameter has a new optional parameter publisher + - Interface LabVirtualMachineCreationParameter has a new optional parameter rdpAuthority + - Interface LabVirtualMachineCreationParameter has a new optional parameter sharedImageId + - Interface LabVirtualMachineCreationParameter has a new optional parameter sharedImageVersion + - Interface LabVirtualMachineCreationParameter has a new optional parameter sku + - Interface LabVirtualMachineCreationParameter has a new optional parameter sshAuthority + - Interface LabVirtualMachineCreationParameter has a new optional parameter statuses + - Interface LabVirtualMachineCreationParameter has a new optional parameter statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus + - Interface LabVirtualMachineCreationParameter has a new optional parameter statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus + - Interface LabVirtualMachineCreationParameter has a new optional parameter statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus + - Interface LabVirtualMachineCreationParameter has a new optional parameter statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus + - Interface LabVirtualMachineCreationParameter has a new optional parameter subnetId + - Interface LabVirtualMachineCreationParameter has a new optional parameter systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData + - Interface LabVirtualMachineCreationParameter has a new optional parameter systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData + - Interface LabVirtualMachineCreationParameter has a new optional parameter systemDataPropertiesApplicableScheduleSystemData + - Interface LabVirtualMachineCreationParameter has a new optional parameter tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags + - Interface LabVirtualMachineCreationParameter has a new optional parameter tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags + - Interface LabVirtualMachineCreationParameter has a new optional parameter targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId + - Interface LabVirtualMachineCreationParameter has a new optional parameter targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId + - Interface LabVirtualMachineCreationParameter has a new optional parameter taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType + - Interface LabVirtualMachineCreationParameter has a new optional parameter taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType + - Interface LabVirtualMachineCreationParameter has a new optional parameter timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes + - Interface LabVirtualMachineCreationParameter has a new optional parameter timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes + - Interface LabVirtualMachineCreationParameter has a new optional parameter timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime + - Interface LabVirtualMachineCreationParameter has a new optional parameter timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime + - Interface LabVirtualMachineCreationParameter has a new optional parameter timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime + - Interface LabVirtualMachineCreationParameter has a new optional parameter timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime + - Interface LabVirtualMachineCreationParameter has a new optional parameter timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId + - Interface LabVirtualMachineCreationParameter has a new optional parameter timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId + - Interface LabVirtualMachineCreationParameter has a new optional parameter totalArtifacts + - Interface LabVirtualMachineCreationParameter has a new optional parameter typePropertiesApplicableSchedulePropertiesLabVmsShutdownType + - Interface LabVirtualMachineCreationParameter has a new optional parameter typePropertiesApplicableSchedulePropertiesLabVmsStartupType + - Interface LabVirtualMachineCreationParameter has a new optional parameter typePropertiesApplicableScheduleType + - Interface LabVirtualMachineCreationParameter has a new optional parameter uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier + - Interface LabVirtualMachineCreationParameter has a new optional parameter uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier + - Interface LabVirtualMachineCreationParameter has a new optional parameter uniqueIdentifierPropertiesUniqueIdentifier + - Interface LabVirtualMachineCreationParameter has a new optional parameter version + - Interface LabVirtualMachineCreationParameter has a new optional parameter virtualMachineCreationSource + - Interface LabVirtualMachineCreationParameter has a new optional parameter virtualNetworkId + - Interface LabVirtualMachineCreationParameter has a new optional parameter vmSize + - Interface LabVirtualMachineCreationParameter has a new optional parameter webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl + - Interface LabVirtualMachineCreationParameter has a new optional parameter webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl + - Interface LabVirtualMachineCreationParameter has a new optional parameter weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays + - Interface LabVirtualMachineCreationParameter has a new optional parameter weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays + - Interface OperationResult has a new optional parameter code + - Interface OperationResult has a new optional parameter message + - Interface ScheduleCreationParameter has a new optional parameter createdDate + - Interface ScheduleCreationParameter has a new optional parameter emailRecipient + - Interface ScheduleCreationParameter has a new optional parameter minute + - Interface ScheduleCreationParameter has a new optional parameter notificationLocale + - Interface ScheduleCreationParameter has a new optional parameter provisioningState + - Interface ScheduleCreationParameter has a new optional parameter statusPropertiesNotificationSettingsStatus + - Interface ScheduleCreationParameter has a new optional parameter statusPropertiesStatus + - Interface ScheduleCreationParameter has a new optional parameter timeInMinutes + - Interface ScheduleCreationParameter has a new optional parameter timePropertiesDailyRecurrenceTime + - Interface ScheduleCreationParameter has a new optional parameter timePropertiesWeeklyRecurrenceTime + - Interface ScheduleCreationParameter has a new optional parameter uniqueIdentifier + - Interface ScheduleCreationParameter has a new optional parameter webhookUrl + - Interface ScheduleCreationParameter has a new optional parameter weekdays + - Interface ServiceRunnersCreateOrUpdateOptionalParams has a new optional parameter resumeFrom + - Interface ServiceRunnersCreateOrUpdateOptionalParams has a new optional parameter updateIntervalInMs + - Interface ServiceRunnersDeleteOptionalParams has a new optional parameter resumeFrom + - Interface ServiceRunnersDeleteOptionalParams has a new optional parameter updateIntervalInMs + - Interface SubnetOverride has a new optional parameter allowedPorts + - Class DevTestLabsClient has a new parameter bastionHosts + - Class DevTestLabsClient has a new parameter labSecrets + - Class DevTestLabsClient has a new parameter sharedGalleries + - Class DevTestLabsClient has a new parameter sharedImages + - Add parameters of TrackedResource to TypeAlias ArtifactSource + - Add parameters of Tags to TypeAlias ArtifactSourceFragment + - Add parameters of TrackedResource to TypeAlias CustomImage + - Add parameters of Tags to TypeAlias CustomImageFragment + - Add parameters of TrackedResource to TypeAlias Disk + - Add parameters of Tags to TypeAlias DiskFragment + - Add parameters of TrackedResource to TypeAlias Formula + - Add parameters of Tags to TypeAlias FormulaFragment + - Add parameters of TrackedResource to TypeAlias Lab + - Add parameters of Tags to TypeAlias LabFragment + - Add parameters of TrackedResource to TypeAlias NotificationChannel + - Add parameters of Tags to TypeAlias NotificationChannelFragment + - Add parameters of TrackedResource to TypeAlias Policy + - Add parameters of Tags to TypeAlias PolicyFragment + - Add parameters of TrackedResource to TypeAlias Schedule + - Add parameters of Tags to TypeAlias ScheduleFragment + - Add parameters of TrackedResource to TypeAlias Secret + - Add parameters of Tags to TypeAlias SecretFragment + - Add parameters of TrackedResource to TypeAlias ServiceFabric + - Add parameters of Tags to TypeAlias ServiceFabricFragment + - Add parameters of TrackedResource to TypeAlias ServiceRunner + - Add parameters of TrackedResource to TypeAlias User + - Add parameters of Tags to TypeAlias UserFragment + - Add parameters of TrackedResource to TypeAlias VirtualNetwork + - Add parameters of Tags to TypeAlias VirtualNetworkFragment + - Type Alias ApplicableSchedule has a new parameter systemData + - Type Alias ApplicableSchedule has a new parameter idPropertiesLabVmsStartupId + - Type Alias ApplicableSchedule has a new parameter namePropertiesLabVmsStartupName + - Type Alias ApplicableSchedule has a new parameter typePropertiesLabVmsStartupType + - Type Alias ApplicableSchedule has a new parameter locationPropertiesLabVmsStartupLocation + - Type Alias ApplicableSchedule has a new parameter systemDataPropertiesLabVmsStartupSystemData + - Type Alias ApplicableSchedule has a new parameter statusPropertiesLabVmsStartupPropertiesStatus + - Type Alias ApplicableSchedule has a new parameter taskTypePropertiesLabVmsStartupPropertiesTaskType + - Type Alias ApplicableSchedule has a new parameter timeZoneIdPropertiesLabVmsStartupPropertiesTimeZoneId + - Type Alias ApplicableSchedule has a new parameter createdDatePropertiesLabVmsStartupPropertiesCreatedDate + - Type Alias ApplicableSchedule has a new parameter targetResourceIdPropertiesLabVmsStartupPropertiesTargetResourceId + - Type Alias ApplicableSchedule has a new parameter provisioningStatePropertiesLabVmsStartupPropertiesProvisioningState + - Type Alias ApplicableSchedule has a new parameter uniqueIdentifierPropertiesLabVmsStartupPropertiesUniqueIdentifier + - Type Alias ApplicableSchedule has a new parameter statusPropertiesLabVmsStartupPropertiesNotificationSettingsStatus + - Type Alias ApplicableSchedule has a new parameter timeInMinutesPropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes + - Type Alias ApplicableSchedule has a new parameter webhookUrlPropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl + - Type Alias ApplicableSchedule has a new parameter emailRecipientPropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient + - Type Alias ApplicableSchedule has a new parameter notificationLocalePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale + - Type Alias ApplicableSchedule has a new parameter minutePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute + - Type Alias ApplicableSchedule has a new parameter timePropertiesLabVmsStartupPropertiesDailyRecurrenceTime + - Type Alias ApplicableSchedule has a new parameter weekdaysPropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays + - Type Alias ApplicableSchedule has a new parameter timePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime + - Type Alias ApplicableSchedule has a new parameter idPropertiesLabVmsShutdownId + - Type Alias ApplicableSchedule has a new parameter namePropertiesLabVmsShutdownName + - Type Alias ApplicableSchedule has a new parameter typePropertiesLabVmsShutdownType + - Type Alias ApplicableSchedule has a new parameter locationPropertiesLabVmsShutdownLocation + - Type Alias ApplicableSchedule has a new parameter systemDataPropertiesLabVmsShutdownSystemData + - Type Alias ApplicableSchedule has a new parameter statusPropertiesLabVmsShutdownPropertiesStatus + - Type Alias ApplicableSchedule has a new parameter taskTypePropertiesLabVmsShutdownPropertiesTaskType + - Type Alias ApplicableSchedule has a new parameter timeZoneIdPropertiesLabVmsShutdownPropertiesTimeZoneId + - Type Alias ApplicableSchedule has a new parameter createdDatePropertiesLabVmsShutdownPropertiesCreatedDate + - Type Alias ApplicableSchedule has a new parameter targetResourceIdPropertiesLabVmsShutdownPropertiesTargetResourceId + - Type Alias ApplicableSchedule has a new parameter provisioningStatePropertiesLabVmsShutdownPropertiesProvisioningState + - Type Alias ApplicableSchedule has a new parameter uniqueIdentifierPropertiesLabVmsShutdownPropertiesUniqueIdentifier + - Type Alias ApplicableSchedule has a new parameter statusPropertiesLabVmsShutdownPropertiesNotificationSettingsStatus + - Type Alias ApplicableSchedule has a new parameter timeInMinutesPropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes + - Type Alias ApplicableSchedule has a new parameter webhookUrlPropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl + - Type Alias ApplicableSchedule has a new parameter emailRecipientPropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient + - Type Alias ApplicableSchedule has a new parameter notificationLocalePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale + - Type Alias ApplicableSchedule has a new parameter minutePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute + - Type Alias ApplicableSchedule has a new parameter timePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime + - Type Alias ApplicableSchedule has a new parameter weekdaysPropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays + - Type Alias ApplicableSchedule has a new parameter timePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime + - Type Alias ArmTemplate has a new parameter systemData + - Type Alias Artifact has a new parameter systemData + - Type Alias ArtifactSource has a new parameter systemData + - Type Alias CustomImage has a new parameter systemData + - Type Alias CustomImage has a new parameter idPropertiesCustomImagePlanId + - Type Alias CustomImage has a new parameter publisher + - Type Alias CustomImage has a new parameter offer + - Type Alias CustomImage has a new parameter imageName + - Type Alias CustomImage has a new parameter sysPrep + - Type Alias CustomImage has a new parameter osType + - Type Alias CustomImage has a new parameter sourceVmId + - Type Alias CustomImage has a new parameter linuxOsState + - Type Alias CustomImage has a new parameter windowsOsState + - Type Alias Disk has a new parameter systemData + - Type Alias Formula has a new parameter systemData + - Type Alias Formula has a new parameter osTypePropertiesOsType + - Type Alias Formula has a new parameter provisioningStatePropertiesProvisioningState + - Type Alias Formula has a new parameter uniqueIdentifierPropertiesUniqueIdentifier + - Type Alias Formula has a new parameter labVmId + - Type Alias Formula has a new parameter namePropertiesFormulaContentName + - Type Alias Formula has a new parameter locationPropertiesFormulaContentLocation + - Type Alias Formula has a new parameter notes + - Type Alias Formula has a new parameter ownerObjectId + - Type Alias Formula has a new parameter ownerUserPrincipalName + - Type Alias Formula has a new parameter createdByUserId + - Type Alias Formula has a new parameter createdByUser + - Type Alias Formula has a new parameter createdDatePropertiesFormulaContentPropertiesCreatedDate + - Type Alias Formula has a new parameter computeId + - Type Alias Formula has a new parameter customImageId + - Type Alias Formula has a new parameter galleryImageVersionId + - Type Alias Formula has a new parameter sharedImageId + - Type Alias Formula has a new parameter sharedImageVersion + - Type Alias Formula has a new parameter osTypePropertiesFormulaContentPropertiesOsType + - Type Alias Formula has a new parameter size + - Type Alias Formula has a new parameter userName + - Type Alias Formula has a new parameter password + - Type Alias Formula has a new parameter sshKey + - Type Alias Formula has a new parameter isAuthenticationWithSshKey + - Type Alias Formula has a new parameter fqdn + - Type Alias Formula has a new parameter labSubnetName + - Type Alias Formula has a new parameter labVirtualNetworkId + - Type Alias Formula has a new parameter disallowPublicIpAddress + - Type Alias Formula has a new parameter artifacts + - Type Alias Formula has a new parameter planId + - Type Alias Formula has a new parameter osDiskSizeGb + - Type Alias Formula has a new parameter expirationDate + - Type Alias Formula has a new parameter allowClaim + - Type Alias Formula has a new parameter storageType + - Type Alias Formula has a new parameter virtualMachineCreationSource + - Type Alias Formula has a new parameter environmentId + - Type Alias Formula has a new parameter dataDiskParameters + - Type Alias Formula has a new parameter scheduleParameters + - Type Alias Formula has a new parameter lastKnownPowerState + - Type Alias Formula has a new parameter canApplyArtifacts + - Type Alias Formula has a new parameter provisioningStatePropertiesFormulaContentPropertiesProvisioningState + - Type Alias Formula has a new parameter uniqueIdentifierPropertiesFormulaContentPropertiesUniqueIdentifier + - Type Alias Formula has a new parameter idPropertiesFormulaContentPropertiesApplicableScheduleId + - Type Alias Formula has a new parameter namePropertiesFormulaContentPropertiesApplicableScheduleName + - Type Alias Formula has a new parameter typePropertiesFormulaContentPropertiesApplicableScheduleType + - Type Alias Formula has a new parameter systemDataPropertiesFormulaContentPropertiesApplicableScheduleSystemData + - Type Alias Formula has a new parameter idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupId + - Type Alias Formula has a new parameter namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupName + - Type Alias Formula has a new parameter typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupType + - Type Alias Formula has a new parameter locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupLocation + - Type Alias Formula has a new parameter systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData + - Type Alias Formula has a new parameter statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus + - Type Alias Formula has a new parameter taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType + - Type Alias Formula has a new parameter timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId + - Type Alias Formula has a new parameter createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate + - Type Alias Formula has a new parameter targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId + - Type Alias Formula has a new parameter provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState + - Type Alias Formula has a new parameter uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier + - Type Alias Formula has a new parameter statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus + - Type Alias Formula has a new parameter timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes + - Type Alias Formula has a new parameter webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl + - Type Alias Formula has a new parameter emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient + - Type Alias Formula has a new parameter notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale + - Type Alias Formula has a new parameter minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute + - Type Alias Formula has a new parameter timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime + - Type Alias Formula has a new parameter weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays + - Type Alias Formula has a new parameter timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime + - Type Alias Formula has a new parameter idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownId + - Type Alias Formula has a new parameter namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownName + - Type Alias Formula has a new parameter typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownType + - Type Alias Formula has a new parameter locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation + - Type Alias Formula has a new parameter systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData + - Type Alias Formula has a new parameter statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus + - Type Alias Formula has a new parameter taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType + - Type Alias Formula has a new parameter timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId + - Type Alias Formula has a new parameter createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate + - Type Alias Formula has a new parameter targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId + - Type Alias Formula has a new parameter provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState + - Type Alias Formula has a new parameter uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier + - Type Alias Formula has a new parameter statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus + - Type Alias Formula has a new parameter timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes + - Type Alias Formula has a new parameter webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl + - Type Alias Formula has a new parameter emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient + - Type Alias Formula has a new parameter notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale + - Type Alias Formula has a new parameter minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute + - Type Alias Formula has a new parameter timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime + - Type Alias Formula has a new parameter weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays + - Type Alias Formula has a new parameter timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime + - Type Alias Formula has a new parameter virtualNetworkId + - Type Alias Formula has a new parameter subnetId + - Type Alias Formula has a new parameter publicIpAddressId + - Type Alias Formula has a new parameter publicIpAddress + - Type Alias Formula has a new parameter privateIpAddress + - Type Alias Formula has a new parameter dnsName + - Type Alias Formula has a new parameter rdpAuthority + - Type Alias Formula has a new parameter sshAuthority + - Type Alias Formula has a new parameter inboundNatRules + - Type Alias Formula has a new parameter statuses + - Type Alias Formula has a new parameter osTypePropertiesFormulaContentPropertiesComputeVmOsType + - Type Alias Formula has a new parameter vmSize + - Type Alias Formula has a new parameter networkInterfaceId + - Type Alias Formula has a new parameter osDiskId + - Type Alias Formula has a new parameter dataDiskIds + - Type Alias Formula has a new parameter dataDisks + - Type Alias Formula has a new parameter offer + - Type Alias Formula has a new parameter publisher + - Type Alias Formula has a new parameter sku + - Type Alias Formula has a new parameter osTypePropertiesFormulaContentPropertiesGalleryImageReferenceOsType + - Type Alias Formula has a new parameter version + - Type Alias Formula has a new parameter deploymentStatus + - Type Alias Formula has a new parameter artifactsApplied + - Type Alias Formula has a new parameter totalArtifacts + - Type Alias Formula has a new parameter instanceCount + - Type Alias GalleryImage has a new parameter systemData + - Type Alias GalleryImage has a new parameter offer + - Type Alias GalleryImage has a new parameter publisher + - Type Alias GalleryImage has a new parameter sku + - Type Alias GalleryImage has a new parameter osType + - Type Alias GalleryImage has a new parameter version + - Type Alias Lab has a new parameter systemData + - Type Alias Lab has a new parameter typeIdentityType + - Type Alias Lab has a new parameter principalId + - Type Alias Lab has a new parameter tenantId + - Type Alias Lab has a new parameter clientSecretUrl + - Type Alias Lab has a new parameter browserConnect + - Type Alias Lab has a new parameter disableAutoUpgradeCseMinorVersion + - Type Alias Lab has a new parameter isolateLabResources + - Type Alias Lab has a new parameter defaultSecretName + - Type Alias Lab has a new parameter provisioningStatePropertiesProvisioningState + - Type Alias Lab has a new parameter uniqueIdentifierPropertiesUniqueIdentifier + - Type Alias Lab has a new parameter diskEncryptionSetId + - Type Alias Lab has a new parameter typePropertiesEncryptionType + - Type Alias Lab has a new parameter enabledPropertiesSupportEnabled + - Type Alias Lab has a new parameter markdownPropertiesSupportMarkdown + - Type Alias Lab has a new parameter title + - Type Alias Lab has a new parameter markdownPropertiesAnnouncementMarkdown + - Type Alias Lab has a new parameter enabledPropertiesAnnouncementEnabled + - Type Alias Lab has a new parameter expirationDate + - Type Alias Lab has a new parameter expired + - Type Alias Lab has a new parameter provisioningStatePropertiesAnnouncementProvisioningState + - Type Alias Lab has a new parameter uniqueIdentifierPropertiesAnnouncementUniqueIdentifier + - Type Alias LabCost has a new parameter systemData + - Type Alias LabCost has a new parameter estimatedLabCost + - Type Alias LabCost has a new parameter status + - Type Alias LabCost has a new parameter target + - Type Alias LabCost has a new parameter costThresholds + - Type Alias LabCost has a new parameter cycleStartDateTime + - Type Alias LabCost has a new parameter cycleEndDateTime + - Type Alias LabCost has a new parameter cycleType + - Type Alias NotificationChannel has a new parameter systemData + - Type Alias Policy has a new parameter systemData + - Type Alias Schedule has a new parameter systemData + - Type Alias Schedule has a new parameter statusPropertiesStatus + - Type Alias Schedule has a new parameter statusPropertiesNotificationSettingsStatus + - Type Alias Schedule has a new parameter timeInMinutes + - Type Alias Schedule has a new parameter webhookUrl + - Type Alias Schedule has a new parameter emailRecipient + - Type Alias Schedule has a new parameter notificationLocale + - Type Alias Schedule has a new parameter minute + - Type Alias Schedule has a new parameter timePropertiesDailyRecurrenceTime + - Type Alias Schedule has a new parameter weekdays + - Type Alias Schedule has a new parameter timePropertiesWeeklyRecurrenceTime + - Type Alias Secret has a new parameter systemData + - Type Alias ServiceFabric has a new parameter systemData + - Type Alias ServiceFabric has a new parameter provisioningStatePropertiesProvisioningState + - Type Alias ServiceFabric has a new parameter uniqueIdentifierPropertiesUniqueIdentifier + - Type Alias ServiceFabric has a new parameter idPropertiesApplicableScheduleId + - Type Alias ServiceFabric has a new parameter namePropertiesApplicableScheduleName + - Type Alias ServiceFabric has a new parameter typePropertiesApplicableScheduleType + - Type Alias ServiceFabric has a new parameter systemDataPropertiesApplicableScheduleSystemData + - Type Alias ServiceFabric has a new parameter idPropertiesApplicableSchedulePropertiesLabVmsStartupId + - Type Alias ServiceFabric has a new parameter namePropertiesApplicableSchedulePropertiesLabVmsStartupName + - Type Alias ServiceFabric has a new parameter typePropertiesApplicableSchedulePropertiesLabVmsStartupType + - Type Alias ServiceFabric has a new parameter locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation + - Type Alias ServiceFabric has a new parameter systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData + - Type Alias ServiceFabric has a new parameter statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus + - Type Alias ServiceFabric has a new parameter taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType + - Type Alias ServiceFabric has a new parameter timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId + - Type Alias ServiceFabric has a new parameter createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate + - Type Alias ServiceFabric has a new parameter targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId + - Type Alias ServiceFabric has a new parameter provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState + - Type Alias ServiceFabric has a new parameter uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier + - Type Alias ServiceFabric has a new parameter statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus + - Type Alias ServiceFabric has a new parameter timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes + - Type Alias ServiceFabric has a new parameter webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl + - Type Alias ServiceFabric has a new parameter emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient + - Type Alias ServiceFabric has a new parameter notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale + - Type Alias ServiceFabric has a new parameter minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute + - Type Alias ServiceFabric has a new parameter timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime + - Type Alias ServiceFabric has a new parameter weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays + - Type Alias ServiceFabric has a new parameter timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime + - Type Alias ServiceFabric has a new parameter idPropertiesApplicableSchedulePropertiesLabVmsShutdownId + - Type Alias ServiceFabric has a new parameter namePropertiesApplicableSchedulePropertiesLabVmsShutdownName + - Type Alias ServiceFabric has a new parameter typePropertiesApplicableSchedulePropertiesLabVmsShutdownType + - Type Alias ServiceFabric has a new parameter locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation + - Type Alias ServiceFabric has a new parameter systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData + - Type Alias ServiceFabric has a new parameter statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus + - Type Alias ServiceFabric has a new parameter taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType + - Type Alias ServiceFabric has a new parameter timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId + - Type Alias ServiceFabric has a new parameter createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate + - Type Alias ServiceFabric has a new parameter targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId + - Type Alias ServiceFabric has a new parameter provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState + - Type Alias ServiceFabric has a new parameter uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier + - Type Alias ServiceFabric has a new parameter statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus + - Type Alias ServiceFabric has a new parameter timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes + - Type Alias ServiceFabric has a new parameter webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl + - Type Alias ServiceFabric has a new parameter emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient + - Type Alias ServiceFabric has a new parameter notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale + - Type Alias ServiceFabric has a new parameter minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute + - Type Alias ServiceFabric has a new parameter timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime + - Type Alias ServiceFabric has a new parameter weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays + - Type Alias ServiceFabric has a new parameter timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime + - Type Alias ServiceRunner has a new parameter systemData + - Type Alias ServiceRunner has a new parameter typeIdentityType + - Type Alias ServiceRunner has a new parameter principalId + - Type Alias ServiceRunner has a new parameter tenantId + - Type Alias ServiceRunner has a new parameter clientSecretUrl + - Type Alias ServiceRunner has a new parameter identityUsageType + - Type Alias ServiceRunner has a new parameter provisioningState + - Type Alias ServiceRunner has a new parameter uniqueIdentifier + - Type Alias User has a new parameter systemData + - Type Alias User has a new parameter keyVaultUri + - Type Alias User has a new parameter keyVaultId + - Type Alias User has a new parameter principalName + - Type Alias User has a new parameter principalId + - Type Alias User has a new parameter tenantId + - Type Alias User has a new parameter objectId + - Type Alias User has a new parameter appId + - Type Alias VirtualNetwork has a new parameter systemData + - Added Enum KnownActionType + - Added Enum KnownCheckNameAvailabilityReason + - Added Enum KnownCreatedByType + - Added Enum KnownEnableState + - Added Enum KnownEncryptionStatus + - Added Enum KnownEncryptionType + - Added Enum KnownFileUploadOption + - Added Enum KnownHostCachingOption + - Added Enum KnownImageType + - Added Enum KnownOrigin + - Added Enum KnownOsType + - Enum KnownHttpStatusCode has a new value AlreadyReported + - Enum KnownHttpStatusCode has a new value EarlyHints + - Enum KnownHttpStatusCode has a new value FailedDependency + - Enum KnownHttpStatusCode has a new value IMUsed + - Enum KnownHttpStatusCode has a new value InsufficientStorage + - Enum KnownHttpStatusCode has a new value Locked + - Enum KnownHttpStatusCode has a new value LoopDetected + - Enum KnownHttpStatusCode has a new value MisdirectedRequest + - Enum KnownHttpStatusCode has a new value MultiStatus + - Enum KnownHttpStatusCode has a new value NetworkAuthenticationRequired + - Enum KnownHttpStatusCode has a new value NotExtended + - Enum KnownHttpStatusCode has a new value PermanentRedirect + - Enum KnownHttpStatusCode has a new value PreconditionRequired + - Enum KnownHttpStatusCode has a new value Processing + - Enum KnownHttpStatusCode has a new value RequestHeaderFieldsTooLarge + - Enum KnownHttpStatusCode has a new value TooManyRequests + - Enum KnownHttpStatusCode has a new value UnavailableForLegalReasons + - Enum KnownHttpStatusCode has a new value UnprocessableEntity + - Enum KnownHttpStatusCode has a new value VariantAlsoNegotiates -### Features Added - -### Breaking Changes - -### Bugs Fixed - -### Other Changes +**Breaking Changes** + - Removed operation ServiceRunners.createOrUpdate + - Removed operation ServiceRunners.delete + - Operation Environments.beginCreateOrUpdate has a new signature + - Operation Environments.beginCreateOrUpdateAndWait has a new signature + - Operation Environments.update has a new signature + - Operation VirtualMachines.beginCreateOrUpdate has a new signature + - Operation VirtualMachines.beginCreateOrUpdateAndWait has a new signature + - Operation VirtualMachines.update has a new signature + - Interface ArmTemplatesGetOptionalParams no longer has parameter expand + - Interface ArmTemplatesListNextOptionalParams no longer has parameter expand + - Interface ArmTemplatesListOptionalParams no longer has parameter expand + - Interface ArtifactsGetOptionalParams no longer has parameter expand + - Interface ArtifactsListNextOptionalParams no longer has parameter expand + - Interface ArtifactsListOptionalParams no longer has parameter expand + - Interface ArtifactSourcesGetOptionalParams no longer has parameter expand + - Interface ArtifactSourcesListNextOptionalParams no longer has parameter expand + - Interface ArtifactSourcesListOptionalParams no longer has parameter expand + - Interface CostThresholdProperties no longer has parameter percentageThreshold + - Interface CustomImagesGetOptionalParams no longer has parameter expand + - Interface CustomImagesListNextOptionalParams no longer has parameter expand + - Interface CustomImagesListOptionalParams no longer has parameter expand + - Interface DataDiskProperties no longer has parameter attachNewDataDiskOptions + - Interface DisksGetOptionalParams no longer has parameter expand + - Interface DisksListNextOptionalParams no longer has parameter expand + - Interface DisksListOptionalParams no longer has parameter expand + - Interface EnvironmentsGetOptionalParams no longer has parameter expand + - Interface EnvironmentsListNextOptionalParams no longer has parameter expand + - Interface EnvironmentsListOptionalParams no longer has parameter expand + - Interface FormulasGetOptionalParams no longer has parameter expand + - Interface FormulasListNextOptionalParams no longer has parameter expand + - Interface FormulasListOptionalParams no longer has parameter expand + - Interface GalleryImagesListNextOptionalParams no longer has parameter expand + - Interface GalleryImagesListOptionalParams no longer has parameter expand + - Interface GlobalSchedulesGetOptionalParams no longer has parameter expand + - Interface GlobalSchedulesListByResourceGroupNextOptionalParams no longer has parameter expand + - Interface GlobalSchedulesListByResourceGroupOptionalParams no longer has parameter expand + - Interface GlobalSchedulesListBySubscriptionNextOptionalParams no longer has parameter expand + - Interface GlobalSchedulesListBySubscriptionOptionalParams no longer has parameter expand + - Interface LabsGetOptionalParams no longer has parameter expand + - Interface LabsListByResourceGroupNextOptionalParams no longer has parameter expand + - Interface LabsListByResourceGroupOptionalParams no longer has parameter expand + - Interface LabsListBySubscriptionNextOptionalParams no longer has parameter expand + - Interface LabsListBySubscriptionOptionalParams no longer has parameter expand + - Interface LabVirtualMachineCreationParameter no longer has parameter bulkCreationParameters + - Interface LabVirtualMachineCreationParameter no longer has parameter createdDate + - Interface LabVirtualMachineCreationParameter no longer has parameter galleryImageReference + - Interface LabVirtualMachineCreationParameter no longer has parameter networkInterface + - Interface NotificationChannelsGetOptionalParams no longer has parameter expand + - Interface NotificationChannelsListNextOptionalParams no longer has parameter expand + - Interface NotificationChannelsListOptionalParams no longer has parameter expand + - Interface OperationResult no longer has parameter error + - Interface PoliciesGetOptionalParams no longer has parameter expand + - Interface PoliciesListNextOptionalParams no longer has parameter expand + - Interface PoliciesListOptionalParams no longer has parameter expand + - Interface Resource no longer has parameter location + - Interface Resource no longer has parameter tags + - Interface ScheduleCreationParameter no longer has parameter dailyRecurrence + - Interface ScheduleCreationParameter no longer has parameter hourlyRecurrence + - Interface ScheduleCreationParameter no longer has parameter notificationSettings + - Interface ScheduleCreationParameter no longer has parameter status + - Interface ScheduleCreationParameter no longer has parameter weeklyRecurrence + - Interface SchedulesGetOptionalParams no longer has parameter expand + - Interface SchedulesListNextOptionalParams no longer has parameter expand + - Interface SchedulesListOptionalParams no longer has parameter expand + - Interface SecretsGetOptionalParams no longer has parameter expand + - Interface SecretsListNextOptionalParams no longer has parameter expand + - Interface SecretsListOptionalParams no longer has parameter expand + - Interface ServiceFabricSchedulesGetOptionalParams no longer has parameter expand + - Interface ServiceFabricSchedulesListNextOptionalParams no longer has parameter expand + - Interface ServiceFabricSchedulesListOptionalParams no longer has parameter expand + - Interface SubnetOverride no longer has parameter sharedPublicIpAddressConfiguration + - Interface UsersGetOptionalParams no longer has parameter expand + - Interface UsersListNextOptionalParams no longer has parameter expand + - Interface UsersListOptionalParams no longer has parameter expand + - Interface VirtualMachineSchedulesGetOptionalParams no longer has parameter expand + - Interface VirtualMachineSchedulesListNextOptionalParams no longer has parameter expand + - Interface VirtualMachineSchedulesListOptionalParams no longer has parameter expand + - Delete parameters of Resource in TypeAlias ArtifactSource + - Delete parameters of UpdateResource in TypeAlias ArtifactSourceFragment + - Delete parameters of Resource in TypeAlias CustomImage + - Delete parameters of UpdateResource in TypeAlias CustomImageFragment + - Delete parameters of Resource in TypeAlias Disk + - Delete parameters of UpdateResource in TypeAlias DiskFragment + - Delete parameters of Resource in TypeAlias Formula + - Delete parameters of UpdateResource in TypeAlias FormulaFragment + - Delete parameters of Resource in TypeAlias Lab + - Delete parameters of UpdateResource in TypeAlias LabFragment + - Delete parameters of Resource in TypeAlias NotificationChannel + - Delete parameters of UpdateResource in TypeAlias NotificationChannelFragment + - Delete parameters of Resource in TypeAlias Policy + - Delete parameters of UpdateResource in TypeAlias PolicyFragment + - Delete parameters of Resource in TypeAlias Schedule + - Delete parameters of UpdateResource in TypeAlias ScheduleFragment + - Delete parameters of Resource in TypeAlias Secret + - Delete parameters of UpdateResource in TypeAlias SecretFragment + - Delete parameters of Resource in TypeAlias ServiceFabric + - Delete parameters of UpdateResource in TypeAlias ServiceFabricFragment + - Delete parameters of Resource in TypeAlias ServiceRunner + - Delete parameters of Resource in TypeAlias User + - Delete parameters of UpdateResource in TypeAlias UserFragment + - Delete parameters of Resource in TypeAlias VirtualNetwork + - Delete parameters of UpdateResource in TypeAlias VirtualNetworkFragment + - Type Alias ApplicableSchedule no longer has parameter labVmsShutdown + - Type Alias ApplicableSchedule no longer has parameter labVmsStartup + - Type Alias CustomImage no longer has parameter vm + - Type Alias CustomImage no longer has parameter vhd + - Type Alias CustomImage no longer has parameter customImagePlan + - Type Alias Formula no longer has parameter osType + - Type Alias Formula no longer has parameter formulaContent + - Type Alias Formula no longer has parameter vm + - Type Alias Formula no longer has parameter provisioningState + - Type Alias Formula no longer has parameter uniqueIdentifier + - Type Alias GalleryImage no longer has parameter imageReference + - Type Alias Lab no longer has parameter announcement + - Type Alias Lab no longer has parameter support + - Type Alias Lab no longer has parameter provisioningState + - Type Alias Lab no longer has parameter uniqueIdentifier + - Type Alias LabCost no longer has parameter targetCost + - Type Alias LabCost no longer has parameter labCostSummary + - Type Alias Schedule no longer has parameter status + - Type Alias Schedule no longer has parameter weeklyRecurrence + - Type Alias Schedule no longer has parameter dailyRecurrence + - Type Alias Schedule no longer has parameter hourlyRecurrence + - Type Alias Schedule no longer has parameter notificationSettings + - Type Alias ServiceFabric no longer has parameter applicableSchedule + - Type Alias ServiceFabric no longer has parameter provisioningState + - Type Alias ServiceFabric no longer has parameter uniqueIdentifier + - Type Alias ServiceRunner no longer has parameter identity + - Type Alias User no longer has parameter identity + - Type Alias User no longer has parameter secretStore + - Removed Enum KnownFileUploadOptions + - Removed Enum KnownHostCachingOptions + + ## 4.0.0 (2021-12-22) The package of @azure/arm-devtestlabs is using our next generation design principles since version 4.0.0, which contains breaking changes. diff --git a/sdk/devtestlabs/arm-devtestlabs/LICENSE b/sdk/devtestlabs/arm-devtestlabs/LICENSE index ccb63b166732..5d1d36e0af80 100644 --- a/sdk/devtestlabs/arm-devtestlabs/LICENSE +++ b/sdk/devtestlabs/arm-devtestlabs/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2021 Microsoft +Copyright (c) 2022 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/devtestlabs/arm-devtestlabs/README.md b/sdk/devtestlabs/arm-devtestlabs/README.md index aaf021c35795..721864c9bf47 100644 --- a/sdk/devtestlabs/arm-devtestlabs/README.md +++ b/sdk/devtestlabs/arm-devtestlabs/README.md @@ -2,7 +2,7 @@ This package contains an isomorphic SDK (runs both in Node.js and in browsers) for Azure DevTestLabs client. -The DevTest Labs Client. +Microsoft DevTest Labs Client [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/devtestlabs/arm-devtestlabs) | [Package (NPM)](https://www.npmjs.com/package/@azure/arm-devtestlabs) | diff --git a/sdk/devtestlabs/arm-devtestlabs/_meta.json b/sdk/devtestlabs/arm-devtestlabs/_meta.json index e552a8df02cb..3387b29134d9 100644 --- a/sdk/devtestlabs/arm-devtestlabs/_meta.json +++ b/sdk/devtestlabs/arm-devtestlabs/_meta.json @@ -1,7 +1,7 @@ { - "commit": "0cd7b3e83d5e7e21222dcc4bdde4565562da0cdf", + "commit": "5cb192ff1f1caa1d294ca24d44a41fcda23779f5", "readme": "specification/devtestlabs/resource-manager/readme.md", - "autorest_command": "autorest --version=3.1.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\mydev\\azure-sdk-for-js ../azure-rest-api-specs/specification/devtestlabs/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20211217.1", + "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/devtestlabs/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20220105.1", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "use": "@autorest/typescript@6.0.0-alpha.16.20211217.1" + "use": "@autorest/typescript@6.0.0-alpha.16.20220105.1" } \ No newline at end of file diff --git a/sdk/devtestlabs/arm-devtestlabs/package.json b/sdk/devtestlabs/arm-devtestlabs/package.json index acd435822951..fc50a8594246 100644 --- a/sdk/devtestlabs/arm-devtestlabs/package.json +++ b/sdk/devtestlabs/arm-devtestlabs/package.json @@ -3,10 +3,8 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for DevTestLabsClient.", - "version": "4.0.1", - "engines": { - "node": ">=12.0.0" - }, + "version": "5.0.0", + "engines": { "node": ">=12.0.0" }, "dependencies": { "@azure/core-lro": "^2.2.0", "@azure/abort-controller": "^1.0.0", @@ -16,13 +14,7 @@ "@azure/core-rest-pipeline": "^1.1.0", "tslib": "^2.2.0" }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], + "keywords": ["node", "azure", "typescript", "browser", "isomorphic"], "license": "MIT", "main": "./dist/index.js", "module": "./dist-esm/src/index.js", @@ -49,9 +41,7 @@ "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" }, - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, + "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", "dist/**/*.js.map", diff --git a/sdk/devtestlabs/arm-devtestlabs/review/arm-devtestlabs.api.md b/sdk/devtestlabs/arm-devtestlabs/review/arm-devtestlabs.api.md index bf4987a6833e..a8712c4d8ced 100644 --- a/sdk/devtestlabs/arm-devtestlabs/review/arm-devtestlabs.api.md +++ b/sdk/devtestlabs/arm-devtestlabs/review/arm-devtestlabs.api.md @@ -11,13 +11,60 @@ import { PollerLike } from '@azure/core-lro'; import { PollOperationState } from '@azure/core-lro'; // @public -export type ApplicableSchedule = Resource & { - labVmsShutdown?: Schedule; - labVmsStartup?: Schedule; -}; +export type ActionType = string; // @public -export type ApplicableScheduleFragment = UpdateResource & {}; +export type ApplicableSchedule = Resource & { + readonly systemData?: SystemData; + readonly idPropertiesLabVmsStartupId?: string; + readonly namePropertiesLabVmsStartupName?: string; + readonly typePropertiesLabVmsStartupType?: string; + tagsPropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + locationPropertiesLabVmsStartupLocation?: string; + readonly systemDataPropertiesLabVmsStartupSystemData?: SystemData; + statusPropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + taskTypePropertiesLabVmsStartupPropertiesTaskType?: string; + timeZoneIdPropertiesLabVmsStartupPropertiesTimeZoneId?: string; + readonly createdDatePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + targetResourceIdPropertiesLabVmsStartupPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesLabVmsStartupPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + statusPropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + timePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + readonly idPropertiesLabVmsShutdownId?: string; + readonly namePropertiesLabVmsShutdownName?: string; + readonly typePropertiesLabVmsShutdownType?: string; + tagsPropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + locationPropertiesLabVmsShutdownLocation?: string; + readonly systemDataPropertiesLabVmsShutdownSystemData?: SystemData; + statusPropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + taskTypePropertiesLabVmsShutdownPropertiesTaskType?: string; + timeZoneIdPropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + readonly createdDatePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + targetResourceIdPropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + statusPropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + timePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; +}; // @public export interface ApplyArtifactsRequest { @@ -26,6 +73,7 @@ export interface ApplyArtifactsRequest { // @public export type ArmTemplate = Resource & { + readonly systemData?: SystemData; readonly displayName?: string; readonly description?: string; readonly publisher?: string; @@ -45,7 +93,7 @@ export interface ArmTemplateInfo { // @public export interface ArmTemplateList { nextLink?: string; - value?: ArmTemplate[]; + readonly value?: ArmTemplate[]; } // @public @@ -62,7 +110,6 @@ export interface ArmTemplates { // @public export interface ArmTemplatesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -70,7 +117,6 @@ export type ArmTemplatesGetResponse = ArmTemplate; // @public export interface ArmTemplatesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -81,7 +127,6 @@ export type ArmTemplatesListNextResponse = ArmTemplateList; // @public export interface ArmTemplatesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -92,6 +137,7 @@ export type ArmTemplatesListResponse = ArmTemplateList; // @public export type Artifact = Resource & { + readonly systemData?: SystemData; readonly title?: string; readonly description?: string; readonly publisher?: string; @@ -102,13 +148,6 @@ export type Artifact = Resource & { readonly createdDate?: Date; }; -// @public -export interface ArtifactDeploymentStatusProperties { - artifactsApplied?: number; - deploymentStatus?: string; - totalArtifacts?: number; -} - // @public export interface ArtifactInstallProperties { artifactId?: string; @@ -123,7 +162,7 @@ export interface ArtifactInstallProperties { // @public export interface ArtifactList { nextLink?: string; - value?: Artifact[]; + readonly value?: Artifact[]; } // @public @@ -148,7 +187,6 @@ export type ArtifactsGenerateArmTemplateResponse = ArmTemplateInfo; // @public export interface ArtifactsGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -156,7 +194,6 @@ export type ArtifactsGetResponse = Artifact; // @public export interface ArtifactsListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -167,7 +204,6 @@ export type ArtifactsListNextResponse = ArtifactList; // @public export interface ArtifactsListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -177,7 +213,8 @@ export interface ArtifactsListOptionalParams extends coreClient.OperationOptions export type ArtifactsListResponse = ArtifactList; // @public -export type ArtifactSource = Resource & { +export type ArtifactSource = TrackedResource & { + readonly systemData?: SystemData; displayName?: string; uri?: string; sourceType?: SourceControlType; @@ -192,12 +229,12 @@ export type ArtifactSource = Resource & { }; // @public -export type ArtifactSourceFragment = UpdateResource & {}; +export type ArtifactSourceFragment = Tags & {}; // @public export interface ArtifactSourceList { nextLink?: string; - value?: ArtifactSource[]; + readonly value?: ArtifactSource[]; } // @public @@ -222,7 +259,6 @@ export interface ArtifactSourcesDeleteOptionalParams extends coreClient.Operatio // @public export interface ArtifactSourcesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -230,7 +266,6 @@ export type ArtifactSourcesGetResponse = ArtifactSource; // @public export interface ArtifactSourcesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -241,7 +276,6 @@ export type ArtifactSourcesListNextResponse = ArtifactSourceList; // @public export interface ArtifactSourcesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -263,28 +297,102 @@ export interface AttachDiskProperties { } // @public -export interface AttachNewDataDiskOptions { - diskName?: string; - diskSizeGiB?: number; - diskType?: StorageType; +export type AzureEntityResource = Resource & { + readonly etag?: string; +}; + +// @public +export type BastionHost = TrackedResource & { + readonly systemData?: SystemData; + readonly externalBastionHostId?: string; + readonly ipAddressId?: string; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; +}; + +// @public +export type BastionHostFragment = Tags & {}; + +// @public +export interface BastionHostList { + nextLink?: string; + readonly value?: BastionHost[]; } // @public -export interface BulkCreationParameters { - instanceCount?: number; +export interface BastionHosts { + beginCreateOrUpdate(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, bastionHost: BastionHost, options?: BastionHostsCreateOrUpdateOptionalParams): Promise, BastionHostsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, bastionHost: BastionHost, options?: BastionHostsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, options?: BastionHostsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, options?: BastionHostsDeleteOptionalParams): Promise; + get(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, options?: BastionHostsGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, virtualNetworkName: string, options?: BastionHostsListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, virtualNetworkName: string, name: string, bastionHost: BastionHostFragment, options?: BastionHostsUpdateOptionalParams): Promise; +} + +// @public +export interface BastionHostsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public -export interface CloudError { - error?: CloudErrorBody; +export type BastionHostsCreateOrUpdateResponse = BastionHost; + +// @public +export interface BastionHostsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public -export interface CloudErrorBody { - code?: string; - details?: CloudErrorBody[]; +export interface BastionHostsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type BastionHostsGetResponse = BastionHost; + +// @public +export interface BastionHostsListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type BastionHostsListNextResponse = BastionHostList; + +// @public +export interface BastionHostsListOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type BastionHostsListResponse = BastionHostList; + +// @public +export interface BastionHostsUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type BastionHostsUpdateResponse = BastionHost; + +// @public +export type CheckNameAvailabilityReason = string; + +// @public +export interface CheckNameAvailabilityRequest { + name?: string; + type?: string; +} + +// @public +export interface CheckNameAvailabilityResponse { message?: string; - target?: string; + nameAvailable?: boolean; + reason?: CheckNameAvailabilityReason; } // @public @@ -303,20 +411,30 @@ export interface ComputeVmInstanceViewStatus { } // @public -export interface ComputeVmProperties { - dataDiskIds?: string[]; - dataDisks?: ComputeDataDisk[]; - networkInterfaceId?: string; - osDiskId?: string; - osType?: string; - statuses?: ComputeVmInstanceViewStatus[]; - vmSize?: string; -} +export type Cost = Resource & { + readonly systemData?: SystemData; + readonly labCostDetails?: LabCostDetailsProperties[]; + readonly resourceCosts?: LabResourceCostProperties[]; + currencyCode?: string; + startDateTime?: Date; + endDateTime?: Date; + createdDate?: Date; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; + estimatedLabCost?: number; + status?: TargetCostStatus; + target?: number; + costThresholds?: CostThresholdProperties[]; + cycleStartDateTime?: Date; + cycleEndDateTime?: Date; + cycleType?: ReportingCycleType; +}; // @public export interface Costs { createOrUpdate(resourceGroupName: string, labName: string, name: string, labCost: LabCost, options?: CostsCreateOrUpdateOptionalParams): Promise; get(resourceGroupName: string, labName: string, name: string, options?: CostsGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: CostsListOptionalParams): PagedAsyncIterableIterator; } // @public @@ -334,13 +452,35 @@ export interface CostsGetOptionalParams extends coreClient.OperationOptions { // @public export type CostsGetResponse = LabCost; +// @public +export interface CostsListNextOptionalParams extends coreClient.OperationOptions { + expand?: string; + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type CostsListNextResponse = LabCostList; + +// @public +export interface CostsListOptionalParams extends coreClient.OperationOptions { + expand?: string; + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type CostsListResponse = LabCostList; + // @public export interface CostThresholdProperties { displayOnChart?: CostThresholdStatus; notificationSent?: string; - percentageThreshold?: PercentageCostThresholdProperties; sendNotificationWhenExceeded?: CostThresholdStatus; thresholdId?: string; + thresholdValue?: number; } // @public @@ -350,54 +490,43 @@ export type CostThresholdStatus = string; export type CostType = string; // @public -export type CustomImage = Resource & { - vm?: CustomImagePropertiesFromVm; - vhd?: CustomImagePropertiesCustom; +export type CreatedByType = string; + +// @public +export type CustomImage = TrackedResource & { + readonly systemData?: SystemData; description?: string; author?: string; readonly creationDate?: Date; managedImageId?: string; managedSnapshotId?: string; dataDiskStorageInfo?: DataDiskStorageTypeInfo[]; - customImagePlan?: CustomImagePropertiesFromPlan; isPlanAuthorized?: boolean; readonly provisioningState?: string; readonly uniqueIdentifier?: string; + idPropertiesCustomImagePlanId?: string; + publisher?: string; + offer?: string; + imageName?: string; + sysPrep?: boolean; + osType?: CustomImageOsType; + sourceVmId?: string; + linuxOsState?: LinuxOsState; + windowsOsState?: WindowsOsState; }; // @public -export type CustomImageFragment = UpdateResource & {}; +export type CustomImageFragment = Tags & {}; // @public export interface CustomImageList { nextLink?: string; - value?: CustomImage[]; + readonly value?: CustomImage[]; } // @public export type CustomImageOsType = string; -// @public -export interface CustomImagePropertiesCustom { - imageName?: string; - osType: CustomImageOsType; - sysPrep?: boolean; -} - -// @public -export interface CustomImagePropertiesFromPlan { - id?: string; - offer?: string; - publisher?: string; -} - -// @public -export interface CustomImagePropertiesFromVm { - linuxOsInfo?: LinuxOsInfo; - sourceVmId?: string; - windowsOsInfo?: WindowsOsInfo; -} - // @public export interface CustomImages { beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, customImage: CustomImage, options?: CustomImagesCreateOrUpdateOptionalParams): Promise, CustomImagesCreateOrUpdateResponse>>; @@ -426,7 +555,6 @@ export interface CustomImagesDeleteOptionalParams extends coreClient.OperationOp // @public export interface CustomImagesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -434,7 +562,6 @@ export type CustomImagesGetResponse = CustomImage; // @public export interface CustomImagesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -445,7 +572,6 @@ export type CustomImagesListNextResponse = CustomImageList; // @public export interface CustomImagesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -463,9 +589,11 @@ export type CustomImagesUpdateResponse = CustomImage; // @public export interface DataDiskProperties { - attachNewDataDiskOptions?: AttachNewDataDiskOptions; + diskName?: string; + diskSizeGiB?: number; + diskType?: StorageType; existingLabDiskId?: string; - hostCaching?: HostCachingOptions; + hostCaching?: HostCachingOption; } // @public @@ -474,11 +602,6 @@ export interface DataDiskStorageTypeInfo { storageType?: StorageType; } -// @public -export interface DayDetails { - time?: string; -} - // @public export interface DetachDataDiskProperties { existingLabDiskId?: string; @@ -503,6 +626,8 @@ export class DevTestLabsClient extends coreClient.ServiceClient { // (undocumented) artifactSources: ArtifactSources; // (undocumented) + bastionHosts: BastionHosts; + // (undocumented) costs: Costs; // (undocumented) customImages: CustomImages; @@ -519,6 +644,8 @@ export class DevTestLabsClient extends coreClient.ServiceClient { // (undocumented) labs: Labs; // (undocumented) + labSecrets: LabSecrets; + // (undocumented) notificationChannels: NotificationChannels; // (undocumented) operations: Operations; @@ -539,6 +666,10 @@ export class DevTestLabsClient extends coreClient.ServiceClient { // (undocumented) serviceRunners: ServiceRunners; // (undocumented) + sharedGalleries: SharedGalleries; + // (undocumented) + sharedImages: SharedImages; + // (undocumented) subscriptionId: string; // (undocumented) users: Users; @@ -558,7 +689,8 @@ export interface DevTestLabsClientOptionalParams extends coreClient.ServiceClien } // @public -export type Disk = Resource & { +export type Disk = TrackedResource & { + readonly systemData?: SystemData; diskType?: StorageType; diskSizeGiB?: number; leasedByLabVmId?: string; @@ -573,12 +705,12 @@ export type Disk = Resource & { }; // @public -export type DiskFragment = UpdateResource & {}; +export type DiskFragment = Tags & {}; // @public export interface DiskList { nextLink?: string; - value?: Disk[]; + readonly value?: Disk[]; } // @public @@ -625,7 +757,6 @@ export interface DisksDetachOptionalParams extends coreClient.OperationOptions { // @public export interface DisksGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -633,7 +764,6 @@ export type DisksGetResponse = Disk; // @public export interface DisksListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -644,7 +774,6 @@ export type DisksListNextResponse = DiskList; // @public export interface DisksListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -661,31 +790,42 @@ export interface DisksUpdateOptionalParams extends coreClient.OperationOptions { export type DisksUpdateResponse = Disk; // @public -export type DtlEnvironment = Resource & { - deploymentProperties?: EnvironmentDeploymentProperties; - armTemplateDisplayName?: string; - readonly resourceGroupId?: string; - readonly createdByUser?: string; - readonly provisioningState?: string; - readonly uniqueIdentifier?: string; -}; +export type EnableState = string; // @public -export type DtlEnvironmentFragment = UpdateResource & {}; +export type EnableStatus = string; // @public -export interface DtlEnvironmentList { - nextLink?: string; - value?: DtlEnvironment[]; +export interface EncryptionProperties { + keyVaultProperties?: KeyVaultProperties; + status?: EncryptionStatus; } // @public -export type EnableStatus = string; +export type EncryptionStatus = string; // @public -export interface EnvironmentDeploymentProperties { +export type EncryptionType = string; + +// @public +export type Environment = TrackedResource & { + readonly systemData?: SystemData; + armTemplateDisplayName?: string; + readonly resourceGroupId?: string; + readonly createdByUser?: string; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; armTemplateId?: string; parameters?: ArmTemplateParameterProperties[]; +}; + +// @public +export type EnvironmentFragment = Tags & {}; + +// @public +export interface EnvironmentList { + nextLink?: string; + readonly value?: Environment[]; } // @public @@ -693,13 +833,13 @@ export type EnvironmentPermission = string; // @public export interface Environments { - beginCreateOrUpdate(resourceGroupName: string, labName: string, userName: string, name: string, dtlEnvironment: DtlEnvironment, options?: EnvironmentsCreateOrUpdateOptionalParams): Promise, EnvironmentsCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, userName: string, name: string, dtlEnvironment: DtlEnvironment, options?: EnvironmentsCreateOrUpdateOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, labName: string, userName: string, name: string, environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams): Promise, EnvironmentsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, userName: string, name: string, environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams): Promise; beginDelete(resourceGroupName: string, labName: string, userName: string, name: string, options?: EnvironmentsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, labName: string, userName: string, name: string, options?: EnvironmentsDeleteOptionalParams): Promise; get(resourceGroupName: string, labName: string, userName: string, name: string, options?: EnvironmentsGetOptionalParams): Promise; - list(resourceGroupName: string, labName: string, userName: string, options?: EnvironmentsListOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, labName: string, userName: string, name: string, dtlEnvironment: DtlEnvironmentFragment, options?: EnvironmentsUpdateOptionalParams): Promise; + list(resourceGroupName: string, labName: string, userName: string, options?: EnvironmentsListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, userName: string, name: string, environment: EnvironmentFragment, options?: EnvironmentsUpdateOptionalParams): Promise; } // @public @@ -709,7 +849,7 @@ export interface EnvironmentsCreateOrUpdateOptionalParams extends coreClient.Ope } // @public -export type EnvironmentsCreateOrUpdateResponse = DtlEnvironment; +export type EnvironmentsCreateOrUpdateResponse = Environment; // @public export interface EnvironmentsDeleteOptionalParams extends coreClient.OperationOptions { @@ -719,40 +859,57 @@ export interface EnvironmentsDeleteOptionalParams extends coreClient.OperationOp // @public export interface EnvironmentsGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public -export type EnvironmentsGetResponse = DtlEnvironment; +export type EnvironmentsGetResponse = Environment; // @public export interface EnvironmentsListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; } // @public -export type EnvironmentsListNextResponse = DtlEnvironmentList; +export type EnvironmentsListNextResponse = EnvironmentList; // @public export interface EnvironmentsListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; } // @public -export type EnvironmentsListResponse = DtlEnvironmentList; +export type EnvironmentsListResponse = EnvironmentList; // @public export interface EnvironmentsUpdateOptionalParams extends coreClient.OperationOptions { } // @public -export type EnvironmentsUpdateResponse = DtlEnvironment; +export type EnvironmentsUpdateResponse = Environment; + +// @public +export interface ErrorAdditionalInfo { + readonly info?: Record; + readonly type?: string; +} + +// @public +export interface ErrorDetail { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: ErrorDetail[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export interface ErrorResponse { + error?: ErrorDetail; +} // @public export interface EvaluatePoliciesProperties { @@ -791,79 +948,188 @@ export interface ExternalSubnet { } // @public -export type FileUploadOptions = string; +export type FileUploadOption = string; // @public -export type Formula = Resource & { +export type Formula = TrackedResource & { + readonly systemData?: SystemData; description?: string; readonly author?: string; - osType?: string; + osTypePropertiesOsType?: string; readonly creationDate?: Date; - formulaContent?: LabVirtualMachineCreationParameter; - vm?: FormulaPropertiesFromVm; - readonly provisioningState?: string; - readonly uniqueIdentifier?: string; -}; - -// @public -export type FormulaFragment = UpdateResource & {}; - -// @public -export interface FormulaList { - nextLink?: string; - value?: Formula[]; -} - -// @public -export interface FormulaPropertiesFromVm { + readonly provisioningStatePropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; labVmId?: string; -} - -// @public -export interface Formulas { - beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, formula: Formula, options?: FormulasCreateOrUpdateOptionalParams): Promise, FormulasCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, formula: Formula, options?: FormulasCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, labName: string, name: string, options?: FormulasDeleteOptionalParams): Promise; - get(resourceGroupName: string, labName: string, name: string, options?: FormulasGetOptionalParams): Promise; - list(resourceGroupName: string, labName: string, options?: FormulasListOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, labName: string, name: string, formula: FormulaFragment, options?: FormulasUpdateOptionalParams): Promise; -} - -// @public -export interface FormulasCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; - updateIntervalInMs?: number; -} - -// @public -export type FormulasCreateOrUpdateResponse = Formula; - -// @public -export interface FormulasDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface FormulasGetOptionalParams extends coreClient.OperationOptions { - expand?: string; -} - -// @public -export type FormulasGetResponse = Formula; - -// @public -export interface FormulasListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; - filter?: string; - orderby?: string; - top?: number; -} - -// @public -export type FormulasListNextResponse = FormulaList; - -// @public + namePropertiesFormulaContentName?: string; + locationPropertiesFormulaContentLocation?: string; + tagsPropertiesFormulaContentTags?: { + [propertyName: string]: string; + }; + notes?: string; + ownerObjectId?: string; + ownerUserPrincipalName?: string; + readonly createdByUserId?: string; + readonly createdByUser?: string; + createdDatePropertiesFormulaContentPropertiesCreatedDate?: Date; + readonly computeId?: string; + customImageId?: string; + galleryImageVersionId?: string; + sharedImageId?: string; + sharedImageVersion?: string; + readonly osTypePropertiesFormulaContentPropertiesOsType?: string; + size?: string; + userName?: string; + password?: string; + sshKey?: string; + isAuthenticationWithSshKey?: boolean; + readonly fqdn?: string; + labSubnetName?: string; + labVirtualNetworkId?: string; + disallowPublicIpAddress?: boolean; + artifacts?: ArtifactInstallProperties[]; + planId?: string; + osDiskSizeGb?: number; + expirationDate?: Date; + allowClaim?: boolean; + storageType?: StorageType; + readonly virtualMachineCreationSource?: VirtualMachineCreationSource; + environmentId?: string; + dataDiskParameters?: DataDiskProperties[]; + scheduleParameters?: ScheduleCreationParameter[]; + readonly lastKnownPowerState?: string; + readonly canApplyArtifacts?: boolean; + readonly provisioningStatePropertiesFormulaContentPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesUniqueIdentifier?: string; + readonly idPropertiesFormulaContentPropertiesApplicableScheduleId?: string; + readonly namePropertiesFormulaContentPropertiesApplicableScheduleName?: string; + readonly typePropertiesFormulaContentPropertiesApplicableScheduleType?: string; + readonly systemDataPropertiesFormulaContentPropertiesApplicableScheduleSystemData?: SystemData; + readonly idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + readonly namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + readonly typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + readonly systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + readonly createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + readonly idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + readonly namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + readonly typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + readonly systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + readonly createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + virtualNetworkId?: string; + subnetId?: string; + publicIpAddressId?: string; + publicIpAddress?: string; + privateIpAddress?: string; + dnsName?: string; + rdpAuthority?: string; + sshAuthority?: string; + inboundNatRules?: InboundNatRule[]; + statuses?: ComputeVmInstanceViewStatus[]; + osTypePropertiesFormulaContentPropertiesComputeVmOsType?: string; + vmSize?: string; + networkInterfaceId?: string; + osDiskId?: string; + dataDiskIds?: string[]; + dataDisks?: ComputeDataDisk[]; + offer?: string; + publisher?: string; + sku?: string; + osTypePropertiesFormulaContentPropertiesGalleryImageReferenceOsType?: string; + version?: string; + deploymentStatus?: string; + artifactsApplied?: number; + totalArtifacts?: number; + instanceCount?: number; +}; + +// @public +export type FormulaFragment = Tags & {}; + +// @public +export interface FormulaList { + nextLink?: string; + readonly value?: Formula[]; +} + +// @public +export interface Formulas { + beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, formula: Formula, options?: FormulasCreateOrUpdateOptionalParams): Promise, FormulasCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, formula: Formula, options?: FormulasCreateOrUpdateOptionalParams): Promise; + delete(resourceGroupName: string, labName: string, name: string, options?: FormulasDeleteOptionalParams): Promise; + get(resourceGroupName: string, labName: string, name: string, options?: FormulasGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: FormulasListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, name: string, formula: FormulaFragment, options?: FormulasUpdateOptionalParams): Promise; +} + +// @public +export interface FormulasCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type FormulasCreateOrUpdateResponse = Formula; + +// @public +export interface FormulasDeleteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface FormulasGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FormulasGetResponse = Formula; + +// @public +export interface FormulasListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type FormulasListNextResponse = FormulaList; + +// @public export interface FormulasListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -881,39 +1147,42 @@ export type FormulasUpdateResponse = Formula; // @public export type GalleryImage = Resource & { + readonly systemData?: SystemData; author?: string; readonly createdDate?: Date; description?: string; - imageReference?: GalleryImageReference; icon?: string; enabled?: boolean; planId?: string; isPlanAuthorized?: boolean; + offer?: string; + publisher?: string; + sku?: string; + osType?: string; + version?: string; }; // @public export interface GalleryImageList { nextLink?: string; - value?: GalleryImage[]; + readonly value?: GalleryImage[]; } // @public -export interface GalleryImageReference { - offer?: string; - osType?: string; - publisher?: string; - sku?: string; - version?: string; +export interface GalleryImages { + get(resourceGroupName: string, labName: string, name: string, options?: GalleryImagesGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: GalleryImagesListOptionalParams): PagedAsyncIterableIterator; } // @public -export interface GalleryImages { - list(resourceGroupName: string, labName: string, options?: GalleryImagesListOptionalParams): PagedAsyncIterableIterator; +export interface GalleryImagesGetOptionalParams extends coreClient.OperationOptions { } +// @public +export type GalleryImagesGetResponse = GalleryImage; + // @public export interface GalleryImagesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -924,7 +1193,6 @@ export type GalleryImagesListNextResponse = GalleryImageList; // @public export interface GalleryImagesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -935,7 +1203,7 @@ export type GalleryImagesListResponse = GalleryImageList; // @public export interface GenerateArmTemplateRequest { - fileUploadOptions?: FileUploadOptions; + fileUploadOptions?: FileUploadOption; location?: string; parameters?: ParameterInfo[]; virtualMachineName?: string; @@ -984,7 +1252,6 @@ export interface GlobalSchedulesExecuteOptionalParams extends coreClient.Operati // @public export interface GlobalSchedulesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -992,7 +1259,6 @@ export type GlobalSchedulesGetResponse = Schedule; // @public export interface GlobalSchedulesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1003,7 +1269,6 @@ export type GlobalSchedulesListByResourceGroupNextResponse = ScheduleList; // @public export interface GlobalSchedulesListByResourceGroupOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1014,7 +1279,6 @@ export type GlobalSchedulesListByResourceGroupResponse = ScheduleList; // @public export interface GlobalSchedulesListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1025,7 +1289,6 @@ export type GlobalSchedulesListBySubscriptionNextResponse = ScheduleList; // @public export interface GlobalSchedulesListBySubscriptionOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1048,22 +1311,24 @@ export interface GlobalSchedulesUpdateOptionalParams extends coreClient.Operatio export type GlobalSchedulesUpdateResponse = Schedule; // @public -export type HostCachingOptions = string; +export type HostCachingOption = string; // @public -export interface HourDetails { - minute?: number; +export type HttpStatusCode = string; + +// @public +export interface Identity { + readonly principalId?: string; + readonly tenantId?: string; + type?: "SystemAssigned"; } // @public -export type HttpStatusCode = string; +export type ImageType = string; // @public -export interface IdentityProperties { - clientSecretUrl?: string; - principalId?: string; - tenantId?: string; - type?: ManagedIdentityType; +export interface ImageVersionProperties { + name?: string; } // @public @@ -1079,6 +1344,26 @@ export interface InboundNatRule { transportProtocol?: TransportProtocol; } +// @public (undocumented) +export interface KeyVaultProperties { + identity?: string; + keyIdentifier?: string; +} + +// @public +export enum KnownActionType { + // (undocumented) + Internal = "Internal" +} + +// @public +export enum KnownCheckNameAvailabilityReason { + // (undocumented) + AlreadyExists = "AlreadyExists", + // (undocumented) + Invalid = "Invalid" +} + // @public export enum KnownCostThresholdStatus { // (undocumented) @@ -1097,6 +1382,18 @@ export enum KnownCostType { Unavailable = "Unavailable" } +// @public +export enum KnownCreatedByType { + // (undocumented) + Application = "Application", + // (undocumented) + Key = "Key", + // (undocumented) + ManagedIdentity = "ManagedIdentity", + // (undocumented) + User = "User" +} + // @public export enum KnownCustomImageOsType { // (undocumented) @@ -1107,6 +1404,14 @@ export enum KnownCustomImageOsType { Windows = "Windows" } +// @public +export enum KnownEnableState { + // (undocumented) + Disabled = "Disabled", + // (undocumented) + Enabled = "Enabled" +} + // @public export enum KnownEnableStatus { // (undocumented) @@ -1115,6 +1420,22 @@ export enum KnownEnableStatus { Enabled = "Enabled" } +// @public +export enum KnownEncryptionStatus { + // (undocumented) + Disabled = "disabled", + // (undocumented) + Enabled = "enabled" +} + +// @public +export enum KnownEncryptionType { + // (undocumented) + EncryptionAtRestWithCustomerKey = "EncryptionAtRestWithCustomerKey", + // (undocumented) + EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey" +} + // @public export enum KnownEnvironmentPermission { // (undocumented) @@ -1124,7 +1445,7 @@ export enum KnownEnvironmentPermission { } // @public -export enum KnownFileUploadOptions { +export enum KnownFileUploadOption { // (undocumented) None = "None", // (undocumented) @@ -1132,7 +1453,7 @@ export enum KnownFileUploadOptions { } // @public -export enum KnownHostCachingOptions { +export enum KnownHostCachingOption { // (undocumented) None = "None", // (undocumented) @@ -1146,6 +1467,8 @@ export enum KnownHttpStatusCode { // (undocumented) Accepted = "Accepted", // (undocumented) + AlreadyReported = "AlreadyReported", + // (undocumented) Ambiguous = "Ambiguous", // (undocumented) BadGateway = "BadGateway", @@ -1158,8 +1481,12 @@ export enum KnownHttpStatusCode { // (undocumented) Created = "Created", // (undocumented) + EarlyHints = "EarlyHints", + // (undocumented) ExpectationFailed = "ExpectationFailed", // (undocumented) + FailedDependency = "FailedDependency", + // (undocumented) Forbidden = "Forbidden", // (undocumented) Found = "Found", @@ -1170,24 +1497,40 @@ export enum KnownHttpStatusCode { // (undocumented) HttpVersionNotSupported = "HttpVersionNotSupported", // (undocumented) + IMUsed = "IMUsed", + // (undocumented) + InsufficientStorage = "InsufficientStorage", + // (undocumented) InternalServerError = "InternalServerError", // (undocumented) LengthRequired = "LengthRequired", // (undocumented) + Locked = "Locked", + // (undocumented) + LoopDetected = "LoopDetected", + // (undocumented) MethodNotAllowed = "MethodNotAllowed", // (undocumented) + MisdirectedRequest = "MisdirectedRequest", + // (undocumented) Moved = "Moved", // (undocumented) MovedPermanently = "MovedPermanently", // (undocumented) MultipleChoices = "MultipleChoices", // (undocumented) + MultiStatus = "MultiStatus", + // (undocumented) + NetworkAuthenticationRequired = "NetworkAuthenticationRequired", + // (undocumented) NoContent = "NoContent", // (undocumented) NonAuthoritativeInformation = "NonAuthoritativeInformation", // (undocumented) NotAcceptable = "NotAcceptable", // (undocumented) + NotExtended = "NotExtended", + // (undocumented) NotFound = "NotFound", // (undocumented) NotImplemented = "NotImplemented", @@ -1200,8 +1543,14 @@ export enum KnownHttpStatusCode { // (undocumented) PaymentRequired = "PaymentRequired", // (undocumented) + PermanentRedirect = "PermanentRedirect", + // (undocumented) PreconditionFailed = "PreconditionFailed", // (undocumented) + PreconditionRequired = "PreconditionRequired", + // (undocumented) + Processing = "Processing", + // (undocumented) ProxyAuthenticationRequired = "ProxyAuthenticationRequired", // (undocumented) Redirect = "Redirect", @@ -1214,6 +1563,8 @@ export enum KnownHttpStatusCode { // (undocumented) RequestEntityTooLarge = "RequestEntityTooLarge", // (undocumented) + RequestHeaderFieldsTooLarge = "RequestHeaderFieldsTooLarge", + // (undocumented) RequestTimeout = "RequestTimeout", // (undocumented) RequestUriTooLong = "RequestUriTooLong", @@ -1228,15 +1579,31 @@ export enum KnownHttpStatusCode { // (undocumented) TemporaryRedirect = "TemporaryRedirect", // (undocumented) + TooManyRequests = "TooManyRequests", + // (undocumented) Unauthorized = "Unauthorized", // (undocumented) + UnavailableForLegalReasons = "UnavailableForLegalReasons", + // (undocumented) + UnprocessableEntity = "UnprocessableEntity", + // (undocumented) UnsupportedMediaType = "UnsupportedMediaType", // (undocumented) Unused = "Unused", // (undocumented) UpgradeRequired = "UpgradeRequired", // (undocumented) - UseProxy = "UseProxy" + UseProxy = "UseProxy", + // (undocumented) + VariantAlsoNegotiates = "VariantAlsoNegotiates" +} + +// @public +export enum KnownImageType { + // (undocumented) + Generalized = "Generalized", + // (undocumented) + Specialized = "Specialized" } // @public @@ -1269,6 +1636,24 @@ export enum KnownNotificationChannelEventType { Cost = "Cost" } +// @public +export enum KnownOrigin { + // (undocumented) + System = "system", + // (undocumented) + User = "user", + // (undocumented) + UserSystem = "user,system" +} + +// @public +export enum KnownOsType { + // (undocumented) + Linux = "Linux", + // (undocumented) + Windows = "Windows" +} + // @public export enum KnownPolicyEvaluatorType { // (undocumented) @@ -1392,10 +1777,18 @@ export enum KnownWindowsOsState { } // @public -export type Lab = Resource & { +export type Lab = TrackedResource & { + readonly systemData?: SystemData; + typeIdentityType?: ManagedIdentityType; + principalId?: string; + tenantId?: string; + clientSecretUrl?: string; + userAssignedIdentities?: { + [propertyName: string]: Record; + }; readonly defaultStorageAccount?: string; readonly defaultPremiumStorageAccount?: string; - readonly artifactsStorageAccount?: string; + artifactsStorageAccount?: string; readonly premiumDataDiskStorageAccount?: string; readonly vaultName?: string; labStorageType?: StorageType; @@ -1404,34 +1797,38 @@ export type Lab = Resource & { readonly createdDate?: Date; premiumDataDisks?: PremiumDataDisk; environmentPermission?: EnvironmentPermission; - announcement?: LabAnnouncementProperties; - support?: LabSupportProperties; - readonly vmCreationResourceGroup?: string; + vmCreationResourceGroup?: string; readonly publicIpId?: string; readonly loadBalancerId?: string; readonly networkSecurityGroupId?: string; extendedProperties?: { [propertyName: string]: string; }; - readonly provisioningState?: string; - readonly uniqueIdentifier?: string; -}; - -// @public -export interface LabAnnouncementProperties { - enabled?: EnableStatus; + browserConnect?: EnableStatus; + disableAutoUpgradeCseMinorVersion?: boolean; + managementIdentities?: { + [propertyName: string]: Record; + }; + isolateLabResources?: EnableStatus; + defaultSecretName?: string; + readonly provisioningStatePropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + diskEncryptionSetId?: string; + typePropertiesEncryptionType?: EncryptionType; + enabledPropertiesSupportEnabled?: EnableStatus; + markdownPropertiesSupportMarkdown?: string; + title?: string; + markdownPropertiesAnnouncementMarkdown?: string; + enabledPropertiesAnnouncementEnabled?: EnableStatus; expirationDate?: Date; expired?: boolean; - markdown?: string; - readonly provisioningState?: string; - title?: string; - readonly uniqueIdentifier?: string; -} + readonly provisioningStatePropertiesAnnouncementProvisioningState?: string; + readonly uniqueIdentifierPropertiesAnnouncementUniqueIdentifier?: string; +}; // @public export type LabCost = Resource & { - targetCost?: TargetCostProperties; - readonly labCostSummary?: LabCostSummaryProperties; + readonly systemData?: SystemData; readonly labCostDetails?: LabCostDetailsProperties[]; readonly resourceCosts?: LabResourceCostProperties[]; currencyCode?: string; @@ -1440,6 +1837,13 @@ export type LabCost = Resource & { createdDate?: Date; readonly provisioningState?: string; readonly uniqueIdentifier?: string; + estimatedLabCost?: number; + status?: TargetCostStatus; + target?: number; + costThresholds?: CostThresholdProperties[]; + cycleStartDateTime?: Date; + cycleEndDateTime?: Date; + cycleType?: ReportingCycleType; }; // @public @@ -1450,17 +1854,18 @@ export interface LabCostDetailsProperties { } // @public -export interface LabCostSummaryProperties { - estimatedLabCost?: number; +export interface LabCostList { + nextLink?: string; + readonly value?: LabCost[]; } // @public -export type LabFragment = UpdateResource & {}; +export type LabFragment = Tags & {}; // @public export interface LabList { nextLink?: string; - value?: Lab[]; + readonly value?: Lab[]; } // @public @@ -1490,11 +1895,12 @@ export interface Labs { beginExportResourceUsageAndWait(resourceGroupName: string, name: string, exportResourceUsageParameters: ExportResourceUsageParameters, options?: LabsExportResourceUsageOptionalParams): Promise; beginImportVirtualMachine(resourceGroupName: string, name: string, importLabVirtualMachineRequest: ImportLabVirtualMachineRequest, options?: LabsImportVirtualMachineOptionalParams): Promise, void>>; beginImportVirtualMachineAndWait(resourceGroupName: string, name: string, importLabVirtualMachineRequest: ImportLabVirtualMachineRequest, options?: LabsImportVirtualMachineOptionalParams): Promise; + ensureCurrentUserProfile(resourceGroupName: string, name: string, options?: LabsEnsureCurrentUserProfileOptionalParams): Promise; generateUploadUri(resourceGroupName: string, name: string, generateUploadUriParameter: GenerateUploadUriParameter, options?: LabsGenerateUploadUriOptionalParams): Promise; get(resourceGroupName: string, name: string, options?: LabsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: LabsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; listBySubscription(options?: LabsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; - listVhds(resourceGroupName: string, name: string, options?: LabsListVhdsOptionalParams): PagedAsyncIterableIterator; + listVhds(resourceGroupName: string, name: string, options?: LabsListVhdsOptionalParams): Promise; update(resourceGroupName: string, name: string, lab: LabFragment, options?: LabsUpdateOptionalParams): Promise; } @@ -1525,6 +1931,91 @@ export interface LabsDeleteOptionalParams extends coreClient.OperationOptions { updateIntervalInMs?: number; } +// @public +export type LabSecret = TrackedResource & { + readonly systemData?: SystemData; + value?: string; + readonly keyVaultEntry?: string; + enabledForArtifacts?: boolean; + enabledForVmCreation?: boolean; + enabledForArmEnvironments?: boolean; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; +}; + +// @public +export type LabSecretFragment = Tags & {}; + +// @public +export interface LabSecretList { + nextLink?: string; + readonly value?: LabSecret[]; +} + +// @public +export interface LabSecrets { + beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, labSecret: LabSecret, options?: LabSecretsCreateOrUpdateOptionalParams): Promise, LabSecretsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, labSecret: LabSecret, options?: LabSecretsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, labName: string, name: string, options?: LabSecretsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, labName: string, name: string, options?: LabSecretsDeleteOptionalParams): Promise; + get(resourceGroupName: string, labName: string, name: string, options?: LabSecretsGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: LabSecretsListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, name: string, secret: SecretFragment, options?: LabSecretsUpdateOptionalParams): Promise; +} + +// @public +export interface LabSecretsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type LabSecretsCreateOrUpdateResponse = LabSecret; + +// @public +export interface LabSecretsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface LabSecretsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type LabSecretsGetResponse = LabSecret; + +// @public +export interface LabSecretsListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type LabSecretsListNextResponse = LabSecretList; + +// @public +export interface LabSecretsListOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type LabSecretsListResponse = LabSecretList; + +// @public +export interface LabSecretsUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type LabSecretsUpdateResponse = LabSecret; + +// @public +export interface LabsEnsureCurrentUserProfileOptionalParams extends coreClient.OperationOptions { +} + // @public export interface LabsExportResourceUsageOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1540,7 +2031,6 @@ export type LabsGenerateUploadUriResponse = GenerateUploadUriResponse; // @public export interface LabsGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -1554,7 +2044,6 @@ export interface LabsImportVirtualMachineOptionalParams extends coreClient.Opera // @public export interface LabsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1565,7 +2054,6 @@ export type LabsListByResourceGroupNextResponse = LabList; // @public export interface LabsListByResourceGroupOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1576,7 +2064,6 @@ export type LabsListByResourceGroupResponse = LabList; // @public export interface LabsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1587,7 +2074,6 @@ export type LabsListBySubscriptionNextResponse = LabList; // @public export interface LabsListBySubscriptionOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1596,13 +2082,6 @@ export interface LabsListBySubscriptionOptionalParams extends coreClient.Operati // @public export type LabsListBySubscriptionResponse = LabList; -// @public -export interface LabsListVhdsNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type LabsListVhdsNextResponse = LabVhdList; - // @public export interface LabsListVhdsOptionalParams extends coreClient.OperationOptions { } @@ -1617,12 +2096,6 @@ export interface LabsUpdateOptionalParams extends coreClient.OperationOptions { // @public export type LabsUpdateResponse = Lab; -// @public -export interface LabSupportProperties { - enabled?: EnableStatus; - markdown?: string; -} - // @public export interface LabVhd { id?: string; @@ -1631,116 +2104,147 @@ export interface LabVhd { // @public export interface LabVhdList { nextLink?: string; - value?: LabVhd[]; + readonly value?: LabVhd[]; } -// @public -export type LabVirtualMachine = Resource & { - notes?: string; - ownerObjectId?: string; - ownerUserPrincipalName?: string; - readonly createdByUserId?: string; - readonly createdByUser?: string; - createdDate?: Date; - readonly computeId?: string; - customImageId?: string; - readonly osType?: string; - size?: string; - userName?: string; - password?: string; - sshKey?: string; - isAuthenticationWithSshKey?: boolean; - readonly fqdn?: string; - labSubnetName?: string; - labVirtualNetworkId?: string; - disallowPublicIpAddress?: boolean; - artifacts?: ArtifactInstallProperties[]; - readonly artifactDeploymentStatus?: ArtifactDeploymentStatusProperties; - galleryImageReference?: GalleryImageReference; - planId?: string; - readonly computeVm?: ComputeVmProperties; - networkInterface?: NetworkInterfaceProperties; - readonly applicableSchedule?: ApplicableSchedule; - expirationDate?: Date; - allowClaim?: boolean; - storageType?: string; - readonly virtualMachineCreationSource?: VirtualMachineCreationSource; - environmentId?: string; - dataDiskParameters?: DataDiskProperties[]; - scheduleParameters?: ScheduleCreationParameter[]; - readonly lastKnownPowerState?: string; - readonly provisioningState?: string; - readonly uniqueIdentifier?: string; -}; - // @public export interface LabVirtualMachineCreationParameter { allowClaim?: boolean; artifacts?: ArtifactInstallProperties[]; - bulkCreationParameters?: BulkCreationParameters; - createdDate?: Date; + artifactsApplied?: number; + readonly canApplyArtifacts?: boolean; + readonly computeId?: string; + readonly createdByUser?: string; + readonly createdByUserId?: string; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + createdDatePropertiesCreatedDate?: Date; customImageId?: string; + dataDiskIds?: string[]; dataDiskParameters?: DataDiskProperties[]; + dataDisks?: ComputeDataDisk[]; + deploymentStatus?: string; disallowPublicIpAddress?: boolean; + dnsName?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; environmentId?: string; expirationDate?: Date; - galleryImageReference?: GalleryImageReference; + readonly fqdn?: string; + galleryImageVersionId?: string; + readonly idPropertiesApplicableScheduleId?: string; + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + inboundNatRules?: InboundNatRule[]; + instanceCount?: number; isAuthenticationWithSshKey?: boolean; labSubnetName?: string; labVirtualNetworkId?: string; + readonly lastKnownPowerState?: string; location?: string; + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; name?: string; - networkInterface?: NetworkInterfaceProperties; + readonly namePropertiesApplicableScheduleName?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + networkInterfaceId?: string; notes?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + offer?: string; + osDiskId?: string; + osDiskSizeGb?: number; + osTypePropertiesComputeVmOsType?: string; + osTypePropertiesGalleryImageReferenceOsType?: string; + readonly osTypePropertiesOsType?: string; ownerObjectId?: string; ownerUserPrincipalName?: string; password?: string; planId?: string; + privateIpAddress?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + readonly provisioningStatePropertiesProvisioningState?: string; + publicIpAddress?: string; + publicIpAddressId?: string; + publisher?: string; + rdpAuthority?: string; scheduleParameters?: ScheduleCreationParameter[]; + sharedImageId?: string; + sharedImageVersion?: string; size?: string; + sku?: string; + sshAuthority?: string; sshKey?: string; - storageType?: string; + statuses?: ComputeVmInstanceViewStatus[]; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + storageType?: StorageType; + subnetId?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; tags?: { [propertyName: string]: string; }; + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + totalArtifacts?: number; + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + readonly typePropertiesApplicableScheduleType?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; userName?: string; + version?: string; + readonly virtualMachineCreationSource?: VirtualMachineCreationSource; + virtualNetworkId?: string; + vmSize?: string; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; } // @public -export type LabVirtualMachineFragment = UpdateResource & {}; - -// @public -export interface LabVirtualMachineList { - nextLink?: string; - value?: LabVirtualMachine[]; -} +export type LinuxOsState = string; // @public -export interface LinuxOsInfo { - linuxOsState?: LinuxOsState; +export interface LocationData { + city?: string; + countryOrRegion?: string; + district?: string; + name: string; } -// @public -export type LinuxOsState = string; - // @public export type ManagedIdentityType = string; // @public -export interface NetworkInterfaceProperties { - dnsName?: string; - privateIpAddress?: string; - publicIpAddress?: string; - publicIpAddressId?: string; - rdpAuthority?: string; - sharedPublicIpAddressConfiguration?: SharedPublicIpAddressConfiguration; - sshAuthority?: string; - subnetId?: string; - virtualNetworkId?: string; -} - -// @public -export type NotificationChannel = Resource & { +export type NotificationChannel = TrackedResource & { + readonly systemData?: SystemData; webHookUrl?: string; emailRecipient?: string; notificationLocale?: string; @@ -1755,12 +2259,12 @@ export type NotificationChannel = Resource & { export type NotificationChannelEventType = string; // @public -export type NotificationChannelFragment = UpdateResource & {}; +export type NotificationChannelFragment = Tags & {}; // @public export interface NotificationChannelList { nextLink?: string; - value?: NotificationChannel[]; + readonly value?: NotificationChannel[]; } // @public @@ -1786,7 +2290,6 @@ export interface NotificationChannelsDeleteOptionalParams extends coreClient.Ope // @public export interface NotificationChannelsGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -1794,7 +2297,6 @@ export type NotificationChannelsGetResponse = NotificationChannel; // @public export interface NotificationChannelsListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1805,7 +2307,6 @@ export type NotificationChannelsListNextResponse = NotificationChannelList; // @public export interface NotificationChannelsListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1825,15 +2326,6 @@ export interface NotificationChannelsUpdateOptionalParams extends coreClient.Ope // @public export type NotificationChannelsUpdateResponse = NotificationChannel; -// @public -export interface NotificationSettings { - emailRecipient?: string; - notificationLocale?: string; - status?: EnableStatus; - timeInMinutes?: number; - webhookUrl?: string; -} - // @public export interface NotifyParameters { eventName?: NotificationChannelEventType; @@ -1841,35 +2333,39 @@ export interface NotifyParameters { } // @public -export interface OperationError { - code?: string; - message?: string; +export interface Operation { + readonly actionType?: ActionType; + display?: OperationDisplay; + readonly isDataAction?: boolean; + readonly name?: string; + readonly origin?: Origin; } // @public -export interface OperationMetadata { - display?: OperationMetadataDisplay; - name?: string; +export interface OperationDisplay { + readonly description?: string; + readonly operation?: string; + readonly provider?: string; + readonly resource?: string; } // @public -export interface OperationMetadataDisplay { - description?: string; - operation?: string; - provider?: string; - resource?: string; +export interface OperationListResult { + readonly nextLink?: string; + readonly value?: Operation[]; } // @public export interface OperationResult { - error?: OperationError; + code?: string; + message?: string; status?: string; statusCode?: HttpStatusCode; } // @public export interface Operations { - get(locationName: string, name: string, options?: OperationsGetOptionalParams): Promise; + get(location: string, name: string, options?: OperationsGetOptionalParams): Promise; } // @public @@ -1879,6 +2375,24 @@ export interface OperationsGetOptionalParams extends coreClient.OperationOptions // @public export type OperationsGetResponse = OperationResult; +// @public +export interface OperationStatusResult { + endTime?: Date; + error?: ErrorDetail; + id?: string; + name?: string; + operations?: OperationStatusResult[]; + percentComplete?: number; + startTime?: Date; + status: string; +} + +// @public +export type Origin = string; + +// @public +export type OsType = string; + // @public export interface ParameterInfo { name?: string; @@ -1892,8 +2406,12 @@ export interface ParametersValueFileInfo { } // @public -export interface PercentageCostThresholdProperties { - thresholdValue?: number; +export interface Plan { + name: string; + product: string; + promotionCode?: string; + publisher: string; + version?: string; } // @public @@ -1918,7 +2436,6 @@ export interface PoliciesDeleteOptionalParams extends coreClient.OperationOption // @public export interface PoliciesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -1926,7 +2443,6 @@ export type PoliciesGetResponse = Policy; // @public export interface PoliciesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1937,7 +2453,6 @@ export type PoliciesListNextResponse = PolicyList; // @public export interface PoliciesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -1954,7 +2469,8 @@ export interface PoliciesUpdateOptionalParams extends coreClient.OperationOption export type PoliciesUpdateResponse = Policy; // @public -export type Policy = Resource & { +export type Policy = TrackedResource & { + readonly systemData?: SystemData; description?: string; status?: PolicyStatus; factName?: PolicyFactName; @@ -1973,12 +2489,25 @@ export type PolicyEvaluatorType = string; export type PolicyFactName = string; // @public -export type PolicyFragment = UpdateResource & {}; +export type PolicyFragment = Tags & {}; // @public export interface PolicyList { nextLink?: string; - value?: Policy[]; + readonly value?: Policy[]; +} + +// @public +export type PolicySet = Resource & { + readonly systemData?: SystemData; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; +}; + +// @public +export interface PolicySetList { + nextLink?: string; + readonly value?: PolicySet[]; } // @public @@ -1990,6 +2519,7 @@ export interface PolicySetResult { // @public export interface PolicySets { evaluatePolicies(resourceGroupName: string, labName: string, name: string, evaluatePoliciesRequest: EvaluatePoliciesRequest, options?: PolicySetsEvaluatePoliciesOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: PolicySetsListOptionalParams): PagedAsyncIterableIterator; } // @public @@ -1999,6 +2529,26 @@ export interface PolicySetsEvaluatePoliciesOptionalParams extends coreClient.Ope // @public export type PolicySetsEvaluatePoliciesResponse = EvaluatePoliciesResponse; +// @public +export interface PolicySetsListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type PolicySetsListNextResponse = PolicySetList; + +// @public +export interface PolicySetsListOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type PolicySetsListResponse = PolicySetList; + // @public export type PolicyStatus = string; @@ -2017,15 +2567,9 @@ export interface Port { // @public export type PremiumDataDisk = string; -// @public -export interface ProviderOperationResult { - readonly nextLink?: string; - value?: OperationMetadata[]; -} - // @public export interface ProviderOperations { - list(options?: ProviderOperationsListOptionalParams): PagedAsyncIterableIterator; + list(options?: ProviderOperationsListOptionalParams): PagedAsyncIterableIterator; } // @public @@ -2033,14 +2577,17 @@ export interface ProviderOperationsListNextOptionalParams extends coreClient.Ope } // @public -export type ProviderOperationsListNextResponse = ProviderOperationResult; +export type ProviderOperationsListNextResponse = OperationListResult; // @public export interface ProviderOperationsListOptionalParams extends coreClient.OperationOptions { } // @public -export type ProviderOperationsListResponse = ProviderOperationResult; +export type ProviderOperationsListResponse = OperationListResult; + +// @public +export type ProxyResource = Resource & {}; // @public export interface RdpConnection { @@ -2058,14 +2605,39 @@ export interface ResizeLabVirtualMachineProperties { // @public export interface Resource { readonly id?: string; + readonly name?: string; + readonly type?: string; +} + +// @public +export interface ResourceModelWithAllowedPropertySet { + readonly etag?: string; + readonly id?: string; + // (undocumented) + identity?: ResourceModelWithAllowedPropertySetIdentity; + kind?: string; location?: string; + managedBy?: string; readonly name?: string; + // (undocumented) + plan?: ResourceModelWithAllowedPropertySetPlan; + // (undocumented) + sku?: ResourceModelWithAllowedPropertySetSku; tags?: { [propertyName: string]: string; }; readonly type?: string; } +// @public (undocumented) +export type ResourceModelWithAllowedPropertySetIdentity = Identity & {}; + +// @public (undocumented) +export type ResourceModelWithAllowedPropertySetPlan = Plan & {}; + +// @public (undocumented) +export type ResourceModelWithAllowedPropertySetSku = Sku & {}; + // @public export interface RetargetScheduleProperties { currentResourceId?: string; @@ -2073,44 +2645,58 @@ export interface RetargetScheduleProperties { } // @public -export type Schedule = Resource & { - status?: EnableStatus; +export type Schedule = TrackedResource & { + readonly systemData?: SystemData; + statusPropertiesStatus?: EnableStatus; taskType?: string; - weeklyRecurrence?: WeekDetails; - dailyRecurrence?: DayDetails; - hourlyRecurrence?: HourDetails; timeZoneId?: string; - notificationSettings?: NotificationSettings; readonly createdDate?: Date; targetResourceId?: string; readonly provisioningState?: string; readonly uniqueIdentifier?: string; + statusPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutes?: number; + webhookUrl?: string; + emailRecipient?: string; + notificationLocale?: string; + minute?: number; + timePropertiesDailyRecurrenceTime?: string; + weekdays?: string[]; + timePropertiesWeeklyRecurrenceTime?: string; }; // @public export interface ScheduleCreationParameter { - dailyRecurrence?: DayDetails; - hourlyRecurrence?: HourDetails; - readonly location?: string; + readonly createdDate?: Date; + emailRecipient?: string; + location?: string; + minute?: number; name?: string; - notificationSettings?: NotificationSettings; - status?: EnableStatus; + notificationLocale?: string; + readonly provisioningState?: string; + statusPropertiesNotificationSettingsStatus?: EnableStatus; + statusPropertiesStatus?: EnableStatus; tags?: { [propertyName: string]: string; }; targetResourceId?: string; taskType?: string; + timeInMinutes?: number; + timePropertiesDailyRecurrenceTime?: string; + timePropertiesWeeklyRecurrenceTime?: string; timeZoneId?: string; - weeklyRecurrence?: WeekDetails; + readonly uniqueIdentifier?: string; + webhookUrl?: string; + weekdays?: string[]; } // @public -export type ScheduleFragment = UpdateResource & {}; +export type ScheduleFragment = Tags & {}; // @public export interface ScheduleList { nextLink?: string; - value?: Schedule[]; + readonly value?: Schedule[]; } // @public @@ -2121,7 +2707,7 @@ export interface Schedules { delete(resourceGroupName: string, labName: string, name: string, options?: SchedulesDeleteOptionalParams): Promise; get(resourceGroupName: string, labName: string, name: string, options?: SchedulesGetOptionalParams): Promise; list(resourceGroupName: string, labName: string, options?: SchedulesListOptionalParams): PagedAsyncIterableIterator; - listApplicable(resourceGroupName: string, labName: string, name: string, options?: SchedulesListApplicableOptionalParams): PagedAsyncIterableIterator; + listApplicable(resourceGroupName: string, labName: string, name: string, options?: SchedulesListApplicableOptionalParams): Promise; update(resourceGroupName: string, labName: string, name: string, schedule: ScheduleFragment, options?: SchedulesUpdateOptionalParams): Promise; } @@ -2144,19 +2730,11 @@ export interface SchedulesExecuteOptionalParams extends coreClient.OperationOpti // @public export interface SchedulesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public export type SchedulesGetResponse = Schedule; -// @public -export interface SchedulesListApplicableNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type SchedulesListApplicableNextResponse = ScheduleList; - // @public export interface SchedulesListApplicableOptionalParams extends coreClient.OperationOptions { } @@ -2166,7 +2744,6 @@ export type SchedulesListApplicableResponse = ScheduleList; // @public export interface SchedulesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2177,7 +2754,6 @@ export type SchedulesListNextResponse = ScheduleList; // @public export interface SchedulesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2194,19 +2770,20 @@ export interface SchedulesUpdateOptionalParams extends coreClient.OperationOptio export type SchedulesUpdateResponse = Schedule; // @public -export type Secret = Resource & { +export type Secret = TrackedResource & { + readonly systemData?: SystemData; value?: string; readonly provisioningState?: string; readonly uniqueIdentifier?: string; }; // @public -export type SecretFragment = UpdateResource & {}; +export type SecretFragment = Tags & {}; // @public export interface SecretList { nextLink?: string; - value?: Secret[]; + readonly value?: Secret[]; } // @public @@ -2234,7 +2811,6 @@ export interface SecretsDeleteOptionalParams extends coreClient.OperationOptions // @public export interface SecretsGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -2242,7 +2818,6 @@ export type SecretsGetResponse = Secret; // @public export interface SecretsListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2253,7 +2828,6 @@ export type SecretsListNextResponse = SecretList; // @public export interface SecretsListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2270,21 +2844,73 @@ export interface SecretsUpdateOptionalParams extends coreClient.OperationOptions export type SecretsUpdateResponse = Secret; // @public -export type ServiceFabric = Resource & { +export type ServiceFabric = TrackedResource & { + readonly systemData?: SystemData; externalServiceFabricId?: string; environmentId?: string; - readonly applicableSchedule?: ApplicableSchedule; - readonly provisioningState?: string; - readonly uniqueIdentifier?: string; + readonly provisioningStatePropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + readonly idPropertiesApplicableScheduleId?: string; + readonly namePropertiesApplicableScheduleName?: string; + readonly typePropertiesApplicableScheduleType?: string; + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; }; // @public -export type ServiceFabricFragment = UpdateResource & {}; +export type ServiceFabricFragment = Tags & {}; // @public export interface ServiceFabricList { nextLink?: string; - value?: ServiceFabric[]; + readonly value?: ServiceFabric[]; } // @public @@ -2333,7 +2959,6 @@ export interface ServiceFabricSchedulesExecuteOptionalParams extends coreClient. // @public export interface ServiceFabricSchedulesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -2341,7 +2966,6 @@ export type ServiceFabricSchedulesGetResponse = Schedule; // @public export interface ServiceFabricSchedulesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2352,7 +2976,6 @@ export type ServiceFabricSchedulesListNextResponse = ScheduleList; // @public export interface ServiceFabricSchedulesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2440,25 +3063,40 @@ export interface ServiceFabricsUpdateOptionalParams extends coreClient.Operation export type ServiceFabricsUpdateResponse = ServiceFabric; // @public -export type ServiceRunner = Resource & { - identity?: IdentityProperties; +export type ServiceRunner = TrackedResource & { + readonly systemData?: SystemData; + typeIdentityType?: ManagedIdentityType; + principalId?: string; + tenantId?: string; + clientSecretUrl?: string; + userAssignedIdentities?: { + [propertyName: string]: Record; + }; + identityUsageType?: string; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; }; // @public export interface ServiceRunnerList { nextLink?: string; - value?: ServiceRunner[]; + readonly value?: ServiceRunner[]; } // @public export interface ServiceRunners { - createOrUpdate(resourceGroupName: string, labName: string, name: string, serviceRunner: ServiceRunner, options?: ServiceRunnersCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, labName: string, name: string, options?: ServiceRunnersDeleteOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, serviceRunner: ServiceRunner, options?: ServiceRunnersCreateOrUpdateOptionalParams): Promise, ServiceRunnersCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, serviceRunner: ServiceRunner, options?: ServiceRunnersCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, labName: string, name: string, options?: ServiceRunnersDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, labName: string, name: string, options?: ServiceRunnersDeleteOptionalParams): Promise; get(resourceGroupName: string, labName: string, name: string, options?: ServiceRunnersGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: ServiceRunnersListOptionalParams): PagedAsyncIterableIterator; } // @public export interface ServiceRunnersCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public @@ -2466,6 +3104,8 @@ export type ServiceRunnersCreateOrUpdateResponse = ServiceRunner; // @public export interface ServiceRunnersDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public @@ -2476,27 +3116,188 @@ export interface ServiceRunnersGetOptionalParams extends coreClient.OperationOpt export type ServiceRunnersGetResponse = ServiceRunner; // @public -export interface SharedPublicIpAddressConfiguration { - inboundNatRules?: InboundNatRule[]; +export interface ServiceRunnersListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type ServiceRunnersListNextResponse = ServiceRunnerList; + +// @public +export interface ServiceRunnersListOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type ServiceRunnersListResponse = ServiceRunnerList; + +// @public +export interface SharedGalleries { + createOrUpdate(resourceGroupName: string, labName: string, name: string, sharedGallery: SharedGallery, options?: SharedGalleriesCreateOrUpdateOptionalParams): Promise; + delete(resourceGroupName: string, labName: string, name: string, options?: SharedGalleriesDeleteOptionalParams): Promise; + get(resourceGroupName: string, labName: string, name: string, options?: SharedGalleriesGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, options?: SharedGalleriesListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, name: string, sharedGallery: SharedGalleryFragment, options?: SharedGalleriesUpdateOptionalParams): Promise; +} + +// @public +export interface SharedGalleriesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SharedGalleriesCreateOrUpdateResponse = SharedGallery; + +// @public +export interface SharedGalleriesDeleteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface SharedGalleriesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SharedGalleriesGetResponse = SharedGallery; + +// @public +export interface SharedGalleriesListNextOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type SharedGalleriesListNextResponse = SharedGalleryList; + +// @public +export interface SharedGalleriesListOptionalParams extends coreClient.OperationOptions { + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type SharedGalleriesListResponse = SharedGalleryList; + +// @public +export interface SharedGalleriesUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SharedGalleriesUpdateResponse = SharedGallery; + +// @public +export type SharedGallery = TrackedResource & { + readonly systemData?: SystemData; + galleryId?: string; + allowAllImages?: EnableState; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; +}; + +// @public +export type SharedGalleryFragment = Tags & {}; + +// @public +export interface SharedGalleryList { + nextLink?: string; + readonly value?: SharedGallery[]; +} + +// @public +export type SharedImage = TrackedResource & { + readonly systemData?: SystemData; + definitionName?: string; + osType?: OsType; + imageType?: ImageType; + enableState?: EnableState; + displayName?: string; + versions?: ImageVersionProperties[]; + readonly provisioningState?: string; + readonly uniqueIdentifier?: string; +}; + +// @public +export type SharedImageFragment = Tags & {}; + +// @public +export interface SharedImageList { + nextLink?: string; + readonly value?: SharedImage[]; +} + +// @public +export interface SharedImages { + createOrUpdate(resourceGroupName: string, labName: string, sharedGalleryName: string, name: string, sharedImage: SharedImage, options?: SharedImagesCreateOrUpdateOptionalParams): Promise; + delete(resourceGroupName: string, labName: string, sharedGalleryName: string, name: string, options?: SharedImagesDeleteOptionalParams): Promise; + get(resourceGroupName: string, labName: string, sharedGalleryName: string, name: string, options?: SharedImagesGetOptionalParams): Promise; + list(resourceGroupName: string, labName: string, sharedGalleryName: string, options?: SharedImagesListOptionalParams): PagedAsyncIterableIterator; + update(resourceGroupName: string, labName: string, sharedGalleryName: string, name: string, sharedImage: SharedImageFragment, options?: SharedImagesUpdateOptionalParams): Promise; +} + +// @public +export interface SharedImagesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SharedImagesCreateOrUpdateResponse = SharedImage; + +// @public +export interface SharedImagesDeleteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface SharedImagesGetOptionalParams extends coreClient.OperationOptions { + expand?: string; +} + +// @public +export type SharedImagesGetResponse = SharedImage; + +// @public +export interface SharedImagesListNextOptionalParams extends coreClient.OperationOptions { + expand?: string; + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type SharedImagesListNextResponse = SharedImageList; + +// @public +export interface SharedImagesListOptionalParams extends coreClient.OperationOptions { + expand?: string; + filter?: string; + orderby?: string; + top?: number; +} + +// @public +export type SharedImagesListResponse = SharedImageList; + +// @public +export interface SharedImagesUpdateOptionalParams extends coreClient.OperationOptions { } // @public -export interface ShutdownNotificationContent { - delayUrl120?: string; - delayUrl60?: string; - eventType?: string; - guid?: string; - labName?: string; - minutesUntilShutdown?: string; - owner?: string; - resourceGroupName?: string; - skipUrl?: string; - subscriptionId?: string; - text?: string; - vmName?: string; - vmUrl?: string; +export type SharedImagesUpdateResponse = SharedImage; + +// @public +export interface Sku { + capacity?: number; + family?: string; + name: string; + size?: string; + tier?: SkuTier; } +// @public +export type SkuTier = "Free" | "Basic" | "Standard" | "Premium"; + // @public export type SourceControlType = string; @@ -2512,70 +3313,70 @@ export interface Subnet { // @public export interface SubnetOverride { + allowedPorts?: Port[]; labSubnetName?: string; resourceId?: string; - sharedPublicIpAddressConfiguration?: SubnetSharedPublicIpAddressConfiguration; useInVmCreationPermission?: UsagePermissionType; usePublicIpAddressPermission?: UsagePermissionType; virtualNetworkPoolName?: string; } // @public -export interface SubnetSharedPublicIpAddressConfiguration { - allowedPorts?: Port[]; +export interface SystemData { + createdAt?: Date; + createdBy?: string; + createdByType?: CreatedByType; + lastModifiedAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; } // @public -export interface TargetCostProperties { - costThresholds?: CostThresholdProperties[]; - cycleEndDateTime?: Date; - cycleStartDateTime?: Date; - cycleType?: ReportingCycleType; - status?: TargetCostStatus; - target?: number; +export interface Tags { + tags?: { + [propertyName: string]: string; + }; } // @public export type TargetCostStatus = string; // @public -export type TransportProtocol = string; - -// @public -export interface UpdateResource { +export type TrackedResource = Resource & { tags?: { [propertyName: string]: string; }; -} + location: string; +}; + +// @public +export type TransportProtocol = string; // @public export type UsagePermissionType = string; // @public -export type User = Resource & { - identity?: UserIdentity; - secretStore?: UserSecretStore; +export type User = TrackedResource & { + readonly systemData?: SystemData; readonly createdDate?: Date; readonly provisioningState?: string; readonly uniqueIdentifier?: string; + keyVaultUri?: string; + keyVaultId?: string; + principalName?: string; + principalId?: string; + tenantId?: string; + objectId?: string; + appId?: string; }; // @public -export type UserFragment = UpdateResource & {}; - -// @public -export interface UserIdentity { - appId?: string; - objectId?: string; - principalId?: string; - principalName?: string; - tenantId?: string; -} +export type UserFragment = Tags & {}; // @public export interface UserList { nextLink?: string; - value?: User[]; + readonly value?: User[]; } // @public @@ -2604,15 +3405,8 @@ export interface UsersDeleteOptionalParams extends coreClient.OperationOptions { updateIntervalInMs?: number; } -// @public -export interface UserSecretStore { - keyVaultId?: string; - keyVaultUri?: string; -} - // @public export interface UsersGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -2620,7 +3414,6 @@ export type UsersGetResponse = User; // @public export interface UsersListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2631,7 +3424,6 @@ export type UsersListNextResponse = UserList; // @public export interface UsersListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2647,9 +3439,134 @@ export interface UsersUpdateOptionalParams extends coreClient.OperationOptions { // @public export type UsersUpdateResponse = User; +// @public +export type VirtualMachine = TrackedResource & { + readonly systemData?: SystemData; + notes?: string; + ownerObjectId?: string; + ownerUserPrincipalName?: string; + readonly createdByUserId?: string; + readonly createdByUser?: string; + createdDatePropertiesCreatedDate?: Date; + readonly computeId?: string; + customImageId?: string; + galleryImageVersionId?: string; + sharedImageId?: string; + sharedImageVersion?: string; + readonly osTypePropertiesOsType?: string; + size?: string; + userName?: string; + password?: string; + sshKey?: string; + isAuthenticationWithSshKey?: boolean; + readonly fqdn?: string; + labSubnetName?: string; + labVirtualNetworkId?: string; + disallowPublicIpAddress?: boolean; + artifacts?: ArtifactInstallProperties[]; + planId?: string; + osDiskSizeGb?: number; + expirationDate?: Date; + allowClaim?: boolean; + storageType?: StorageType; + readonly virtualMachineCreationSource?: VirtualMachineCreationSource; + environmentId?: string; + dataDiskParameters?: DataDiskProperties[]; + scheduleParameters?: ScheduleCreationParameter[]; + readonly lastKnownPowerState?: string; + readonly canApplyArtifacts?: boolean; + readonly provisioningStatePropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + readonly idPropertiesApplicableScheduleId?: string; + readonly namePropertiesApplicableScheduleName?: string; + readonly typePropertiesApplicableScheduleType?: string; + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + virtualNetworkId?: string; + subnetId?: string; + publicIpAddressId?: string; + publicIpAddress?: string; + privateIpAddress?: string; + dnsName?: string; + rdpAuthority?: string; + sshAuthority?: string; + inboundNatRules?: InboundNatRule[]; + statuses?: ComputeVmInstanceViewStatus[]; + osTypePropertiesComputeVmOsType?: string; + vmSize?: string; + networkInterfaceId?: string; + osDiskId?: string; + dataDiskIds?: string[]; + dataDisks?: ComputeDataDisk[]; + offer?: string; + publisher?: string; + sku?: string; + osTypePropertiesGalleryImageReferenceOsType?: string; + version?: string; + deploymentStatus?: string; + artifactsApplied?: number; + totalArtifacts?: number; +}; + // @public export type VirtualMachineCreationSource = string; +// @public +export type VirtualMachineFragment = Tags & {}; + +// @public +export interface VirtualMachineList { + nextLink?: string; + readonly value?: VirtualMachine[]; +} + // @public export interface VirtualMachines { beginAddDataDisk(resourceGroupName: string, labName: string, name: string, dataDiskProperties: DataDiskProperties, options?: VirtualMachinesAddDataDiskOptionalParams): Promise, void>>; @@ -2658,8 +3575,8 @@ export interface VirtualMachines { beginApplyArtifactsAndWait(resourceGroupName: string, labName: string, name: string, applyArtifactsRequest: ApplyArtifactsRequest, options?: VirtualMachinesApplyArtifactsOptionalParams): Promise; beginClaim(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesClaimOptionalParams): Promise, void>>; beginClaimAndWait(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesClaimOptionalParams): Promise; - beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, labVirtualMachine: LabVirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams): Promise, VirtualMachinesCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, labVirtualMachine: LabVirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, labName: string, name: string, virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams): Promise, VirtualMachinesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, labName: string, name: string, virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams): Promise; beginDelete(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesDeleteOptionalParams): Promise; beginDetachDataDisk(resourceGroupName: string, labName: string, name: string, detachDataDiskProperties: DetachDataDiskProperties, options?: VirtualMachinesDetachDataDiskOptionalParams): Promise, void>>; @@ -2678,11 +3595,12 @@ export interface VirtualMachines { beginTransferDisksAndWait(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesTransferDisksOptionalParams): Promise; beginUnClaim(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesUnClaimOptionalParams): Promise, void>>; beginUnClaimAndWait(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesUnClaimOptionalParams): Promise; + clearArtifactResults(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesClearArtifactResultsOptionalParams): Promise; get(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesGetOptionalParams): Promise; getRdpFileContents(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesGetRdpFileContentsOptionalParams): Promise; - list(resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams): PagedAsyncIterableIterator; + list(resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams): PagedAsyncIterableIterator; listApplicableSchedules(resourceGroupName: string, labName: string, name: string, options?: VirtualMachinesListApplicableSchedulesOptionalParams): Promise; - update(resourceGroupName: string, labName: string, name: string, labVirtualMachine: LabVirtualMachineFragment, options?: VirtualMachinesUpdateOptionalParams): Promise; + update(resourceGroupName: string, labName: string, name: string, virtualMachine: VirtualMachineFragment, options?: VirtualMachinesUpdateOptionalParams): Promise; } // @public @@ -2727,7 +3645,6 @@ export interface VirtualMachineSchedulesExecuteOptionalParams extends coreClient // @public export interface VirtualMachineSchedulesGetOptionalParams extends coreClient.OperationOptions { - expand?: string; } // @public @@ -2735,7 +3652,6 @@ export type VirtualMachineSchedulesGetResponse = Schedule; // @public export interface VirtualMachineSchedulesListNextOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2746,7 +3662,6 @@ export type VirtualMachineSchedulesListNextResponse = ScheduleList; // @public export interface VirtualMachineSchedulesListOptionalParams extends coreClient.OperationOptions { - expand?: string; filter?: string; orderby?: string; top?: number; @@ -2768,6 +3683,10 @@ export interface VirtualMachinesClaimOptionalParams extends coreClient.Operation updateIntervalInMs?: number; } +// @public +export interface VirtualMachinesClearArtifactResultsOptionalParams extends coreClient.OperationOptions { +} + // @public export interface VirtualMachinesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2775,7 +3694,7 @@ export interface VirtualMachinesCreateOrUpdateOptionalParams extends coreClient. } // @public -export type VirtualMachinesCreateOrUpdateResponse = LabVirtualMachine; +export type VirtualMachinesCreateOrUpdateResponse = VirtualMachine; // @public export interface VirtualMachinesDeleteOptionalParams extends coreClient.OperationOptions { @@ -2802,7 +3721,7 @@ export interface VirtualMachinesGetRdpFileContentsOptionalParams extends coreCli export type VirtualMachinesGetRdpFileContentsResponse = RdpConnection; // @public -export type VirtualMachinesGetResponse = LabVirtualMachine; +export type VirtualMachinesGetResponse = VirtualMachine; // @public export interface VirtualMachinesListApplicableSchedulesOptionalParams extends coreClient.OperationOptions { @@ -2820,7 +3739,7 @@ export interface VirtualMachinesListNextOptionalParams extends coreClient.Operat } // @public -export type VirtualMachinesListNextResponse = LabVirtualMachineList; +export type VirtualMachinesListNextResponse = VirtualMachineList; // @public export interface VirtualMachinesListOptionalParams extends coreClient.OperationOptions { @@ -2831,7 +3750,7 @@ export interface VirtualMachinesListOptionalParams extends coreClient.OperationO } // @public -export type VirtualMachinesListResponse = LabVirtualMachineList; +export type VirtualMachinesListResponse = VirtualMachineList; // @public export interface VirtualMachinesRedeployOptionalParams extends coreClient.OperationOptions { @@ -2880,10 +3799,11 @@ export interface VirtualMachinesUpdateOptionalParams extends coreClient.Operatio } // @public -export type VirtualMachinesUpdateResponse = LabVirtualMachine; +export type VirtualMachinesUpdateResponse = VirtualMachine; // @public -export type VirtualNetwork = Resource & { +export type VirtualNetwork = TrackedResource & { + readonly systemData?: SystemData; allowedSubnets?: Subnet[]; description?: string; externalProviderResourceId?: string; @@ -2895,12 +3815,12 @@ export type VirtualNetwork = Resource & { }; // @public -export type VirtualNetworkFragment = UpdateResource & {}; +export type VirtualNetworkFragment = Tags & {}; // @public export interface VirtualNetworkList { nextLink?: string; - value?: VirtualNetwork[]; + readonly value?: VirtualNetwork[]; } // @public @@ -2966,17 +3886,6 @@ export interface VirtualNetworksUpdateOptionalParams extends coreClient.Operatio // @public export type VirtualNetworksUpdateResponse = VirtualNetwork; -// @public -export interface WeekDetails { - time?: string; - weekdays?: string[]; -} - -// @public -export interface WindowsOsInfo { - windowsOsState?: WindowsOsState; -} - // @public export type WindowsOsState = string; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts index 681ca33f8040..d15f9c3478cb 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts @@ -24,7 +24,10 @@ import { PolicySetsImpl, PoliciesImpl, SchedulesImpl, + LabSecretsImpl, ServiceRunnersImpl, + SharedGalleriesImpl, + SharedImagesImpl, UsersImpl, DisksImpl, EnvironmentsImpl, @@ -33,7 +36,8 @@ import { ServiceFabricSchedulesImpl, VirtualMachinesImpl, VirtualMachineSchedulesImpl, - VirtualNetworksImpl + VirtualNetworksImpl, + BastionHostsImpl } from "./operations"; import { ProviderOperations, @@ -51,7 +55,10 @@ import { PolicySets, Policies, Schedules, + LabSecrets, ServiceRunners, + SharedGalleries, + SharedImages, Users, Disks, Environments, @@ -60,7 +67,8 @@ import { ServiceFabricSchedules, VirtualMachines, VirtualMachineSchedules, - VirtualNetworks + VirtualNetworks, + BastionHosts } from "./operationsInterfaces"; import { DevTestLabsClientOptionalParams } from "./models"; @@ -72,7 +80,7 @@ export class DevTestLabsClient extends coreClient.ServiceClient { /** * Initializes a new instance of the DevTestLabsClient class. * @param credentials Subscription credentials which uniquely identify client subscription. - * @param subscriptionId The subscription ID. + * @param subscriptionId The ID of the target subscription. * @param options The parameter options */ constructor( @@ -96,7 +104,7 @@ export class DevTestLabsClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-devtestlabs/4.0.0`; + const packageDetails = `azsdk-js-arm-devtestlabs/5.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -119,7 +127,7 @@ export class DevTestLabsClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2018-09-15"; + this.apiVersion = options.apiVersion || "2021-09-01"; this.providerOperations = new ProviderOperationsImpl(this); this.labs = new LabsImpl(this); this.operations = new OperationsImpl(this); @@ -135,7 +143,10 @@ export class DevTestLabsClient extends coreClient.ServiceClient { this.policySets = new PolicySetsImpl(this); this.policies = new PoliciesImpl(this); this.schedules = new SchedulesImpl(this); + this.labSecrets = new LabSecretsImpl(this); this.serviceRunners = new ServiceRunnersImpl(this); + this.sharedGalleries = new SharedGalleriesImpl(this); + this.sharedImages = new SharedImagesImpl(this); this.users = new UsersImpl(this); this.disks = new DisksImpl(this); this.environments = new EnvironmentsImpl(this); @@ -145,6 +156,7 @@ export class DevTestLabsClient extends coreClient.ServiceClient { this.virtualMachines = new VirtualMachinesImpl(this); this.virtualMachineSchedules = new VirtualMachineSchedulesImpl(this); this.virtualNetworks = new VirtualNetworksImpl(this); + this.bastionHosts = new BastionHostsImpl(this); } providerOperations: ProviderOperations; @@ -162,7 +174,10 @@ export class DevTestLabsClient extends coreClient.ServiceClient { policySets: PolicySets; policies: Policies; schedules: Schedules; + labSecrets: LabSecrets; serviceRunners: ServiceRunners; + sharedGalleries: SharedGalleries; + sharedImages: SharedImages; users: Users; disks: Disks; environments: Environments; @@ -172,4 +187,5 @@ export class DevTestLabsClient extends coreClient.ServiceClient { virtualMachines: VirtualMachines; virtualMachineSchedules: VirtualMachineSchedules; virtualNetworks: VirtualNetworks; + bastionHosts: BastionHosts; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/models/index.ts b/sdk/devtestlabs/arm-devtestlabs/src/models/index.ts index 1d4aef03766d..b8b857a744df 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/models/index.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/models/index.ts @@ -8,116 +8,163 @@ import * as coreClient from "@azure/core-client"; -/** Result of the request to list REST API operations */ -export interface ProviderOperationResult { - /** List of operations supported by the resource provider. */ - value?: OperationMetadata[]; +/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */ +export interface OperationListResult { /** - * URL to get the next set of operation list results if there are any. + * List of operations supported by the resource provider + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Operation[]; + /** + * URL to get the next set of operation list results (if there are any). * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly nextLink?: string; } -/** The REST API operation supported by DevTestLab ResourceProvider. */ -export interface OperationMetadata { - /** Operation name: {provider}/{resource}/{operation} */ - name?: string; - /** The object that describes the operations */ - display?: OperationMetadataDisplay; -} - -/** The object that describes the operations */ -export interface OperationMetadataDisplay { - /** Friendly name of the resource provider */ - provider?: string; - /** Resource type on which the operation is performed. */ - resource?: string; - /** Operation type: read, write, delete, listKeys/action, etc. */ - operation?: string; - /** Friendly name of the operation */ - description?: string; +/** Details of a REST API operation, returned from the Resource Provider Operations API */ +export interface Operation { + /** + * The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly isDataAction?: boolean; + /** Localized display information for this particular operation. */ + display?: OperationDisplay; + /** + * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly origin?: Origin; + /** + * Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly actionType?: ActionType; } -/** Error from a REST request. */ -export interface CloudError { - /** The cloud error that occurred */ - error?: CloudErrorBody; +/** Localized display information for this particular operation. */ +export interface OperationDisplay { + /** + * The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provider?: string; + /** + * The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly resource?: string; + /** + * The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly operation?: string; + /** + * The short, localized friendly description of the operation; suitable for tool tips and detailed views. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly description?: string; } -/** Body of an error from a REST request. */ -export interface CloudErrorBody { - /** The error code. */ - code?: string; - /** The error message. */ - message?: string; - /** The error target. */ - target?: string; - /** Inner errors. */ - details?: CloudErrorBody[]; +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; } -/** The response of a list operation. */ -export interface LabList { - /** Results of the list operation. */ - value?: Lab[]; - /** Link for next set of results. */ - nextLink?: string; +/** The error detail. */ +export interface ErrorDetail { + /** + * The error code. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly code?: string; + /** + * The error message. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; + /** + * The error target. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly target?: string; + /** + * The error details. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly details?: ErrorDetail[]; + /** + * The error additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly additionalInfo?: ErrorAdditionalInfo[]; } -/** Properties of a lab's announcement banner */ -export interface LabAnnouncementProperties { - /** The plain text title for the lab announcement */ - title?: string; - /** The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. */ - markdown?: string; - /** Is the lab announcement active/enabled at this time? */ - enabled?: EnableStatus; - /** The time at which the announcement expires (null for never) */ - expirationDate?: Date; - /** Has this announcement expired? */ - expired?: boolean; +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { /** - * The provisioning status of the resource. + * The additional info type. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly type?: string; /** - * The unique immutable identifier of a resource (Guid). + * The additional info. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; + readonly info?: Record; } -/** Properties of a lab's support banner */ -export interface LabSupportProperties { - /** Is the lab support banner active/enabled at this time? */ - enabled?: EnableStatus; - /** The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. */ - markdown?: string; +/** Contains a list of labs and their properties */ +export interface LabList { + /** + * List of labs and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Lab[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; +} + +/** Metadata pertaining to creation and last modification of the resource. */ +export interface SystemData { + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; } -/** An Azure resource. */ +/** Common fields that are returned in the response for all Azure Resource Manager resources */ export interface Resource { /** - * The identifier of the resource. + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; /** - * The name of the resource. + * The name of the resource * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly name?: string; /** - * The type of the resource. + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly type?: string; - /** The location of the resource. */ - location?: string; - /** The tags of the resource. */ - tags?: { [propertyName: string]: string }; } /** An Operation Result */ @@ -126,73 +173,42 @@ export interface OperationResult { status?: string; /** The status code for the operation. */ statusCode?: HttpStatusCode; - /** Error details for the operation in case of a failure. */ - error?: OperationError; -} - -/** Error details for the operation in case of a failure. */ -export interface OperationError { /** The error code of the operation error. */ code?: string; /** The error message of the operation error. */ message?: string; } -/** The response of a list operation. */ +/** Contains a list of schedules and their properties */ export interface ScheduleList { - /** Results of the list operation. */ - value?: Schedule[]; - /** Link for next set of results. */ + /** + * List of schedules and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Schedule[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Properties of a weekly schedule. */ -export interface WeekDetails { - /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ - weekdays?: string[]; - /** The time of the day the schedule will occur. */ - time?: string; -} - -/** Properties of a daily schedule. */ -export interface DayDetails { - /** The time of day the schedule will occur. */ - time?: string; -} - -/** Properties of an hourly schedule. */ -export interface HourDetails { - /** Minutes of the hour the schedule will run. */ - minute?: number; -} - -/** Notification settings for a schedule. */ -export interface NotificationSettings { - /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ - status?: EnableStatus; - /** Time in minutes before event at which notification will be sent. */ - timeInMinutes?: number; - /** The webhook URL to which the notification will be sent. */ - webhookUrl?: string; - /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ - emailRecipient?: string; - /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ - notificationLocale?: string; -} - -/** The response of a list operation. */ +/** Contains a list of artifactSources and their properties */ export interface ArtifactSourceList { - /** Results of the list operation. */ - value?: ArtifactSource[]; - /** Link for next set of results. */ + /** + * List of artifactSources and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ArtifactSource[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** The response of a list operation. */ +/** Contains a list of armTemplates and their properties */ export interface ArmTemplateList { - /** Results of the list operation. */ - value?: ArmTemplate[]; - /** Link for next set of results. */ + /** + * List of armTemplates and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ArmTemplate[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -204,11 +220,14 @@ export interface ParametersValueFileInfo { parametersValueInfo?: Record; } -/** The response of a list operation. */ +/** Contains a list of artifacts and their properties */ export interface ArtifactList { - /** Results of the list operation. */ - value?: Artifact[]; - /** Link for next set of results. */ + /** + * List of artifacts and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Artifact[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -221,7 +240,7 @@ export interface GenerateArmTemplateRequest { /** The location of the virtual machine. */ location?: string; /** Options for uploading the files for the artifact. UploadFilesAndGenerateSasTokens is the default value. */ - fileUploadOptions?: FileUploadOptions; + fileUploadOptions?: FileUploadOption; } /** Information about an artifact's parameter. */ @@ -240,54 +259,37 @@ export interface ArmTemplateInfo { parameters?: Record; } -/** Represents an update resource */ -export interface UpdateResource { - /** The tags of the resource. */ +/** Resource tags */ +export interface Tags { + /** Resource tags */ tags?: { [propertyName: string]: string }; } -/** Properties of a cost target. */ -export interface TargetCostProperties { - /** Target cost status */ - status?: TargetCostStatus; - /** Lab target cost */ - target?: number; - /** Cost thresholds. */ - costThresholds?: CostThresholdProperties[]; - /** Reporting cycle start date. */ - cycleStartDateTime?: Date; - /** Reporting cycle end date. */ - cycleEndDateTime?: Date; - /** Reporting cycle type. */ - cycleType?: ReportingCycleType; +/** Contains a list of costs and their properties */ +export interface LabCostList { + /** + * List of costs and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: LabCost[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; } /** Properties of a cost threshold item. */ export interface CostThresholdProperties { /** The ID of the cost threshold item. */ thresholdId?: string; - /** The value of the percentage cost threshold. */ - percentageThreshold?: PercentageCostThresholdProperties; /** Indicates whether this threshold will be displayed on cost charts. */ displayOnChart?: CostThresholdStatus; /** Indicates whether notifications will be sent when this threshold is exceeded. */ sendNotificationWhenExceeded?: CostThresholdStatus; /** Indicates the datetime when notifications were last sent for this threshold. */ notificationSent?: string; -} - -/** Properties of a percentage cost threshold. */ -export interface PercentageCostThresholdProperties { /** The cost threshold value. */ thresholdValue?: number; } -/** The properties of the cost summary. */ -export interface LabCostSummaryProperties { - /** The cost component of the cost item. */ - estimatedLabCost?: number; -} - /** The properties of a lab cost item. */ export interface LabCostDetailsProperties { /** The date of the cost item. */ @@ -320,46 +322,17 @@ export interface LabResourceCostProperties { externalResourceId?: string; } -/** The response of a list operation. */ +/** Contains a list of customImages and their properties */ export interface CustomImageList { - /** Results of the list operation. */ - value?: CustomImage[]; - /** Link for next set of results. */ + /** + * List of customImages and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: CustomImage[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Properties for creating a custom image from a virtual machine. */ -export interface CustomImagePropertiesFromVm { - /** The source vm identifier. */ - sourceVmId?: string; - /** The Windows OS information of the VM. */ - windowsOsInfo?: WindowsOsInfo; - /** The Linux OS information of the VM. */ - linuxOsInfo?: LinuxOsInfo; -} - -/** Information about a Windows OS. */ -export interface WindowsOsInfo { - /** The state of the Windows OS (i.e. NonSysprepped, SysprepRequested, SysprepApplied). */ - windowsOsState?: WindowsOsState; -} - -/** Information about a Linux OS. */ -export interface LinuxOsInfo { - /** The state of the Linux OS (i.e. NonDeprovisioned, DeprovisionRequested, DeprovisionApplied). */ - linuxOsState?: LinuxOsState; -} - -/** Properties for creating a custom image from a VHD. */ -export interface CustomImagePropertiesCustom { - /** The image name. */ - imageName?: string; - /** Indicates whether sysprep has been run on the VHD. */ - sysPrep?: boolean; - /** The OS type of the custom image (i.e. Windows, Linux) */ - osType: CustomImageOsType; -} - /** Storage information about the data disks present in the custom image */ export interface DataDiskStorageTypeInfo { /** Disk Lun */ @@ -368,21 +341,14 @@ export interface DataDiskStorageTypeInfo { storageType?: StorageType; } -/** Properties for plan on a custom image. */ -export interface CustomImagePropertiesFromPlan { - /** The id of the plan, equivalent to name of the plan */ - id?: string; - /** The publisher for the plan from the marketplace image the custom image is derived from */ - publisher?: string; - /** The offer for the plan from the marketplace image the custom image is derived from */ - offer?: string; -} - -/** The response of a list operation. */ +/** Contains a list of formulas and their properties */ export interface FormulaList { - /** Results of the list operation. */ - value?: Formula[]; - /** Link for next set of results. */ + /** + * List of formulas and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Formula[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -394,18 +360,42 @@ export interface LabVirtualMachineCreationParameter { location?: string; /** The tags of the resource. */ tags?: { [propertyName: string]: string }; - /** The number of virtual machine instances to create. */ - bulkCreationParameters?: BulkCreationParameters; /** The notes of the virtual machine. */ notes?: string; /** The object identifier of the owner of the virtual machine. */ ownerObjectId?: string; /** The user principal name of the virtual machine owner. */ ownerUserPrincipalName?: string; + /** + * The object identifier of the creator of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdByUserId?: string; + /** + * The email address of creator of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdByUser?: string; /** The creation date of the virtual machine. */ - createdDate?: Date; + createdDatePropertiesCreatedDate?: Date; + /** + * The resource identifier (Microsoft.Compute) of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly computeId?: string; /** The custom image identifier of the virtual machine. */ customImageId?: string; + /** The shared gallery image version resource identifier of the virtual machine. */ + galleryImageVersionId?: string; + /** The shared image resource identifier of the virtual machine. */ + sharedImageId?: string; + /** The shared image version for the specified shared image Id. Will use latest if not specified. */ + sharedImageVersion?: string; + /** + * The OS type of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly osTypePropertiesOsType?: string; /** The size of the virtual machine. */ size?: string; /** The user name of the virtual machine. */ @@ -416,6 +406,11 @@ export interface LabVirtualMachineCreationParameter { sshKey?: string; /** Indicates whether this virtual machine uses an SSH key for authentication. */ isAuthenticationWithSshKey?: boolean; + /** + * The fully-qualified domain name of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fqdn?: string; /** The lab subnet name of the virtual machine. */ labSubnetName?: string; /** The lab virtual network identifier of the virtual machine. */ @@ -424,98 +419,299 @@ export interface LabVirtualMachineCreationParameter { disallowPublicIpAddress?: boolean; /** The artifacts to be installed on the virtual machine. */ artifacts?: ArtifactInstallProperties[]; - /** The Microsoft Azure Marketplace image reference of the virtual machine. */ - galleryImageReference?: GalleryImageReference; /** The id of the plan associated with the virtual machine image */ planId?: string; - /** The network interface properties. */ - networkInterface?: NetworkInterfaceProperties; + /** Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. */ + osDiskSizeGb?: number; /** The expiration date for VM. */ expirationDate?: Date; /** Indicates whether another user can take ownership of the virtual machine */ allowClaim?: boolean; - /** Storage type to use for virtual machine (i.e. Standard, Premium). */ - storageType?: string; + /** Storage type to use for virtual machine (i.e. Standard, Premium, StandardSSD). */ + storageType?: StorageType; + /** + * Tells source of creation of lab virtual machine. Output property only. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly virtualMachineCreationSource?: VirtualMachineCreationSource; /** The resource ID of the environment that contains this virtual machine, if any. */ environmentId?: string; /** New or existing data disks to attach to the virtual machine after creation */ dataDiskParameters?: DataDiskProperties[]; /** Virtual Machine schedules to be created */ scheduleParameters?: ScheduleCreationParameter[]; -} - -/** Parameters for creating multiple virtual machines as a single action. */ -export interface BulkCreationParameters { - /** The number of virtual machine instances to create. */ - instanceCount?: number; -} - -/** Properties of an artifact. */ -export interface ArtifactInstallProperties { - /** The artifact's identifier. */ - artifactId?: string; - /** The artifact's title. */ - artifactTitle?: string; - /** The parameters of the artifact. */ - parameters?: ArtifactParameterProperties[]; - /** The status of the artifact. */ - status?: string; - /** The status message from the deployment. */ - deploymentStatusMessage?: string; - /** The status message from the virtual machine extension. */ - vmExtensionStatusMessage?: string; - /** The time that the artifact starts to install on the virtual machine. */ - installTime?: Date; -} - -/** Properties of an artifact parameter. */ -export interface ArtifactParameterProperties { - /** The name of the artifact parameter. */ - name?: string; - /** The value of the artifact parameter. */ - value?: string; -} - -/** The reference information for an Azure Marketplace image. */ -export interface GalleryImageReference { - /** The offer of the gallery image. */ - offer?: string; - /** The publisher of the gallery image. */ - publisher?: string; - /** The SKU of the gallery image. */ - sku?: string; - /** The OS type of the gallery image. */ - osType?: string; - /** The version of the gallery image. */ - version?: string; -} - -/** Properties of a network interface. */ -export interface NetworkInterfaceProperties { - /** The resource ID of the virtual network. */ - virtualNetworkId?: string; - /** The resource ID of the sub net. */ - subnetId?: string; - /** The resource ID of the public IP address. */ - publicIpAddressId?: string; - /** The public IP address. */ - publicIpAddress?: string; - /** The private IP address. */ - privateIpAddress?: string; - /** The DNS name. */ + /** + * Last known compute power state captured in DTL + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastKnownPowerState?: string; + /** + * Flag to determine if apply artifacts can be triggered at the time of fetching the document. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly canApplyArtifacts?: boolean; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableScheduleId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableScheduleName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableScheduleType?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + /** The resource ID of the virtual network. */ + virtualNetworkId?: string; + /** The resource ID of the sub net. */ + subnetId?: string; + /** The resource ID of the public IP address. */ + publicIpAddressId?: string; + /** The public IP address. */ + publicIpAddress?: string; + /** The private IP address. */ + privateIpAddress?: string; + /** The DNS name. */ dnsName?: string; /** The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol). */ rdpAuthority?: string; /** The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH. */ sshAuthority?: string; - /** The configuration for sharing a public IP address across multiple virtual machines. */ - sharedPublicIpAddressConfiguration?: SharedPublicIpAddressConfiguration; -} - -/** Properties of a virtual machine that determine how it is connected to a load balancer. */ -export interface SharedPublicIpAddressConfiguration { /** The incoming NAT rules */ inboundNatRules?: InboundNatRule[]; + /** Gets the statuses of the virtual machine. */ + statuses?: ComputeVmInstanceViewStatus[]; + /** Gets the OS type of the virtual machine. */ + osTypePropertiesComputeVmOsType?: string; + /** Gets the size of the virtual machine. */ + vmSize?: string; + /** Gets the network interface ID of the virtual machine. */ + networkInterfaceId?: string; + /** Gets OS disk blob uri for the virtual machine. */ + osDiskId?: string; + /** Gets data disks blob uri for the virtual machine. */ + dataDiskIds?: string[]; + /** Gets all data disks attached to the virtual machine. */ + dataDisks?: ComputeDataDisk[]; + /** The offer of the gallery image. */ + offer?: string; + /** The publisher of the gallery image. */ + publisher?: string; + /** The SKU of the gallery image. */ + sku?: string; + /** The OS type of the gallery image. */ + osTypePropertiesGalleryImageReferenceOsType?: string; + /** The version of the gallery image. */ + version?: string; + /** The deployment status of the artifact. */ + deploymentStatus?: string; + /** The total count of the artifacts that were successfully applied. */ + artifactsApplied?: number; + /** The total count of the artifacts that were tentatively applied. */ + totalArtifacts?: number; + /** The number of virtual machine instances to create. */ + instanceCount?: number; +} + +/** Properties of an artifact. */ +export interface ArtifactInstallProperties { + /** The artifact's identifier. */ + artifactId?: string; + /** The artifact's title. */ + artifactTitle?: string; + /** The parameters of the artifact. */ + parameters?: ArtifactParameterProperties[]; + /** The status of the artifact. */ + status?: string; + /** The status message from the deployment. */ + deploymentStatusMessage?: string; + /** The status message from the virtual machine extension. */ + vmExtensionStatusMessage?: string; + /** The time that the artifact starts to install on the virtual machine. */ + installTime?: Date; +} + +/** Properties of an artifact parameter. */ +export interface ArtifactParameterProperties { + /** The name of the artifact parameter. */ + name?: string; + /** The value of the artifact parameter. */ + value?: string; +} + +/** Status information about a virtual machine. */ +export interface ComputeVmInstanceViewStatus { + /** Gets the status Code. */ + code?: string; + /** Gets the short localizable label for the status. */ + displayStatus?: string; + /** Gets the message associated with the status. */ + message?: string; +} + +/** A data disks attached to a virtual machine. */ +export interface ComputeDataDisk { + /** Gets data disk name. */ + name?: string; + /** When backed by a blob, the URI of underlying blob. */ + diskUri?: string; + /** When backed by managed disk, this is the ID of the compute disk resource. */ + managedDiskId?: string; + /** Gets data disk size in GiB. */ + diskSizeGiB?: number; } /** A rule for NAT - exposing a VM's port (backendPort) on the public IP address using a load balancer. */ @@ -530,16 +726,10 @@ export interface InboundNatRule { /** Request body for adding a new or existing data disk to a virtual machine. */ export interface DataDiskProperties { - /** Specifies options to attach a new disk to the virtual machine. */ - attachNewDataDiskOptions?: AttachNewDataDiskOptions; /** Specifies the existing lab disk id to attach to virtual machine. */ existingLabDiskId?: string; /** Caching option for a data disk (i.e. None, ReadOnly, ReadWrite). */ - hostCaching?: HostCachingOptions; -} - -/** Properties to attach new disk to the Virtual Machine. */ -export interface AttachNewDataDiskOptions { + hostCaching?: HostCachingOption; /** Size of the disk to be attached in Gibibytes. */ diskSizeGiB?: number; /** The name of the disk to be attached. */ @@ -552,50 +742,72 @@ export interface AttachNewDataDiskOptions { export interface ScheduleCreationParameter { /** The name of the virtual machine or environment */ name?: string; - /** - * The location of the new virtual machine or environment - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly location?: string; + /** The location of the new virtual machine or environment */ + location?: string; /** The tags of the resource. */ tags?: { [propertyName: string]: string }; /** The status of the schedule (i.e. Enabled, Disabled) */ - status?: EnableStatus; + statusPropertiesStatus?: EnableStatus; /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ taskType?: string; - /** If the schedule will occur only some days of the week, specify the weekly recurrence. */ - weeklyRecurrence?: WeekDetails; - /** If the schedule will occur once each day of the week, specify the daily recurrence. */ - dailyRecurrence?: DayDetails; - /** If the schedule will occur multiple times a day, specify the hourly recurrence. */ - hourlyRecurrence?: HourDetails; /** The time zone ID (e.g. Pacific Standard time). */ timeZoneId?: string; - /** Notification settings. */ - notificationSettings?: NotificationSettings; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; /** The resource ID to which the schedule belongs */ targetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minute?: number; + /** The time of day the schedule will occur. */ + timePropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesWeeklyRecurrenceTime?: string; } -/** Information about a VM from which a formula is to be created. */ -export interface FormulaPropertiesFromVm { - /** The identifier of the VM from which a formula is to be created. */ - labVmId?: string; -} - -/** The response of a list operation. */ +/** Contains a list of galleryImages and their properties */ export interface GalleryImageList { - /** Results of the list operation. */ - value?: GalleryImage[]; - /** Link for next set of results. */ + /** + * List of galleryImages and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: GalleryImage[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** The response of a list operation. */ +/** Contains a list of notificationChannels and their properties */ export interface NotificationChannelList { - /** Results of the list operation. */ - value?: NotificationChannel[]; - /** Link for next set of results. */ + /** + * List of notificationChannels and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: NotificationChannel[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -613,6 +825,17 @@ export interface NotifyParameters { jsonPayload?: string; } +/** Contains a list of policySets and their properties */ +export interface PolicySetList { + /** + * List of policySets and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: PolicySet[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; +} + /** Request body for evaluating a policy set. */ export interface EvaluatePoliciesRequest { /** Policies to evaluate. */ @@ -653,61 +876,86 @@ export interface PolicyViolation { message?: string; } -/** The response of a list operation. */ +/** Contains a list of policies and their properties */ export interface PolicyList { - /** Results of the list operation. */ - value?: Policy[]; - /** Link for next set of results. */ + /** + * List of policies and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Policy[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Properties of a managed identity */ -export interface IdentityProperties { - /** Managed identity. */ - type?: ManagedIdentityType; - /** The principal id of resource identity. */ - principalId?: string; - /** The tenant identifier of resource. */ - tenantId?: string; - /** The client secret URL of the identity. */ - clientSecretUrl?: string; +/** Contains a list of secrets and their properties */ +export interface LabSecretList { + /** + * List of secrets and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: LabSecret[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; } -/** The response of a list operation. */ -export interface UserList { - /** Results of the list operation. */ - value?: User[]; - /** Link for next set of results. */ +/** Contains a list of serviceRunners and their properties */ +export interface ServiceRunnerList { + /** + * List of serviceRunners and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ServiceRunner[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Identity attributes of a lab user. */ -export interface UserIdentity { - /** Set to the principal name / UPN of the client JWT making the request. */ - principalName?: string; - /** Set to the principal Id of the client JWT making the request. Service principal will not have the principal Id. */ - principalId?: string; - /** Set to the tenant ID of the client JWT making the request. */ - tenantId?: string; - /** Set to the object Id of the client JWT making the request. Not all users have object Id. For CSP (reseller) scenarios for example, object Id is not available. */ - objectId?: string; - /** Set to the app Id of the client JWT making the request. */ - appId?: string; +/** Contains a list of sharedGalleries and their properties */ +export interface SharedGalleryList { + /** + * List of sharedGalleries and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: SharedGallery[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; } -/** Properties of a user's secret store. */ -export interface UserSecretStore { - /** The URI of the user's Key vault. */ - keyVaultUri?: string; - /** The ID of the user's Key vault. */ - keyVaultId?: string; +/** Contains a list of sharedImages and their properties */ +export interface SharedImageList { + /** + * List of sharedImages and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: SharedImage[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; +} + +/** Properties for a shared image version. */ +export interface ImageVersionProperties { + /** Image version name */ + name?: string; +} + +/** Contains a list of users and their properties */ +export interface UserList { + /** + * List of users and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: User[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; } -/** The response of a list operation. */ +/** Contains a list of disks and their properties */ export interface DiskList { - /** Results of the list operation. */ - value?: Disk[]; - /** Link for next set of results. */ + /** + * List of disks and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Disk[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -723,22 +971,17 @@ export interface DetachDiskProperties { leasedByLabVmId?: string; } -/** The response of a list operation. */ -export interface DtlEnvironmentList { - /** Results of the list operation. */ - value?: DtlEnvironment[]; - /** Link for next set of results. */ +/** Contains a list of environments and their properties */ +export interface EnvironmentList { + /** + * List of environments and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Environment[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Properties of an environment deployment. */ -export interface EnvironmentDeploymentProperties { - /** The Azure Resource Manager template's identifier. */ - armTemplateId?: string; - /** The parameters of the Azure Resource Manager template. */ - parameters?: ArmTemplateParameterProperties[]; -} - /** Properties of an Azure Resource Manager template parameter. */ export interface ArmTemplateParameterProperties { /** The name of the template parameter. */ @@ -747,80 +990,39 @@ export interface ArmTemplateParameterProperties { value?: string; } -/** The response of a list operation. */ +/** Contains a list of secrets and their properties */ export interface SecretList { - /** Results of the list operation. */ - value?: Secret[]; - /** Link for next set of results. */ + /** + * List of secrets and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: Secret[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** The response of a list operation. */ +/** Contains a list of serviceFabrics and their properties */ export interface ServiceFabricList { - /** Results of the list operation. */ - value?: ServiceFabric[]; - /** Link for next set of results. */ + /** + * List of serviceFabrics and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ServiceFabric[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** The response of a list operation. */ -export interface LabVirtualMachineList { - /** Results of the list operation. */ - value?: LabVirtualMachine[]; - /** Link for next set of results. */ +/** Contains a list of virtualMachines and their properties */ +export interface VirtualMachineList { + /** + * List of virtualMachines and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: VirtualMachine[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } -/** Properties of an artifact deployment. */ -export interface ArtifactDeploymentStatusProperties { - /** The deployment status of the artifact. */ - deploymentStatus?: string; - /** The total count of the artifacts that were successfully applied. */ - artifactsApplied?: number; - /** The total count of the artifacts that were tentatively applied. */ - totalArtifacts?: number; -} - -/** Properties of a virtual machine returned by the Microsoft.Compute API. */ -export interface ComputeVmProperties { - /** Gets the statuses of the virtual machine. */ - statuses?: ComputeVmInstanceViewStatus[]; - /** Gets the OS type of the virtual machine. */ - osType?: string; - /** Gets the size of the virtual machine. */ - vmSize?: string; - /** Gets the network interface ID of the virtual machine. */ - networkInterfaceId?: string; - /** Gets OS disk blob uri for the virtual machine. */ - osDiskId?: string; - /** Gets data disks blob uri for the virtual machine. */ - dataDiskIds?: string[]; - /** Gets all data disks attached to the virtual machine. */ - dataDisks?: ComputeDataDisk[]; -} - -/** Status information about a virtual machine. */ -export interface ComputeVmInstanceViewStatus { - /** Gets the status Code. */ - code?: string; - /** Gets the short localizable label for the status. */ - displayStatus?: string; - /** Gets the message associated with the status. */ - message?: string; -} - -/** A data disks attached to a virtual machine. */ -export interface ComputeDataDisk { - /** Gets data disk name. */ - name?: string; - /** When backed by a blob, the URI of underlying blob. */ - diskUri?: string; - /** When backed by managed disk, this is the ID of the compute disk resource. */ - managedDiskId?: string; - /** Gets data disk size in GiB. */ - diskSizeGiB?: number; -} - /** Request body for applying artifacts to a virtual machine. */ export interface ApplyArtifactsRequest { /** The list of artifacts to apply. */ @@ -845,11 +1047,14 @@ export interface ResizeLabVirtualMachineProperties { size?: string; } -/** The response of a list operation. */ +/** Contains a list of virtualNetworks and their properties */ export interface VirtualNetworkList { - /** Results of the list operation. */ - value?: VirtualNetwork[]; - /** Link for next set of results. */ + /** + * List of virtualNetworks and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: VirtualNetwork[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -881,14 +1086,8 @@ export interface SubnetOverride { useInVmCreationPermission?: UsagePermissionType; /** Indicates whether public IP addresses can be assigned to virtual machines on this subnet (i.e. Allow, Deny). */ usePublicIpAddressPermission?: UsagePermissionType; - /** Properties that virtual machines on this subnet will share. */ - sharedPublicIpAddressConfiguration?: SubnetSharedPublicIpAddressConfiguration; /** The virtual network pool associated with this subnet. */ virtualNetworkPoolName?: string; -} - -/** Configuration for public IP address sharing. */ -export interface SubnetSharedPublicIpAddressConfiguration { /** Backend ports that virtual machines on this subnet are allowed to expose */ allowedPorts?: Port[]; } @@ -901,6 +1100,17 @@ export interface Port { backendPort?: number; } +/** Contains a list of bastionHosts and their properties */ +export interface BastionHostList { + /** + * List of bastionHosts and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: BastionHost[]; + /** URL to get the next set of operation list results if there are any */ + nextLink?: string; +} + /** The parameters of the export operation. */ export interface ExportResourceUsageParameters { /** The blob storage absolute sas uri with write permission to the container which the usage data needs to be uploaded to. */ @@ -929,11 +1139,14 @@ export interface ImportLabVirtualMachineRequest { destinationVirtualMachineName?: string; } -/** The response of a list operation. */ +/** Contains a list of Lab Vhd and their properties */ export interface LabVhdList { - /** Results of the list operation. */ - value?: LabVhd[]; - /** Link for next set of results. */ + /** + * List of Lab Vhd and their properties + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: LabVhd[]; + /** URL to get the next set of operation list results if there are any */ nextLink?: string; } @@ -951,313 +1164,1262 @@ export interface RetargetScheduleProperties { targetResourceId?: string; } -/** The response of a list operation. */ -export interface ServiceRunnerList { - /** Results of the list operation. */ - value?: ServiceRunner[]; - /** Link for next set of results. */ - nextLink?: string; +/** The resource model definition containing the full set of allowed properties for a resource. Except properties bag, there cannot be a top level property outside of this set. */ +export interface ResourceModelWithAllowedPropertySet { + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** The geo-location where the resource lives */ + location?: string; + /** The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. */ + managedBy?: string; + /** Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. */ + kind?: string; + /** + * The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + identity?: ResourceModelWithAllowedPropertySetIdentity; + sku?: ResourceModelWithAllowedPropertySetSku; + plan?: ResourceModelWithAllowedPropertySetPlan; +} + +/** Identity for the resource. */ +export interface Identity { + /** + * The principal ID of resource identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The tenant ID of resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly tenantId?: string; + /** The identity type. */ + type?: "SystemAssigned"; +} + +/** The resource model definition representing SKU */ +export interface Sku { + /** The name of the SKU. Ex - P3. It is typically a letter+number code */ + name: string; + /** This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. */ + tier?: SkuTier; + /** The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. */ + size?: string; + /** If the service has different generations of hardware, for the same SKU, then that can be captured here. */ + family?: string; + /** If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. */ + capacity?: number; +} + +/** Plan for the resource. */ +export interface Plan { + /** A user defined name of the 3rd Party Artifact that is being procured. */ + name: string; + /** The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic */ + publisher: string; + /** The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. */ + product: string; + /** A publisher provided promotion code as provisioned in Data Market for the said product/artifact. */ + promotionCode?: string; + /** The version of the desired product/artifact. */ + version?: string; +} + +/** The current status of an async operation. */ +export interface OperationStatusResult { + /** Fully qualified ID for the async operation. */ + id?: string; + /** Name of the async operation. */ + name?: string; + /** Operation status. */ + status: string; + /** Percent of the operation that is complete. */ + percentComplete?: number; + /** The start time of the operation. */ + startTime?: Date; + /** The end time of the operation. */ + endTime?: Date; + /** The operations list. */ + operations?: OperationStatusResult[]; + /** If present, details of the operation error. */ + error?: ErrorDetail; +} + +/** Metadata pertaining to the geographic location of the resource. */ +export interface LocationData { + /** A canonical name for the geographic or physical location. */ + name: string; + /** The city or locality where the resource is located. */ + city?: string; + /** The district, state, or province where the resource is located. */ + district?: string; + /** The country or region where the resource is located */ + countryOrRegion?: string; +} + +/** Configuration of key for data encryption */ +export interface EncryptionProperties { + /** Indicates whether or not the encryption is enabled for container registry. */ + status?: EncryptionStatus; + /** Key vault properties. */ + keyVaultProperties?: KeyVaultProperties; +} + +export interface KeyVaultProperties { + /** Key vault uri to access the encryption key. */ + keyIdentifier?: string; + /** The client ID of the identity which will be used to access key vault. */ + identity?: string; +} + +/** The check availability request body. */ +export interface CheckNameAvailabilityRequest { + /** The name of the resource for which availability needs to be checked. */ + name?: string; + /** The resource type. */ + type?: string; } -/** The contents of a shutdown notification. Webhooks can use this type to deserialize the request body when they get notified of an imminent shutdown. */ -export interface ShutdownNotificationContent { - /** The URL to skip auto-shutdown. */ - skipUrl?: string; - /** The URL to delay shutdown by 60 minutes. */ - delayUrl60?: string; - /** The URL to delay shutdown by 2 hours. */ - delayUrl120?: string; - /** The virtual machine to be shut down. */ - vmName?: string; - /** The GUID for the virtual machine to be shut down. */ - guid?: string; - /** The owner of the virtual machine. */ - owner?: string; - /** The URL of the virtual machine. */ - vmUrl?: string; - /** Minutes remaining until shutdown */ - minutesUntilShutdown?: string; - /** The event for which a notification will be sent. */ - eventType?: string; - /** The text for the notification. */ - text?: string; - /** The subscription ID for the schedule. */ - subscriptionId?: string; - /** The resource group name for the schedule. */ - resourceGroupName?: string; - /** The lab for the schedule. */ - labName?: string; +/** The check availability result. */ +export interface CheckNameAvailabilityResponse { + /** Indicates if the resource name is available. */ + nameAvailable?: boolean; + /** The reason why the given name is not available. */ + reason?: CheckNameAvailabilityReason; + /** Detailed reason why the given name is available. */ + message?: string; } -/** A lab. */ -export type Lab = Resource & { +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export type TrackedResource = Resource & { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + location: string; +}; + +/** An Azure Resource Manager template. */ +export type ArmTemplate = Resource & { /** - * The lab's default storage account. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly defaultStorageAccount?: string; + readonly systemData?: SystemData; /** - * The lab's default premium storage account. + * The display name of the ARM template. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly defaultPremiumStorageAccount?: string; + readonly displayName?: string; /** - * The lab's artifact storage account. + * The description of the ARM template. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly artifactsStorageAccount?: string; + readonly description?: string; /** - * The lab's premium data disk storage account. + * The publisher of the ARM template. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly premiumDataDiskStorageAccount?: string; + readonly publisher?: string; /** - * The lab's Key vault. + * The URI to the icon of the ARM template. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly vaultName?: string; - /** Type of storage used by the lab. It can be either Premium or Standard. Default is Premium. */ - labStorageType?: StorageType; - /** The ordered list of artifact resource IDs that should be applied on all Linux VM creations by default, prior to the artifacts specified by the user. */ - mandatoryArtifactsResourceIdsLinux?: string[]; - /** The ordered list of artifact resource IDs that should be applied on all Windows VM creations by default, prior to the artifacts specified by the user. */ - mandatoryArtifactsResourceIdsWindows?: string[]; + readonly icon?: string; /** - * The creation date of the lab. + * The contents of the ARM template. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly contents?: Record; + /** + * The creation date of the armTemplate. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly createdDate?: Date; /** - * The setting to enable usage of premium data disks. - * When its value is 'Enabled', creation of standard or premium data disks is allowed. - * When its value is 'Disabled', only creation of standard data disks is allowed. + * File name and parameter values information from all azuredeploy.*.parameters.json for the ARM template. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - premiumDataDisks?: PremiumDataDisk; - /** The access rights to be granted to the user when provisioning an environment */ - environmentPermission?: EnvironmentPermission; - /** The properties of any lab announcement associated with this lab */ - announcement?: LabAnnouncementProperties; - /** The properties of any lab support message associated with this lab */ - support?: LabSupportProperties; + readonly parametersValueFilesInfo?: ParametersValueFileInfo[]; /** - * The resource group in which all new lab virtual machines will be created. To let DevTest Labs manage resource group creation, set this value to null. + * Whether or not ARM template is enabled for use by lab user. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly vmCreationResourceGroup?: string; + readonly enabled?: boolean; +}; + +/** An artifact. */ +export type Artifact = Resource & { /** - * The public IP address for the lab's load balancer. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly publicIpId?: string; + readonly systemData?: SystemData; /** - * The load balancer used to for lab VMs that use shared IP address. + * The artifact's title. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly loadBalancerId?: string; + readonly title?: string; /** - * The Network Security Group attached to the lab VMs Network interfaces to restrict open ports. + * The artifact's description. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly networkSecurityGroupId?: string; - /** Extended properties of the lab used for experimental features */ - extendedProperties?: { [propertyName: string]: string }; + readonly description?: string; /** - * The provisioning status of the resource. + * The artifact's publisher. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly publisher?: string; + /** + * The file path to the artifact. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly filePath?: string; + /** + * The URI to the artifact icon. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly icon?: string; + /** + * The artifact's target OS. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly targetOsType?: string; + /** + * The artifact's parameters. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly parameters?: Record; + /** + * The artifact's creation date. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; +}; + +/** A cost item. */ +export type LabCost = Resource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * The lab cost details component of the cost data. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly labCostDetails?: LabCostDetailsProperties[]; + /** + * The resource cost component of the cost data. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly resourceCosts?: LabResourceCostProperties[]; + /** The currency code of the cost. */ + currencyCode?: string; + /** The start time of the cost data. */ + startDateTime?: Date; + /** The end time of the cost data. */ + endDateTime?: Date; + /** The creation date of the cost. */ + createdDate?: Date; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; + /** The cost component of the cost item. */ + estimatedLabCost?: number; + /** Target cost status */ + status?: TargetCostStatus; + /** Lab target cost */ + target?: number; + /** Cost thresholds. */ + costThresholds?: CostThresholdProperties[]; + /** Reporting cycle start date. */ + cycleStartDateTime?: Date; + /** Reporting cycle end date. */ + cycleEndDateTime?: Date; + /** Reporting cycle type. */ + cycleType?: ReportingCycleType; +}; + +/** Schedules applicable to a virtual machine. The schedules may have been defined on a VM or on lab level. */ +export type ApplicableSchedule = Resource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesLabVmsStartupId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesLabVmsStartupName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesLabVmsStartupType?: string; + /** Resource tags. */ + tagsPropertiesLabVmsStartupTags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + locationPropertiesLabVmsStartupLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesLabVmsStartupSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesLabVmsStartupPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesLabVmsStartupPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesLabVmsStartupPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesLabVmsStartupPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesLabVmsShutdownId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesLabVmsShutdownName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesLabVmsShutdownType?: string; + /** Resource tags. */ + tagsPropertiesLabVmsShutdownTags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + locationPropertiesLabVmsShutdownLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesLabVmsShutdownSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesLabVmsShutdownPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; +}; + +/** A gallery image. */ +export type GalleryImage = Resource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The author of the gallery image. */ + author?: string; + /** + * The creation date of the gallery image. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; + /** The description of the gallery image. */ + description?: string; + /** The icon of the gallery image. */ + icon?: string; + /** Indicates whether this gallery image is enabled. */ + enabled?: boolean; + /** The third party plan that applies to this image */ + planId?: string; + /** Indicates if the plan has been authorized for programmatic deployment. */ + isPlanAuthorized?: boolean; + /** The offer of the gallery image. */ + offer?: string; + /** The publisher of the gallery image. */ + publisher?: string; + /** The SKU of the gallery image. */ + sku?: string; + /** The OS type of the gallery image. */ + osType?: string; + /** The version of the gallery image. */ + version?: string; +}; + +/** A PolicySet. */ +export type PolicySet = Resource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; +}; + +/** A cost item. */ +export type Cost = Resource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * The lab cost details component of the cost data. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly labCostDetails?: LabCostDetailsProperties[]; + /** + * The resource cost component of the cost data. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly resourceCosts?: LabResourceCostProperties[]; + /** The currency code of the cost. */ + currencyCode?: string; + /** The start time of the cost data. */ + startDateTime?: Date; + /** The end time of the cost data. */ + endDateTime?: Date; + /** The creation date of the cost. */ + createdDate?: Date; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; + /** The cost component of the cost item. */ + estimatedLabCost?: number; + /** Target cost status */ + status?: TargetCostStatus; + /** Lab target cost */ + target?: number; + /** Cost thresholds. */ + costThresholds?: CostThresholdProperties[]; + /** Reporting cycle start date. */ + cycleStartDateTime?: Date; + /** Reporting cycle end date. */ + cycleEndDateTime?: Date; + /** Reporting cycle type. */ + cycleType?: ReportingCycleType; +}; + +/** The resource model definition for an Azure Resource Manager resource with an etag. */ +export type AzureEntityResource = Resource & { + /** + * Resource Etag. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; +}; + +/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ +export type ProxyResource = Resource & {}; + +/** Patch */ +export type ArtifactSourceFragment = Tags & {}; + +/** Patch */ +export type CustomImageFragment = Tags & {}; + +/** Patch */ +export type FormulaFragment = Tags & {}; + +/** Patch */ +export type NotificationChannelFragment = Tags & {}; + +/** Patch */ +export type PolicyFragment = Tags & {}; + +/** Patch */ +export type ScheduleFragment = Tags & {}; + +/** Patch */ +export type SecretFragment = Tags & {}; + +/** Patch */ +export type SharedGalleryFragment = Tags & {}; + +/** Patch */ +export type SharedImageFragment = Tags & {}; + +/** Patch */ +export type UserFragment = Tags & {}; + +/** Patch */ +export type DiskFragment = Tags & {}; + +/** Patch */ +export type EnvironmentFragment = Tags & {}; + +/** Patch */ +export type ServiceFabricFragment = Tags & {}; + +/** Patch */ +export type VirtualMachineFragment = Tags & {}; + +/** Patch */ +export type VirtualNetworkFragment = Tags & {}; + +/** Patch */ +export type BastionHostFragment = Tags & {}; + +/** Patch */ +export type LabFragment = Tags & {}; + +/** Patch */ +export type LabSecretFragment = Tags & {}; + +export type ResourceModelWithAllowedPropertySetIdentity = Identity & {}; + +export type ResourceModelWithAllowedPropertySetSku = Sku & {}; + +export type ResourceModelWithAllowedPropertySetPlan = Plan & {}; + +/** A lab. */ +export type Lab = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Type of identity (SystemAssigned, UserAssigned, None) */ + typeIdentityType?: ManagedIdentityType; + /** The principal id of resource identity. */ + principalId?: string; + /** The tenant identifier of resource. */ + tenantId?: string; + /** The client secret URL of the identity. */ + clientSecretUrl?: string; + /** If Type is 'UserAssigned': List of user assigned identities. */ + userAssignedIdentities?: { [propertyName: string]: Record }; + /** + * The lab's default storage account. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly defaultStorageAccount?: string; + /** + * The lab's default premium storage account. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly defaultPremiumStorageAccount?: string; + /** The lab's artifact storage account. */ + artifactsStorageAccount?: string; + /** + * The lab's premium data disk storage account. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly premiumDataDiskStorageAccount?: string; + /** + * The lab's Key vault. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly vaultName?: string; + /** Type of storage used by the lab. It can be either Premium or Standard. Default is Premium. */ + labStorageType?: StorageType; + /** The ordered list of artifact resource IDs that should be applied on all Linux VM creations by default, prior to the artifacts specified by the user. */ + mandatoryArtifactsResourceIdsLinux?: string[]; + /** The ordered list of artifact resource IDs that should be applied on all Windows VM creations by default, prior to the artifacts specified by the user. */ + mandatoryArtifactsResourceIdsWindows?: string[]; + /** + * The creation date of the lab. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; + /** + * The setting to enable usage of premium data disks. + * When its value is 'Enabled', creation of standard or premium data disks is allowed. + * When its value is 'Disabled', only creation of standard data disks is allowed. + */ + premiumDataDisks?: PremiumDataDisk; + /** The access rights to be granted to the user when provisioning an environment */ + environmentPermission?: EnvironmentPermission; + /** The resource group ID in which all new lab virtual machines will be created. Ex: /subscriptions/subId/resourceGroups/rgName To let DevTest Labs manage resource group creation, set this value to null. */ + vmCreationResourceGroup?: string; + /** + * The public IP address for the lab's load balancer. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly publicIpId?: string; + /** + * The load balancer used to for lab VMs that use shared IP address. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly loadBalancerId?: string; + /** + * The Network Security Group attached to the lab VMs Network interfaces to restrict open ports. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly networkSecurityGroupId?: string; + /** Extended properties of the lab used for experimental features */ + extendedProperties?: { [propertyName: string]: string }; + /** Is browser connect enabled for the lab */ + browserConnect?: EnableStatus; + /** Is auto upgrade of CSE disabled for the lab? */ + disableAutoUpgradeCseMinorVersion?: boolean; + /** List of identities which can be used for management of resources. */ + managementIdentities?: { [propertyName: string]: Record }; + /** Indicates whether to create Lab resources (e.g. Storage accounts and Key Vaults) in network isolation. */ + isolateLabResources?: EnableStatus; + /** Default secret for creating virtual machines. */ + defaultSecretName?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + /** Gets or sets resourceId of the disk encryption set to use for enabling encryption at rest. */ + diskEncryptionSetId?: string; + /** Gets or sets the type of key used to encrypt the data of the disk. Possible values include: 'EncryptionAtRestWithPlatformKey', 'EncryptionAtRestWithCustomerKey' */ + typePropertiesEncryptionType?: EncryptionType; + /** Is the lab support banner active/enabled at this time? */ + enabledPropertiesSupportEnabled?: EnableStatus; + /** The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. */ + markdownPropertiesSupportMarkdown?: string; + /** The plain text title for the lab announcement */ + title?: string; + /** The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. */ + markdownPropertiesAnnouncementMarkdown?: string; + /** Is the lab announcement active/enabled at this time? */ + enabledPropertiesAnnouncementEnabled?: EnableStatus; + /** The time at which the announcement expires (null for never) */ + expirationDate?: Date; + /** Has this announcement expired? */ + expired?: boolean; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesAnnouncementProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesAnnouncementUniqueIdentifier?: string; +}; + +/** A schedule. */ +export type Schedule = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minute?: number; + /** The time of day the schedule will occur. */ + timePropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesWeeklyRecurrenceTime?: string; +}; + +/** Properties of an artifact source. */ +export type ArtifactSource = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The artifact source's display name. */ + displayName?: string; + /** The artifact source's URI. */ + uri?: string; + /** The artifact source's type. */ + sourceType?: SourceControlType; + /** The folder containing artifacts. */ + folderPath?: string; + /** The folder containing Azure Resource Manager templates. */ + armTemplateFolderPath?: string; + /** The artifact source's branch reference. */ + branchRef?: string; + /** The security token to authenticate to the artifact source. */ + securityToken?: string; + /** Indicates if the artifact source is enabled (values: Enabled, Disabled). */ + status?: EnableStatus; + /** + * The artifact source's creation date. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDate?: Date; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; +}; + +/** A custom image. */ +export type CustomImage = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The description of the custom image. */ + description?: string; + /** The author of the custom image. */ + author?: string; + /** + * The creation date of the custom image. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly creationDate?: Date; + /** The Managed Image Id backing the custom image. */ + managedImageId?: string; + /** The Managed Snapshot Id backing the custom image. */ + managedSnapshotId?: string; + /** Storage information about the data disks present in the custom image */ + dataDiskStorageInfo?: DataDiskStorageTypeInfo[]; + /** Whether or not the custom images underlying offer/plan has been enabled for programmatic deployment */ + isPlanAuthorized?: boolean; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; + /** The id of the plan, equivalent to name of the plan */ + idPropertiesCustomImagePlanId?: string; + /** The publisher for the plan from the marketplace image the custom image is derived from */ + publisher?: string; + /** The offer for the plan from the marketplace image the custom image is derived from */ + offer?: string; + /** The image name. */ + imageName?: string; + /** Indicates whether sysprep has been run on the VHD. */ + sysPrep?: boolean; + /** The OS type of the custom image (i.e. Windows, Linux) */ + osType?: CustomImageOsType; + /** The source vm identifier. */ + sourceVmId?: string; + /** The state of the Linux OS (i.e. NonDeprovisioned, DeprovisionRequested, DeprovisionApplied). */ + linuxOsState?: LinuxOsState; + /** The state of the Windows OS (i.e. NonSysprepped, SysprepRequested, SysprepApplied). */ + windowsOsState?: WindowsOsState; +}; + +/** A formula for creating a VM, specifying an image base and other parameters */ +export type Formula = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The description of the formula. */ + description?: string; + /** + * The author of the formula. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly author?: string; + /** The OS type of the formula. */ + osTypePropertiesOsType?: string; + /** + * The creation date of the formula. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly creationDate?: Date; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + /** The identifier of the VM from which a formula is to be created. */ + labVmId?: string; + /** The name of the virtual machine or environment */ + namePropertiesFormulaContentName?: string; + /** The location of the new virtual machine or environment */ + locationPropertiesFormulaContentLocation?: string; + /** The tags of the resource. */ + tagsPropertiesFormulaContentTags?: { [propertyName: string]: string }; + /** The notes of the virtual machine. */ + notes?: string; + /** The object identifier of the owner of the virtual machine. */ + ownerObjectId?: string; + /** The user principal name of the virtual machine owner. */ + ownerUserPrincipalName?: string; + /** + * The object identifier of the creator of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdByUserId?: string; + /** + * The email address of creator of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdByUser?: string; + /** The creation date of the virtual machine. */ + createdDatePropertiesFormulaContentPropertiesCreatedDate?: Date; + /** + * The resource identifier (Microsoft.Compute) of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly computeId?: string; + /** The custom image identifier of the virtual machine. */ + customImageId?: string; + /** The shared gallery image version resource identifier of the virtual machine. */ + galleryImageVersionId?: string; + /** The shared image resource identifier of the virtual machine. */ + sharedImageId?: string; + /** The shared image version for the specified shared image Id. Will use latest if not specified. */ + sharedImageVersion?: string; + /** + * The OS type of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly osTypePropertiesFormulaContentPropertiesOsType?: string; + /** The size of the virtual machine. */ + size?: string; + /** The user name of the virtual machine. */ + userName?: string; + /** The password of the virtual machine administrator. */ + password?: string; + /** The SSH key of the virtual machine administrator. */ + sshKey?: string; + /** Indicates whether this virtual machine uses an SSH key for authentication. */ + isAuthenticationWithSshKey?: boolean; + /** + * The fully-qualified domain name of the virtual machine. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fqdn?: string; + /** The lab subnet name of the virtual machine. */ + labSubnetName?: string; + /** The lab virtual network identifier of the virtual machine. */ + labVirtualNetworkId?: string; + /** Indicates whether the virtual machine is to be created without a public IP address. */ + disallowPublicIpAddress?: boolean; + /** The artifacts to be installed on the virtual machine. */ + artifacts?: ArtifactInstallProperties[]; + /** The id of the plan associated with the virtual machine image */ + planId?: string; + /** Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. */ + osDiskSizeGb?: number; + /** The expiration date for VM. */ + expirationDate?: Date; + /** Indicates whether another user can take ownership of the virtual machine */ + allowClaim?: boolean; + /** Storage type to use for virtual machine (i.e. Standard, Premium, StandardSSD). */ + storageType?: StorageType; + /** + * Tells source of creation of lab virtual machine. Output property only. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly virtualMachineCreationSource?: VirtualMachineCreationSource; + /** The resource ID of the environment that contains this virtual machine, if any. */ + environmentId?: string; + /** New or existing data disks to attach to the virtual machine after creation */ + dataDiskParameters?: DataDiskProperties[]; + /** Virtual Machine schedules to be created */ + scheduleParameters?: ScheduleCreationParameter[]; /** - * The unique immutable identifier of a resource (Guid). + * Last known compute power state captured in DTL * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; -}; - -/** A schedule. */ -export type Schedule = Resource & { - /** The status of the schedule (i.e. Enabled, Disabled) */ - status?: EnableStatus; - /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ - taskType?: string; - /** If the schedule will occur only some days of the week, specify the weekly recurrence. */ - weeklyRecurrence?: WeekDetails; - /** If the schedule will occur once each day of the week, specify the daily recurrence. */ - dailyRecurrence?: DayDetails; - /** If the schedule will occur multiple times a day, specify the hourly recurrence. */ - hourlyRecurrence?: HourDetails; - /** The time zone ID (e.g. Pacific Standard time). */ - timeZoneId?: string; - /** Notification settings. */ - notificationSettings?: NotificationSettings; + readonly lastKnownPowerState?: string; /** - * The creation date of the schedule. + * Flag to determine if apply artifacts can be triggered at the time of fetching the document. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; - /** The resource ID to which the schedule belongs */ - targetResourceId?: string; + readonly canApplyArtifacts?: boolean; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly provisioningStatePropertiesFormulaContentPropertiesProvisioningState?: string; /** * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; -}; - -/** Properties of an artifact source. */ -export type ArtifactSource = Resource & { - /** The artifact source's display name. */ - displayName?: string; - /** The artifact source's URI. */ - uri?: string; - /** The artifact source's type. */ - sourceType?: SourceControlType; - /** The folder containing artifacts. */ - folderPath?: string; - /** The folder containing Azure Resource Manager templates. */ - armTemplateFolderPath?: string; - /** The artifact source's branch reference. */ - branchRef?: string; - /** The security token to authenticate to the artifact source. */ - securityToken?: string; - /** Indicates if the artifact source is enabled (values: Enabled, Disabled). */ - status?: EnableStatus; - /** - * The artifact source's creation date. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly createdDate?: Date; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesUniqueIdentifier?: string; /** - * The provisioning status of the resource. + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly idPropertiesFormulaContentPropertiesApplicableScheduleId?: string; /** - * The unique immutable identifier of a resource (Guid). + * The name of the resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; -}; - -/** An Azure Resource Manager template. */ -export type ArmTemplate = Resource & { + readonly namePropertiesFormulaContentPropertiesApplicableScheduleName?: string; /** - * The display name of the ARM template. + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly displayName?: string; + readonly typePropertiesFormulaContentPropertiesApplicableScheduleType?: string; /** - * The description of the ARM template. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly description?: string; + readonly systemDataPropertiesFormulaContentPropertiesApplicableScheduleSystemData?: SystemData; /** - * The publisher of the ARM template. + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly publisher?: string; + readonly idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; /** - * The URI to the icon of the ARM template. + * The name of the resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly icon?: string; + readonly namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; /** - * The contents of the ARM template. + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly contents?: Record; + readonly typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + /** Resource tags. */ + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; /** - * The creation date of the armTemplate. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; + readonly systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; /** - * File name and parameter values information from all azuredeploy.*.parameters.json for the ARM template. + * The creation date of the schedule. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly parametersValueFilesInfo?: ParametersValueFileInfo[]; + readonly createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; /** - * Whether or not ARM template is enabled for use by lab user. + * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly enabled?: boolean; -}; - -/** An artifact. */ -export type Artifact = Resource & { + readonly provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; /** - * The artifact's title. + * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly title?: string; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; /** - * The artifact's description. + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly description?: string; + readonly idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; /** - * The artifact's publisher. + * The name of the resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly publisher?: string; + readonly namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; /** - * The file path to the artifact. + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly filePath?: string; + readonly typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + /** Resource tags. */ + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; /** - * The URI to the artifact icon. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly icon?: string; + readonly systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; /** - * The artifact's target OS. + * The creation date of the schedule. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetOsType?: string; + readonly createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; /** - * The artifact's parameters. + * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly parameters?: Record; + readonly provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; /** - * The artifact's creation date. + * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; + readonly uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + /** The resource ID of the virtual network. */ + virtualNetworkId?: string; + /** The resource ID of the sub net. */ + subnetId?: string; + /** The resource ID of the public IP address. */ + publicIpAddressId?: string; + /** The public IP address. */ + publicIpAddress?: string; + /** The private IP address. */ + privateIpAddress?: string; + /** The DNS name. */ + dnsName?: string; + /** The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol). */ + rdpAuthority?: string; + /** The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH. */ + sshAuthority?: string; + /** The incoming NAT rules */ + inboundNatRules?: InboundNatRule[]; + /** Gets the statuses of the virtual machine. */ + statuses?: ComputeVmInstanceViewStatus[]; + /** Gets the OS type of the virtual machine. */ + osTypePropertiesFormulaContentPropertiesComputeVmOsType?: string; + /** Gets the size of the virtual machine. */ + vmSize?: string; + /** Gets the network interface ID of the virtual machine. */ + networkInterfaceId?: string; + /** Gets OS disk blob uri for the virtual machine. */ + osDiskId?: string; + /** Gets data disks blob uri for the virtual machine. */ + dataDiskIds?: string[]; + /** Gets all data disks attached to the virtual machine. */ + dataDisks?: ComputeDataDisk[]; + /** The offer of the gallery image. */ + offer?: string; + /** The publisher of the gallery image. */ + publisher?: string; + /** The SKU of the gallery image. */ + sku?: string; + /** The OS type of the gallery image. */ + osTypePropertiesFormulaContentPropertiesGalleryImageReferenceOsType?: string; + /** The version of the gallery image. */ + version?: string; + /** The deployment status of the artifact. */ + deploymentStatus?: string; + /** The total count of the artifacts that were successfully applied. */ + artifactsApplied?: number; + /** The total count of the artifacts that were tentatively applied. */ + totalArtifacts?: number; + /** The number of virtual machine instances to create. */ + instanceCount?: number; }; -/** A cost item. */ -export type LabCost = Resource & { - /** The target cost properties */ - targetCost?: TargetCostProperties; - /** - * The lab cost summary component of the cost data. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly labCostSummary?: LabCostSummaryProperties; +/** A notification. */ +export type NotificationChannel = TrackedResource & { /** - * The lab cost details component of the cost data. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly labCostDetails?: LabCostDetailsProperties[]; + readonly systemData?: SystemData; + /** The webhook URL to send notifications to. */ + webHookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocale?: string; + /** Description of notification. */ + description?: string; + /** The list of event for which this notification is enabled. */ + events?: Event[]; /** - * The resource cost component of the cost data. + * The creation date of the notification channel. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resourceCosts?: LabResourceCostProperties[]; - /** The currency code of the cost. */ - currencyCode?: string; - /** The start time of the cost data. */ - startDateTime?: Date; - /** The end time of the cost data. */ - endDateTime?: Date; - /** The creation date of the cost. */ - createdDate?: Date; + readonly createdDate?: Date; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1270,31 +2432,30 @@ export type LabCost = Resource & { readonly uniqueIdentifier?: string; }; -/** A custom image. */ -export type CustomImage = Resource & { - /** The virtual machine from which the image is to be created. */ - vm?: CustomImagePropertiesFromVm; - /** The VHD from which the image is to be created. */ - vhd?: CustomImagePropertiesCustom; - /** The description of the custom image. */ +/** A Policy. */ +export type Policy = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The description of the policy. */ description?: string; - /** The author of the custom image. */ - author?: string; + /** The status of the policy. */ + status?: PolicyStatus; + /** The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc. */ + factName?: PolicyFactName; + /** The fact data of the policy. */ + factData?: string; + /** The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy). */ + threshold?: string; + /** The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy). */ + evaluatorType?: PolicyEvaluatorType; /** - * The creation date of the custom image. + * The creation date of the policy. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly creationDate?: Date; - /** The Managed Image Id backing the custom image. */ - managedImageId?: string; - /** The Managed Snapshot Id backing the custom image. */ - managedSnapshotId?: string; - /** Storage information about the data disks present in the custom image */ - dataDiskStorageInfo?: DataDiskStorageTypeInfo[]; - /** Storage information about the plan related to this custom image */ - customImagePlan?: CustomImagePropertiesFromPlan; - /** Whether or not the custom images underlying offer/plan has been enabled for programmatic deployment */ - isPlanAuthorized?: boolean; + readonly createdDate?: Date; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1307,26 +2468,26 @@ export type CustomImage = Resource & { readonly uniqueIdentifier?: string; }; -/** A formula for creating a VM, specifying an image base and other parameters */ -export type Formula = Resource & { - /** The description of the formula. */ - description?: string; +/** A shared secret in a lab. */ +export type LabSecret = TrackedResource & { /** - * The author of the formula. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly author?: string; - /** The OS type of the formula. */ - osType?: string; + readonly systemData?: SystemData; + /** The value of the secret for secret creation. */ + value?: string; /** - * The creation date of the formula. + * The name of the entry in the lab KeyVault. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly creationDate?: Date; - /** The content of the formula. */ - formulaContent?: LabVirtualMachineCreationParameter; - /** Information about a VM from which a formula is to be created. */ - vm?: FormulaPropertiesFromVm; + readonly keyVaultEntry?: string; + /** Is the secret enabled for use with artifacts? */ + enabledForArtifacts?: boolean; + /** Is the secret enabled for use with creation of VMs? */ + enabledForVmCreation?: boolean; + /** Is the secret enabled for use with ARM environments? */ + enabledForArmEnvironments?: boolean; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1339,46 +2500,48 @@ export type Formula = Resource & { readonly uniqueIdentifier?: string; }; -/** A gallery image. */ -export type GalleryImage = Resource & { - /** The author of the gallery image. */ - author?: string; +/** A container for a managed identity to execute DevTest lab services. */ +export type ServiceRunner = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Type of identity (SystemAssigned, UserAssigned, None) */ + typeIdentityType?: ManagedIdentityType; + /** The principal id of resource identity. */ + principalId?: string; + /** The tenant identifier of resource. */ + tenantId?: string; + /** The client secret URL of the identity. */ + clientSecretUrl?: string; + /** If Type is 'UserAssigned': List of user assigned identities. */ + userAssignedIdentities?: { [propertyName: string]: Record }; + /** The purpose of bringing the identity to the lab. Ex: To use during Environment creation or to deploy on the VMs. */ + identityUsageType?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; /** - * The creation date of the gallery image. + * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; - /** The description of the gallery image. */ - description?: string; - /** The image reference of the gallery image. */ - imageReference?: GalleryImageReference; - /** The icon of the gallery image. */ - icon?: string; - /** Indicates whether this gallery image is enabled. */ - enabled?: boolean; - /** The third party plan that applies to this image */ - planId?: string; - /** Indicates if the plan has been authorized for programmatic deployment. */ - isPlanAuthorized?: boolean; + readonly uniqueIdentifier?: string; }; -/** A notification. */ -export type NotificationChannel = Resource & { - /** The webhook URL to send notifications to. */ - webHookUrl?: string; - /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ - emailRecipient?: string; - /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ - notificationLocale?: string; - /** Description of notification. */ - description?: string; - /** The list of event for which this notification is enabled. */ - events?: Event[]; +/** Properties of a shared gallery */ +export type SharedGallery = TrackedResource & { /** - * The creation date of the notification channel. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; + readonly systemData?: SystemData; + /** The shared image gallery resource Id */ + galleryId?: string; + /** Enables all images in the gallery to be available in the lab for VM creation. This will override the EnableState on shared images */ + allowAllImages?: EnableState; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1391,25 +2554,25 @@ export type NotificationChannel = Resource & { readonly uniqueIdentifier?: string; }; -/** A Policy. */ -export type Policy = Resource & { - /** The description of the policy. */ - description?: string; - /** The status of the policy. */ - status?: PolicyStatus; - /** The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc. */ - factName?: PolicyFactName; - /** The fact data of the policy. */ - factData?: string; - /** The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy). */ - threshold?: string; - /** The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy). */ - evaluatorType?: PolicyEvaluatorType; +/** Properties of a shared image */ +export type SharedImage = TrackedResource & { /** - * The creation date of the policy. + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly createdDate?: Date; + readonly systemData?: SystemData; + /** Shared Image definition name in shared image gallery */ + definitionName?: string; + /** The operating system of the image */ + osType?: OsType; + /** The type of image in the gallery (generalized or specialized) */ + imageType?: ImageType; + /** Whether or not the image is enabled. */ + enableState?: EnableState; + /** Display name of the image */ + displayName?: string; + /** List of image versions in definition */ + versions?: ImageVersionProperties[]; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1422,18 +2585,13 @@ export type Policy = Resource & { readonly uniqueIdentifier?: string; }; -/** A container for a managed identity to execute DevTest lab services. */ -export type ServiceRunner = Resource & { - /** The identity of the resource. */ - identity?: IdentityProperties; -}; - /** Profile of a lab user. */ -export type User = Resource & { - /** The identity of the user. */ - identity?: UserIdentity; - /** The secret store of the user. */ - secretStore?: UserSecretStore; +export type User = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** * The creation date of the user profile. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1449,10 +2607,29 @@ export type User = Resource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly uniqueIdentifier?: string; + /** The URI of the user's Key vault. */ + keyVaultUri?: string; + /** The ID of the user's Key vault. */ + keyVaultId?: string; + /** Set to the principal name / UPN of the client JWT making the request. */ + principalName?: string; + /** Set to the principal Id of the client JWT making the request. Service principal will not have the principal Id. */ + principalId?: string; + /** Set to the tenant ID of the client JWT making the request. */ + tenantId?: string; + /** Set to the object Id of the client JWT making the request. Not all users have object Id. For CSP (reseller) scenarios for example, object Id is not available. */ + objectId?: string; + /** Set to the app Id of the client JWT making the request. */ + appId?: string; }; /** A Disk. */ -export type Disk = Resource & { +export type Disk = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The storage type for the disk (i.e. Standard, Premium). */ diskType?: StorageType; /** The size of the disk in Gibibytes. */ @@ -1487,9 +2664,12 @@ export type Disk = Resource & { }; /** An environment, which is essentially an ARM template deployment. */ -export type DtlEnvironment = Resource & { - /** The deployment properties of the environment. */ - deploymentProperties?: EnvironmentDeploymentProperties; +export type Environment = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The display name of the Azure Resource Manager template that produced the environment. */ armTemplateDisplayName?: string; /** @@ -1512,10 +2692,19 @@ export type DtlEnvironment = Resource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly uniqueIdentifier?: string; + /** The Azure Resource Manager template's identifier. */ + armTemplateId?: string; + /** The parameters of the Azure Resource Manager template. */ + parameters?: ArmTemplateParameterProperties[]; }; /** A secret. */ -export type Secret = Resource & { +export type Secret = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The value of the secret for secret creation. */ value?: string; /** @@ -1530,39 +2719,190 @@ export type Secret = Resource & { readonly uniqueIdentifier?: string; }; -/** Schedules applicable to a virtual machine. The schedules may have been defined on a VM or on lab level. */ -export type ApplicableSchedule = Resource & { - /** The auto-shutdown schedule, if one has been set at the lab or lab resource level. */ - labVmsShutdown?: Schedule; - /** The auto-startup schedule, if one has been set at the lab or lab resource level. */ - labVmsStartup?: Schedule; -}; - /** A Service Fabric. */ -export type ServiceFabric = Resource & { +export type ServiceFabric = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The backing service fabric resource's id */ externalServiceFabricId?: string; /** The resource id of the environment under which the service fabric resource is present */ environmentId?: string; /** - * The applicable schedule for the virtual machine. + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableScheduleId?: string; + /** + * The name of the resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly applicableSchedule?: ApplicableSchedule; + readonly namePropertiesApplicableScheduleName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableScheduleType?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; /** * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; }; /** A virtual machine. */ -export type LabVirtualMachine = Resource & { +export type VirtualMachine = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The notes of the virtual machine. */ notes?: string; /** The object identifier of the owner of the virtual machine. */ @@ -1580,7 +2920,7 @@ export type LabVirtualMachine = Resource & { */ readonly createdByUser?: string; /** The creation date of the virtual machine. */ - createdDate?: Date; + createdDatePropertiesCreatedDate?: Date; /** * The resource identifier (Microsoft.Compute) of the virtual machine. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1588,11 +2928,17 @@ export type LabVirtualMachine = Resource & { readonly computeId?: string; /** The custom image identifier of the virtual machine. */ customImageId?: string; + /** The shared gallery image version resource identifier of the virtual machine. */ + galleryImageVersionId?: string; + /** The shared image resource identifier of the virtual machine. */ + sharedImageId?: string; + /** The shared image version for the specified shared image Id. Will use latest if not specified. */ + sharedImageVersion?: string; /** * The OS type of the virtual machine. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly osType?: string; + readonly osTypePropertiesOsType?: string; /** The size of the virtual machine. */ size?: string; /** The user name of the virtual machine. */ @@ -1616,33 +2962,16 @@ export type LabVirtualMachine = Resource & { disallowPublicIpAddress?: boolean; /** The artifacts to be installed on the virtual machine. */ artifacts?: ArtifactInstallProperties[]; - /** - * The artifact deployment status for the virtual machine. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly artifactDeploymentStatus?: ArtifactDeploymentStatusProperties; - /** The Microsoft Azure Marketplace image reference of the virtual machine. */ - galleryImageReference?: GalleryImageReference; /** The id of the plan associated with the virtual machine image */ planId?: string; - /** - * The compute virtual machine properties. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly computeVm?: ComputeVmProperties; - /** The network interface properties. */ - networkInterface?: NetworkInterfaceProperties; - /** - * The applicable schedule for the virtual machine. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly applicableSchedule?: ApplicableSchedule; + /** Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image. */ + osDiskSizeGb?: number; /** The expiration date for VM. */ expirationDate?: Date; /** Indicates whether another user can take ownership of the virtual machine */ allowClaim?: boolean; - /** Storage type to use for virtual machine (i.e. Standard, Premium). */ - storageType?: string; + /** Storage type to use for virtual machine (i.e. Standard, Premium, StandardSSD). */ + storageType?: StorageType; /** * Tells source of creation of lab virtual machine. Output property only. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1655,24 +2984,236 @@ export type LabVirtualMachine = Resource & { /** Virtual Machine schedules to be created */ scheduleParameters?: ScheduleCreationParameter[]; /** - * Last known compute power state captured in DTL + * Last known compute power state captured in DTL + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastKnownPowerState?: string; + /** + * Flag to determine if apply artifacts can be triggered at the time of fetching the document. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly canApplyArtifacts?: boolean; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesUniqueIdentifier?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableScheduleId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableScheduleName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableScheduleType?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableScheduleSystemData?: SystemData; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsStartupId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsStartupName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsStartupType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation?: string; + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime?: string; + /** + * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly idPropertiesApplicableSchedulePropertiesLabVmsShutdownId?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly namePropertiesApplicableSchedulePropertiesLabVmsShutdownName?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly typePropertiesApplicableSchedulePropertiesLabVmsShutdownType?: string; + /** Resource tags. */ + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags?: { + [propertyName: string]: string; + }; + /** The geo-location where the resource lives */ + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation?: string; + /** + * The system metadata relating to this resource * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly lastKnownPowerState?: string; + readonly systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData?: SystemData; + /** The status of the schedule (i.e. Enabled, Disabled) */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus?: EnableStatus; + /** The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart). */ + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType?: string; + /** The time zone ID (e.g. Pacific Standard time). */ + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId?: string; + /** + * The creation date of the schedule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate?: Date; + /** The resource ID to which the schedule belongs */ + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId?: string; /** * The provisioning status of the resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: string; + readonly provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState?: string; /** * The unique immutable identifier of a resource (Guid). * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly uniqueIdentifier?: string; + readonly uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier?: string; + /** If notifications are enabled for this schedule (i.e. Enabled, Disabled). */ + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus?: EnableStatus; + /** Time in minutes before event at which notification will be sent. */ + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes?: number; + /** The webhook URL to which the notification will be sent. */ + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl?: string; + /** The email recipient to send notifications to (can be a list of semi-colon separated email addresses). */ + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient?: string; + /** The locale to use when sending a notification (fallback for unsupported languages is EN). */ + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale?: string; + /** Minutes of the hour the schedule will run. */ + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute?: number; + /** The time of day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime?: string; + /** The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.). */ + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays?: string[]; + /** The time of the day the schedule will occur. */ + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime?: string; + /** The resource ID of the virtual network. */ + virtualNetworkId?: string; + /** The resource ID of the sub net. */ + subnetId?: string; + /** The resource ID of the public IP address. */ + publicIpAddressId?: string; + /** The public IP address. */ + publicIpAddress?: string; + /** The private IP address. */ + privateIpAddress?: string; + /** The DNS name. */ + dnsName?: string; + /** The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol). */ + rdpAuthority?: string; + /** The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH. */ + sshAuthority?: string; + /** The incoming NAT rules */ + inboundNatRules?: InboundNatRule[]; + /** Gets the statuses of the virtual machine. */ + statuses?: ComputeVmInstanceViewStatus[]; + /** Gets the OS type of the virtual machine. */ + osTypePropertiesComputeVmOsType?: string; + /** Gets the size of the virtual machine. */ + vmSize?: string; + /** Gets the network interface ID of the virtual machine. */ + networkInterfaceId?: string; + /** Gets OS disk blob uri for the virtual machine. */ + osDiskId?: string; + /** Gets data disks blob uri for the virtual machine. */ + dataDiskIds?: string[]; + /** Gets all data disks attached to the virtual machine. */ + dataDisks?: ComputeDataDisk[]; + /** The offer of the gallery image. */ + offer?: string; + /** The publisher of the gallery image. */ + publisher?: string; + /** The SKU of the gallery image. */ + sku?: string; + /** The OS type of the gallery image. */ + osTypePropertiesGalleryImageReferenceOsType?: string; + /** The version of the gallery image. */ + version?: string; + /** The deployment status of the artifact. */ + deploymentStatus?: string; + /** The total count of the artifacts that were successfully applied. */ + artifactsApplied?: number; + /** The total count of the artifacts that were tentatively applied. */ + totalArtifacts?: number; }; /** A virtual network. */ -export type VirtualNetwork = Resource & { +export type VirtualNetwork = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; /** The allowed subnets of the virtual network. */ allowedSubnets?: Subnet[]; /** The description of the virtual network. */ @@ -1703,50 +3244,66 @@ export type VirtualNetwork = Resource & { readonly uniqueIdentifier?: string; }; -/** Properties of an artifact source. */ -export type ArtifactSourceFragment = UpdateResource & {}; - -/** A custom image. */ -export type CustomImageFragment = UpdateResource & {}; - -/** A formula for creating a VM, specifying an image base and other parameters */ -export type FormulaFragment = UpdateResource & {}; - -/** A notification. */ -export type NotificationChannelFragment = UpdateResource & {}; - -/** A Policy. */ -export type PolicyFragment = UpdateResource & {}; - -/** A schedule. */ -export type ScheduleFragment = UpdateResource & {}; - -/** Profile of a lab user. */ -export type UserFragment = UpdateResource & {}; - -/** A Disk. */ -export type DiskFragment = UpdateResource & {}; - -/** An environment, which is essentially an ARM template deployment. */ -export type DtlEnvironmentFragment = UpdateResource & {}; - -/** A secret. */ -export type SecretFragment = UpdateResource & {}; - -/** A Service Fabric. */ -export type ServiceFabricFragment = UpdateResource & {}; +/** Profile of a Bastion Host */ +export type BastionHost = TrackedResource & { + /** + * The system metadata relating to this resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * The ID of the external BastionHost resource that corresponds to this DTL BastionHost + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly externalBastionHostId?: string; + /** + * The ID of the PublicIpAddress resource that is created by and paired with this BastionHost + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly ipAddressId?: string; + /** + * The provisioning status of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: string; + /** + * The unique immutable identifier of a resource (Guid). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly uniqueIdentifier?: string; +}; -/** A virtual machine. */ -export type LabVirtualMachineFragment = UpdateResource & {}; +/** Known values of {@link Origin} that the service accepts. */ +export enum KnownOrigin { + User = "user", + System = "system", + UserSystem = "user,system" +} -/** A virtual network. */ -export type VirtualNetworkFragment = UpdateResource & {}; +/** + * Defines values for Origin. \ + * {@link KnownOrigin} can be used interchangeably with Origin, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **user** \ + * **system** \ + * **user,system** + */ +export type Origin = string; -/** A lab. */ -export type LabFragment = UpdateResource & {}; +/** Known values of {@link ActionType} that the service accepts. */ +export enum KnownActionType { + Internal = "Internal" +} -/** Schedules applicable to a virtual machine. The schedules may have been defined on a VM or on lab level. */ -export type ApplicableScheduleFragment = UpdateResource & {}; +/** + * Defines values for ActionType. \ + * {@link KnownActionType} can be used interchangeably with ActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Internal** + */ +export type ActionType = string; /** Known values of {@link StorageType} that the service accepts. */ export enum KnownStorageType { @@ -1814,10 +3371,68 @@ export enum KnownEnableStatus { */ export type EnableStatus = string; +/** Known values of {@link EncryptionType} that the service accepts. */ +export enum KnownEncryptionType { + EncryptionAtRestWithPlatformKey = "EncryptionAtRestWithPlatformKey", + EncryptionAtRestWithCustomerKey = "EncryptionAtRestWithCustomerKey" +} + +/** + * Defines values for EncryptionType. \ + * {@link KnownEncryptionType} can be used interchangeably with EncryptionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **EncryptionAtRestWithPlatformKey** \ + * **EncryptionAtRestWithCustomerKey** + */ +export type EncryptionType = string; + +/** Known values of {@link ManagedIdentityType} that the service accepts. */ +export enum KnownManagedIdentityType { + None = "None", + SystemAssigned = "SystemAssigned", + UserAssigned = "UserAssigned", + SystemAssignedUserAssigned = "SystemAssigned,UserAssigned" +} + +/** + * Defines values for ManagedIdentityType. \ + * {@link KnownManagedIdentityType} can be used interchangeably with ManagedIdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **SystemAssigned** \ + * **UserAssigned** \ + * **SystemAssigned,UserAssigned** + */ +export type ManagedIdentityType = string; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + User = "User", + Application = "Application", + ManagedIdentity = "ManagedIdentity", + Key = "Key" +} + +/** + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** + */ +export type CreatedByType = string; + /** Known values of {@link HttpStatusCode} that the service accepts. */ export enum KnownHttpStatusCode { Continue = "Continue", SwitchingProtocols = "SwitchingProtocols", + Processing = "Processing", + EarlyHints = "EarlyHints", OK = "OK", Created = "Created", Accepted = "Accepted", @@ -1825,6 +3440,9 @@ export enum KnownHttpStatusCode { NoContent = "NoContent", ResetContent = "ResetContent", PartialContent = "PartialContent", + MultiStatus = "MultiStatus", + AlreadyReported = "AlreadyReported", + IMUsed = "IMUsed", MultipleChoices = "MultipleChoices", Ambiguous = "Ambiguous", MovedPermanently = "MovedPermanently", @@ -1838,6 +3456,7 @@ export enum KnownHttpStatusCode { Unused = "Unused", TemporaryRedirect = "TemporaryRedirect", RedirectKeepVerb = "RedirectKeepVerb", + PermanentRedirect = "PermanentRedirect", BadRequest = "BadRequest", Unauthorized = "Unauthorized", PaymentRequired = "PaymentRequired", @@ -1856,13 +3475,26 @@ export enum KnownHttpStatusCode { UnsupportedMediaType = "UnsupportedMediaType", RequestedRangeNotSatisfiable = "RequestedRangeNotSatisfiable", ExpectationFailed = "ExpectationFailed", + MisdirectedRequest = "MisdirectedRequest", + UnprocessableEntity = "UnprocessableEntity", + Locked = "Locked", + FailedDependency = "FailedDependency", UpgradeRequired = "UpgradeRequired", + PreconditionRequired = "PreconditionRequired", + TooManyRequests = "TooManyRequests", + RequestHeaderFieldsTooLarge = "RequestHeaderFieldsTooLarge", + UnavailableForLegalReasons = "UnavailableForLegalReasons", InternalServerError = "InternalServerError", NotImplemented = "NotImplemented", BadGateway = "BadGateway", ServiceUnavailable = "ServiceUnavailable", GatewayTimeout = "GatewayTimeout", - HttpVersionNotSupported = "HttpVersionNotSupported" + HttpVersionNotSupported = "HttpVersionNotSupported", + VariantAlsoNegotiates = "VariantAlsoNegotiates", + InsufficientStorage = "InsufficientStorage", + LoopDetected = "LoopDetected", + NotExtended = "NotExtended", + NetworkAuthenticationRequired = "NetworkAuthenticationRequired" } /** @@ -1872,6 +3504,8 @@ export enum KnownHttpStatusCode { * ### Known values supported by the service * **Continue** \ * **SwitchingProtocols** \ + * **Processing** \ + * **EarlyHints** \ * **OK** \ * **Created** \ * **Accepted** \ @@ -1879,6 +3513,9 @@ export enum KnownHttpStatusCode { * **NoContent** \ * **ResetContent** \ * **PartialContent** \ + * **MultiStatus** \ + * **AlreadyReported** \ + * **IMUsed** \ * **MultipleChoices** \ * **Ambiguous** \ * **MovedPermanently** \ @@ -1892,6 +3529,7 @@ export enum KnownHttpStatusCode { * **Unused** \ * **TemporaryRedirect** \ * **RedirectKeepVerb** \ + * **PermanentRedirect** \ * **BadRequest** \ * **Unauthorized** \ * **PaymentRequired** \ @@ -1910,13 +3548,26 @@ export enum KnownHttpStatusCode { * **UnsupportedMediaType** \ * **RequestedRangeNotSatisfiable** \ * **ExpectationFailed** \ + * **MisdirectedRequest** \ + * **UnprocessableEntity** \ + * **Locked** \ + * **FailedDependency** \ * **UpgradeRequired** \ + * **PreconditionRequired** \ + * **TooManyRequests** \ + * **RequestHeaderFieldsTooLarge** \ + * **UnavailableForLegalReasons** \ * **InternalServerError** \ * **NotImplemented** \ * **BadGateway** \ * **ServiceUnavailable** \ * **GatewayTimeout** \ - * **HttpVersionNotSupported** + * **HttpVersionNotSupported** \ + * **VariantAlsoNegotiates** \ + * **InsufficientStorage** \ + * **LoopDetected** \ + * **NotExtended** \ + * **NetworkAuthenticationRequired** */ export type HttpStatusCode = string; @@ -1938,21 +3589,21 @@ export enum KnownSourceControlType { */ export type SourceControlType = string; -/** Known values of {@link FileUploadOptions} that the service accepts. */ -export enum KnownFileUploadOptions { +/** Known values of {@link FileUploadOption} that the service accepts. */ +export enum KnownFileUploadOption { UploadFilesAndGenerateSasTokens = "UploadFilesAndGenerateSasTokens", None = "None" } /** - * Defines values for FileUploadOptions. \ - * {@link KnownFileUploadOptions} can be used interchangeably with FileUploadOptions, + * Defines values for FileUploadOption. \ + * {@link KnownFileUploadOption} can be used interchangeably with FileUploadOption, * this enum contains the known values that the service supports. * ### Known values supported by the service * **UploadFilesAndGenerateSasTokens** \ * **None** */ -export type FileUploadOptions = string; +export type FileUploadOption = string; /** Known values of {@link TargetCostStatus} that the service accepts. */ export enum KnownTargetCostStatus { @@ -2090,23 +3741,41 @@ export enum KnownTransportProtocol { */ export type TransportProtocol = string; -/** Known values of {@link HostCachingOptions} that the service accepts. */ -export enum KnownHostCachingOptions { +/** Known values of {@link VirtualMachineCreationSource} that the service accepts. */ +export enum KnownVirtualMachineCreationSource { + FromCustomImage = "FromCustomImage", + FromGalleryImage = "FromGalleryImage", + FromSharedGalleryImage = "FromSharedGalleryImage" +} + +/** + * Defines values for VirtualMachineCreationSource. \ + * {@link KnownVirtualMachineCreationSource} can be used interchangeably with VirtualMachineCreationSource, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **FromCustomImage** \ + * **FromGalleryImage** \ + * **FromSharedGalleryImage** + */ +export type VirtualMachineCreationSource = string; + +/** Known values of {@link HostCachingOption} that the service accepts. */ +export enum KnownHostCachingOption { None = "None", ReadOnly = "ReadOnly", ReadWrite = "ReadWrite" } /** - * Defines values for HostCachingOptions. \ - * {@link KnownHostCachingOptions} can be used interchangeably with HostCachingOptions, + * Defines values for HostCachingOption. \ + * {@link KnownHostCachingOption} can be used interchangeably with HostCachingOption, * this enum contains the known values that the service supports. * ### Known values supported by the service * **None** \ * **ReadOnly** \ * **ReadWrite** */ -export type HostCachingOptions = string; +export type HostCachingOption = string; /** Known values of {@link NotificationChannelEventType} that the service accepts. */ export enum KnownNotificationChannelEventType { @@ -2188,43 +3857,53 @@ export enum KnownPolicyEvaluatorType { */ export type PolicyEvaluatorType = string; -/** Known values of {@link ManagedIdentityType} that the service accepts. */ -export enum KnownManagedIdentityType { - None = "None", - SystemAssigned = "SystemAssigned", - UserAssigned = "UserAssigned", - SystemAssignedUserAssigned = "SystemAssigned,UserAssigned" +/** Known values of {@link EnableState} that the service accepts. */ +export enum KnownEnableState { + Disabled = "Disabled", + Enabled = "Enabled" } /** - * Defines values for ManagedIdentityType. \ - * {@link KnownManagedIdentityType} can be used interchangeably with ManagedIdentityType, + * Defines values for EnableState. \ + * {@link KnownEnableState} can be used interchangeably with EnableState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **None** \ - * **SystemAssigned** \ - * **UserAssigned** \ - * **SystemAssigned,UserAssigned** + * **Disabled** \ + * **Enabled** */ -export type ManagedIdentityType = string; +export type EnableState = string; -/** Known values of {@link VirtualMachineCreationSource} that the service accepts. */ -export enum KnownVirtualMachineCreationSource { - FromCustomImage = "FromCustomImage", - FromGalleryImage = "FromGalleryImage", - FromSharedGalleryImage = "FromSharedGalleryImage" +/** Known values of {@link OsType} that the service accepts. */ +export enum KnownOsType { + Windows = "Windows", + Linux = "Linux" } /** - * Defines values for VirtualMachineCreationSource. \ - * {@link KnownVirtualMachineCreationSource} can be used interchangeably with VirtualMachineCreationSource, + * Defines values for OsType. \ + * {@link KnownOsType} can be used interchangeably with OsType, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **FromCustomImage** \ - * **FromGalleryImage** \ - * **FromSharedGalleryImage** + * **Windows** \ + * **Linux** */ -export type VirtualMachineCreationSource = string; +export type OsType = string; + +/** Known values of {@link ImageType} that the service accepts. */ +export enum KnownImageType { + Generalized = "Generalized", + Specialized = "Specialized" +} + +/** + * Defines values for ImageType. \ + * {@link KnownImageType} can be used interchangeably with ImageType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Generalized** \ + * **Specialized** + */ +export type ImageType = string; /** Known values of {@link UsagePermissionType} that the service accepts. */ export enum KnownUsagePermissionType { @@ -2244,26 +3923,58 @@ export enum KnownUsagePermissionType { */ export type UsagePermissionType = string; +/** Known values of {@link EncryptionStatus} that the service accepts. */ +export enum KnownEncryptionStatus { + Enabled = "enabled", + Disabled = "disabled" +} + +/** + * Defines values for EncryptionStatus. \ + * {@link KnownEncryptionStatus} can be used interchangeably with EncryptionStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **enabled** \ + * **disabled** + */ +export type EncryptionStatus = string; + +/** Known values of {@link CheckNameAvailabilityReason} that the service accepts. */ +export enum KnownCheckNameAvailabilityReason { + Invalid = "Invalid", + AlreadyExists = "AlreadyExists" +} + +/** + * Defines values for CheckNameAvailabilityReason. \ + * {@link KnownCheckNameAvailabilityReason} can be used interchangeably with CheckNameAvailabilityReason, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Invalid** \ + * **AlreadyExists** + */ +export type CheckNameAvailabilityReason = string; +/** Defines values for SkuTier. */ +export type SkuTier = "Free" | "Basic" | "Standard" | "Premium"; + /** Optional parameters. */ export interface ProviderOperationsListOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the list operation. */ -export type ProviderOperationsListResponse = ProviderOperationResult; +export type ProviderOperationsListResponse = OperationListResult; /** Optional parameters. */ export interface ProviderOperationsListNextOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the listNext operation. */ -export type ProviderOperationsListNextResponse = ProviderOperationResult; +export type ProviderOperationsListNextResponse = OperationListResult; /** Optional parameters. */ export interface LabsListBySubscriptionOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=defaultStorageAccount)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2277,9 +3988,7 @@ export type LabsListBySubscriptionResponse = LabList; /** Optional parameters. */ export interface LabsListByResourceGroupOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=defaultStorageAccount)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2291,10 +4000,7 @@ export interface LabsListByResourceGroupOptionalParams export type LabsListByResourceGroupResponse = LabList; /** Optional parameters. */ -export interface LabsGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=defaultStorageAccount)' */ - expand?: string; -} +export interface LabsGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type LabsGetResponse = Lab; @@ -2343,6 +4049,10 @@ export interface LabsCreateEnvironmentOptionalParams resumeFrom?: string; } +/** Optional parameters. */ +export interface LabsEnsureCurrentUserProfileOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface LabsExportResourceUsageOptionalParams extends coreClient.OperationOptions { @@ -2378,9 +4088,7 @@ export type LabsListVhdsResponse = LabVhdList; /** Optional parameters. */ export interface LabsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=defaultStorageAccount)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2394,9 +4102,7 @@ export type LabsListBySubscriptionNextResponse = LabList; /** Optional parameters. */ export interface LabsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=defaultStorageAccount)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2407,13 +4113,6 @@ export interface LabsListByResourceGroupNextOptionalParams /** Contains response data for the listByResourceGroupNext operation. */ export type LabsListByResourceGroupNextResponse = LabList; -/** Optional parameters. */ -export interface LabsListVhdsNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listVhdsNext operation. */ -export type LabsListVhdsNextResponse = LabVhdList; - /** Optional parameters. */ export interface OperationsGetOptionalParams extends coreClient.OperationOptions {} @@ -2424,9 +4123,7 @@ export type OperationsGetResponse = OperationResult; /** Optional parameters. */ export interface GlobalSchedulesListBySubscriptionOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2440,9 +4137,7 @@ export type GlobalSchedulesListBySubscriptionResponse = ScheduleList; /** Optional parameters. */ export interface GlobalSchedulesListByResourceGroupOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2455,10 +4150,7 @@ export type GlobalSchedulesListByResourceGroupResponse = ScheduleList; /** Optional parameters. */ export interface GlobalSchedulesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type GlobalSchedulesGetResponse = Schedule; @@ -2502,9 +4194,7 @@ export interface GlobalSchedulesRetargetOptionalParams /** Optional parameters. */ export interface GlobalSchedulesListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2518,9 +4208,7 @@ export type GlobalSchedulesListBySubscriptionNextResponse = ScheduleList; /** Optional parameters. */ export interface GlobalSchedulesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2534,9 +4222,7 @@ export type GlobalSchedulesListByResourceGroupNextResponse = ScheduleList; /** Optional parameters. */ export interface ArtifactSourcesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2549,10 +4235,7 @@ export type ArtifactSourcesListResponse = ArtifactSourceList; /** Optional parameters. */ export interface ArtifactSourcesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type ArtifactSourcesGetResponse = ArtifactSource; @@ -2578,9 +4261,7 @@ export type ArtifactSourcesUpdateResponse = ArtifactSource; /** Optional parameters. */ export interface ArtifactSourcesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2594,9 +4275,7 @@ export type ArtifactSourcesListNextResponse = ArtifactSourceList; /** Optional parameters. */ export interface ArmTemplatesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2609,10 +4288,7 @@ export type ArmTemplatesListResponse = ArmTemplateList; /** Optional parameters. */ export interface ArmTemplatesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type ArmTemplatesGetResponse = ArmTemplate; @@ -2620,9 +4296,7 @@ export type ArmTemplatesGetResponse = ArmTemplate; /** Optional parameters. */ export interface ArmTemplatesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=displayName)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2636,9 +4310,7 @@ export type ArmTemplatesListNextResponse = ArmTemplateList; /** Optional parameters. */ export interface ArtifactsListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=title)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2651,10 +4323,7 @@ export type ArtifactsListResponse = ArtifactList; /** Optional parameters. */ export interface ArtifactsGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=title)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type ArtifactsGetResponse = Artifact; @@ -2669,9 +4338,7 @@ export type ArtifactsGenerateArmTemplateResponse = ArmTemplateInfo; /** Optional parameters. */ export interface ArtifactsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=title)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2682,6 +4349,21 @@ export interface ArtifactsListNextOptionalParams /** Contains response data for the listNext operation. */ export type ArtifactsListNextResponse = ArtifactList; +/** Optional parameters. */ +export interface CostsListOptionalParams extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=labCostDetails)' */ + expand?: string; +} + +/** Contains response data for the list operation. */ +export type CostsListResponse = LabCostList; + /** Optional parameters. */ export interface CostsGetOptionalParams extends coreClient.OperationOptions { /** Specify the $expand query. Example: 'properties($expand=labCostDetails)' */ @@ -2699,11 +4381,25 @@ export interface CostsCreateOrUpdateOptionalParams export type CostsCreateOrUpdateResponse = LabCost; /** Optional parameters. */ -export interface CustomImagesListOptionalParams +export interface CostsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=vm)' */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=labCostDetails)' */ expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ +} + +/** Contains response data for the listNext operation. */ +export type CostsListNextResponse = LabCostList; + +/** Optional parameters. */ +export interface CustomImagesListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2716,10 +4412,7 @@ export type CustomImagesListResponse = CustomImageList; /** Optional parameters. */ export interface CustomImagesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=vm)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type CustomImagesGetResponse = CustomImage; @@ -2755,9 +4448,7 @@ export type CustomImagesUpdateResponse = CustomImage; /** Optional parameters. */ export interface CustomImagesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=vm)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2771,9 +4462,7 @@ export type CustomImagesListNextResponse = CustomImageList; /** Optional parameters. */ export interface FormulasListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2785,10 +4474,8 @@ export interface FormulasListOptionalParams export type FormulasListResponse = FormulaList; /** Optional parameters. */ -export interface FormulasGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; -} +export interface FormulasGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type FormulasGetResponse = Formula; @@ -2819,9 +4506,7 @@ export type FormulasUpdateResponse = Formula; /** Optional parameters. */ export interface FormulasListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2835,9 +4520,7 @@ export type FormulasListNextResponse = FormulaList; /** Optional parameters. */ export interface GalleryImagesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=author)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2849,11 +4532,230 @@ export interface GalleryImagesListOptionalParams export type GalleryImagesListResponse = GalleryImageList; /** Optional parameters. */ -export interface GalleryImagesListNextOptionalParams +export interface GalleryImagesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type GalleryImagesGetResponse = GalleryImage; + +/** Optional parameters. */ +export interface GalleryImagesListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the listNext operation. */ +export type GalleryImagesListNextResponse = GalleryImageList; + +/** Optional parameters. */ +export interface NotificationChannelsListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the list operation. */ +export type NotificationChannelsListResponse = NotificationChannelList; + +/** Optional parameters. */ +export interface NotificationChannelsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type NotificationChannelsGetResponse = NotificationChannel; + +/** Optional parameters. */ +export interface NotificationChannelsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the createOrUpdate operation. */ +export type NotificationChannelsCreateOrUpdateResponse = NotificationChannel; + +/** Optional parameters. */ +export interface NotificationChannelsDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface NotificationChannelsUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the update operation. */ +export type NotificationChannelsUpdateResponse = NotificationChannel; + +/** Optional parameters. */ +export interface NotificationChannelsNotifyOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface NotificationChannelsListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the listNext operation. */ +export type NotificationChannelsListNextResponse = NotificationChannelList; + +/** Optional parameters. */ +export interface PolicySetsListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the list operation. */ +export type PolicySetsListResponse = PolicySetList; + +/** Optional parameters. */ +export interface PolicySetsEvaluatePoliciesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the evaluatePolicies operation. */ +export type PolicySetsEvaluatePoliciesResponse = EvaluatePoliciesResponse; + +/** Optional parameters. */ +export interface PolicySetsListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the listNext operation. */ +export type PolicySetsListNextResponse = PolicySetList; + +/** Optional parameters. */ +export interface PoliciesListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the list operation. */ +export type PoliciesListResponse = PolicyList; + +/** Optional parameters. */ +export interface PoliciesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type PoliciesGetResponse = Policy; + +/** Optional parameters. */ +export interface PoliciesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the createOrUpdate operation. */ +export type PoliciesCreateOrUpdateResponse = Policy; + +/** Optional parameters. */ +export interface PoliciesDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface PoliciesUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the update operation. */ +export type PoliciesUpdateResponse = Policy; + +/** Optional parameters. */ +export interface PoliciesListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the listNext operation. */ +export type PoliciesListNextResponse = PolicyList; + +/** Optional parameters. */ +export interface SchedulesListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the list operation. */ +export type SchedulesListResponse = ScheduleList; + +/** Optional parameters. */ +export interface SchedulesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type SchedulesGetResponse = Schedule; + +/** Optional parameters. */ +export interface SchedulesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the createOrUpdate operation. */ +export type SchedulesCreateOrUpdateResponse = Schedule; + +/** Optional parameters. */ +export interface SchedulesDeleteOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface SchedulesUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the update operation. */ +export type SchedulesUpdateResponse = Schedule; + +/** Optional parameters. */ +export interface SchedulesExecuteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface SchedulesListApplicableOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listApplicable operation. */ +export type SchedulesListApplicableResponse = ScheduleList; + +/** Optional parameters. */ +export interface SchedulesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=author)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2862,14 +4764,12 @@ export interface GalleryImagesListNextOptionalParams } /** Contains response data for the listNext operation. */ -export type GalleryImagesListNextResponse = GalleryImageList; +export type SchedulesListNextResponse = ScheduleList; /** Optional parameters. */ -export interface NotificationChannelsListOptionalParams +export interface LabSecretsListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=webHookUrl)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2878,46 +4778,47 @@ export interface NotificationChannelsListOptionalParams } /** Contains response data for the list operation. */ -export type NotificationChannelsListResponse = NotificationChannelList; +export type LabSecretsListResponse = LabSecretList; /** Optional parameters. */ -export interface NotificationChannelsGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=webHookUrl)' */ - expand?: string; -} +export interface LabSecretsGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type NotificationChannelsGetResponse = NotificationChannel; +export type LabSecretsGetResponse = LabSecret; /** Optional parameters. */ -export interface NotificationChannelsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} +export interface LabSecretsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} /** Contains response data for the createOrUpdate operation. */ -export type NotificationChannelsCreateOrUpdateResponse = NotificationChannel; +export type LabSecretsCreateOrUpdateResponse = LabSecret; /** Optional parameters. */ -export interface NotificationChannelsDeleteOptionalParams - extends coreClient.OperationOptions {} +export interface LabSecretsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} /** Optional parameters. */ -export interface NotificationChannelsUpdateOptionalParams +export interface LabSecretsUpdateOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the update operation. */ -export type NotificationChannelsUpdateResponse = NotificationChannel; - -/** Optional parameters. */ -export interface NotificationChannelsNotifyOptionalParams - extends coreClient.OperationOptions {} +export type LabSecretsUpdateResponse = LabSecret; /** Optional parameters. */ -export interface NotificationChannelsListNextOptionalParams +export interface LabSecretsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=webHookUrl)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2926,21 +4827,12 @@ export interface NotificationChannelsListNextOptionalParams } /** Contains response data for the listNext operation. */ -export type NotificationChannelsListNextResponse = NotificationChannelList; +export type LabSecretsListNextResponse = LabSecretList; /** Optional parameters. */ -export interface PolicySetsEvaluatePoliciesOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the evaluatePolicies operation. */ -export type PolicySetsEvaluatePoliciesResponse = EvaluatePoliciesResponse; - -/** Optional parameters. */ -export interface PoliciesListOptionalParams +export interface ServiceRunnersListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2949,41 +4841,40 @@ export interface PoliciesListOptionalParams } /** Contains response data for the list operation. */ -export type PoliciesListResponse = PolicyList; +export type ServiceRunnersListResponse = ServiceRunnerList; /** Optional parameters. */ -export interface PoliciesGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; -} +export interface ServiceRunnersGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type PoliciesGetResponse = Policy; +export type ServiceRunnersGetResponse = ServiceRunner; /** Optional parameters. */ -export interface PoliciesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} +export interface ServiceRunnersCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} /** Contains response data for the createOrUpdate operation. */ -export type PoliciesCreateOrUpdateResponse = Policy; - -/** Optional parameters. */ -export interface PoliciesDeleteOptionalParams - extends coreClient.OperationOptions {} +export type ServiceRunnersCreateOrUpdateResponse = ServiceRunner; /** Optional parameters. */ -export interface PoliciesUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type PoliciesUpdateResponse = Policy; +export interface ServiceRunnersDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} /** Optional parameters. */ -export interface PoliciesListNextOptionalParams +export interface ServiceRunnersListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=description)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -2992,14 +4883,12 @@ export interface PoliciesListNextOptionalParams } /** Contains response data for the listNext operation. */ -export type PoliciesListNextResponse = PolicyList; +export type ServiceRunnersListNextResponse = ServiceRunnerList; /** Optional parameters. */ -export interface SchedulesListOptionalParams +export interface SharedGalleriesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3008,98 +4897,110 @@ export interface SchedulesListOptionalParams } /** Contains response data for the list operation. */ -export type SchedulesListResponse = ScheduleList; +export type SharedGalleriesListResponse = SharedGalleryList; /** Optional parameters. */ -export interface SchedulesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; -} +export interface SharedGalleriesGetOptionalParams + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type SchedulesGetResponse = Schedule; +export type SharedGalleriesGetResponse = SharedGallery; /** Optional parameters. */ -export interface SchedulesCreateOrUpdateOptionalParams +export interface SharedGalleriesCreateOrUpdateOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the createOrUpdate operation. */ -export type SchedulesCreateOrUpdateResponse = Schedule; +export type SharedGalleriesCreateOrUpdateResponse = SharedGallery; /** Optional parameters. */ -export interface SchedulesDeleteOptionalParams +export interface SharedGalleriesDeleteOptionalParams extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface SchedulesUpdateOptionalParams +export interface SharedGalleriesUpdateOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the update operation. */ -export type SchedulesUpdateResponse = Schedule; +export type SharedGalleriesUpdateResponse = SharedGallery; /** Optional parameters. */ -export interface SchedulesExecuteOptionalParams +export interface SharedGalleriesListNextOptionalParams extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; } -/** Optional parameters. */ -export interface SchedulesListApplicableOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listApplicable operation. */ -export type SchedulesListApplicableResponse = ScheduleList; +/** Contains response data for the listNext operation. */ +export type SharedGalleriesListNextResponse = SharedGalleryList; /** Optional parameters. */ -export interface SchedulesListNextOptionalParams +export interface SharedImagesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=versions)' */ + expand?: string; } -/** Contains response data for the listNext operation. */ -export type SchedulesListNextResponse = ScheduleList; +/** Contains response data for the list operation. */ +export type SharedImagesListResponse = SharedImageList; /** Optional parameters. */ -export interface SchedulesListApplicableNextOptionalParams - extends coreClient.OperationOptions {} +export interface SharedImagesGetOptionalParams + extends coreClient.OperationOptions { + /** Specify the $expand query. Example: 'properties($expand=versions)' */ + expand?: string; +} -/** Contains response data for the listApplicableNext operation. */ -export type SchedulesListApplicableNextResponse = ScheduleList; +/** Contains response data for the get operation. */ +export type SharedImagesGetResponse = SharedImage; /** Optional parameters. */ -export interface ServiceRunnersGetOptionalParams +export interface SharedImagesCreateOrUpdateOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the get operation. */ -export type ServiceRunnersGetResponse = ServiceRunner; +/** Contains response data for the createOrUpdate operation. */ +export type SharedImagesCreateOrUpdateResponse = SharedImage; /** Optional parameters. */ -export interface ServiceRunnersCreateOrUpdateOptionalParams +export interface SharedImagesDeleteOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the createOrUpdate operation. */ -export type ServiceRunnersCreateOrUpdateResponse = ServiceRunner; - /** Optional parameters. */ -export interface ServiceRunnersDeleteOptionalParams +export interface SharedImagesUpdateOptionalParams extends coreClient.OperationOptions {} +/** Contains response data for the update operation. */ +export type SharedImagesUpdateResponse = SharedImage; + /** Optional parameters. */ -export interface UsersListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=identity)' */ +export interface SharedImagesListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=versions)' */ expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ +} + +/** Contains response data for the listNext operation. */ +export type SharedImagesListNextResponse = SharedImageList; + +/** Optional parameters. */ +export interface UsersListOptionalParams extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3111,10 +5012,7 @@ export interface UsersListOptionalParams extends coreClient.OperationOptions { export type UsersListResponse = UserList; /** Optional parameters. */ -export interface UsersGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=identity)' */ - expand?: string; -} +export interface UsersGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type UsersGetResponse = User; @@ -3149,9 +5047,7 @@ export type UsersUpdateResponse = User; /** Optional parameters. */ export interface UsersListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=identity)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3164,9 +5060,7 @@ export type UsersListNextResponse = UserList; /** Optional parameters. */ export interface DisksListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=diskType)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3178,10 +5072,7 @@ export interface DisksListOptionalParams extends coreClient.OperationOptions { export type DisksListResponse = DiskList; /** Optional parameters. */ -export interface DisksGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=diskType)' */ - expand?: string; -} +export interface DisksGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type DisksGetResponse = Disk; @@ -3232,9 +5123,7 @@ export interface DisksDetachOptionalParams extends coreClient.OperationOptions { /** Optional parameters. */ export interface DisksListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=diskType)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3248,9 +5137,7 @@ export type DisksListNextResponse = DiskList; /** Optional parameters. */ export interface EnvironmentsListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=deploymentProperties)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3259,17 +5146,14 @@ export interface EnvironmentsListOptionalParams } /** Contains response data for the list operation. */ -export type EnvironmentsListResponse = DtlEnvironmentList; +export type EnvironmentsListResponse = EnvironmentList; /** Optional parameters. */ export interface EnvironmentsGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=deploymentProperties)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type EnvironmentsGetResponse = DtlEnvironment; +export type EnvironmentsGetResponse = Environment; /** Optional parameters. */ export interface EnvironmentsCreateOrUpdateOptionalParams @@ -3281,7 +5165,7 @@ export interface EnvironmentsCreateOrUpdateOptionalParams } /** Contains response data for the createOrUpdate operation. */ -export type EnvironmentsCreateOrUpdateResponse = DtlEnvironment; +export type EnvironmentsCreateOrUpdateResponse = Environment; /** Optional parameters. */ export interface EnvironmentsDeleteOptionalParams @@ -3297,14 +5181,12 @@ export interface EnvironmentsUpdateOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the update operation. */ -export type EnvironmentsUpdateResponse = DtlEnvironment; +export type EnvironmentsUpdateResponse = Environment; /** Optional parameters. */ export interface EnvironmentsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=deploymentProperties)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3313,13 +5195,11 @@ export interface EnvironmentsListNextOptionalParams } /** Contains response data for the listNext operation. */ -export type EnvironmentsListNextResponse = DtlEnvironmentList; +export type EnvironmentsListNextResponse = EnvironmentList; /** Optional parameters. */ export interface SecretsListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=value)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3331,10 +5211,7 @@ export interface SecretsListOptionalParams extends coreClient.OperationOptions { export type SecretsListResponse = SecretList; /** Optional parameters. */ -export interface SecretsGetOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=value)' */ - expand?: string; -} +export interface SecretsGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type SecretsGetResponse = Secret; @@ -3365,9 +5242,7 @@ export type SecretsUpdateResponse = Secret; /** Optional parameters. */ export interface SecretsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=value)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3381,14 +5256,14 @@ export type SecretsListNextResponse = SecretList; /** Optional parameters. */ export interface ServiceFabricsListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($expand=applicableSchedule)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=applicableSchedule)' */ + expand?: string; } /** Contains response data for the list operation. */ @@ -3460,14 +5335,14 @@ export interface ServiceFabricsStopOptionalParams /** Optional parameters. */ export interface ServiceFabricsListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($expand=applicableSchedule)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=applicableSchedule)' */ + expand?: string; } /** Contains response data for the listNext operation. */ @@ -3476,9 +5351,7 @@ export type ServiceFabricsListNextResponse = ServiceFabricList; /** Optional parameters. */ export interface ServiceFabricSchedulesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3491,10 +5364,7 @@ export type ServiceFabricSchedulesListResponse = ScheduleList; /** Optional parameters. */ export interface ServiceFabricSchedulesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type ServiceFabricSchedulesGetResponse = Schedule; @@ -3529,9 +5399,7 @@ export interface ServiceFabricSchedulesExecuteOptionalParams /** Optional parameters. */ export interface ServiceFabricSchedulesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3545,18 +5413,18 @@ export type ServiceFabricSchedulesListNextResponse = ScheduleList; /** Optional parameters. */ export interface VirtualMachinesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)' */ + expand?: string; } /** Contains response data for the list operation. */ -export type VirtualMachinesListResponse = LabVirtualMachineList; +export type VirtualMachinesListResponse = VirtualMachineList; /** Optional parameters. */ export interface VirtualMachinesGetOptionalParams @@ -3566,7 +5434,7 @@ export interface VirtualMachinesGetOptionalParams } /** Contains response data for the get operation. */ -export type VirtualMachinesGetResponse = LabVirtualMachine; +export type VirtualMachinesGetResponse = VirtualMachine; /** Optional parameters. */ export interface VirtualMachinesCreateOrUpdateOptionalParams @@ -3578,7 +5446,7 @@ export interface VirtualMachinesCreateOrUpdateOptionalParams } /** Contains response data for the createOrUpdate operation. */ -export type VirtualMachinesCreateOrUpdateResponse = LabVirtualMachine; +export type VirtualMachinesCreateOrUpdateResponse = VirtualMachine; /** Optional parameters. */ export interface VirtualMachinesDeleteOptionalParams @@ -3594,7 +5462,7 @@ export interface VirtualMachinesUpdateOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the update operation. */ -export type VirtualMachinesUpdateResponse = LabVirtualMachine; +export type VirtualMachinesUpdateResponse = VirtualMachine; /** Optional parameters. */ export interface VirtualMachinesAddDataDiskOptionalParams @@ -3623,6 +5491,10 @@ export interface VirtualMachinesClaimOptionalParams resumeFrom?: string; } +/** Optional parameters. */ +export interface VirtualMachinesClearArtifactResultsOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface VirtualMachinesDetachDataDiskOptionalParams extends coreClient.OperationOptions { @@ -3712,25 +5584,23 @@ export interface VirtualMachinesUnClaimOptionalParams /** Optional parameters. */ export interface VirtualMachinesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)' */ + expand?: string; } /** Contains response data for the listNext operation. */ -export type VirtualMachinesListNextResponse = LabVirtualMachineList; +export type VirtualMachinesListNextResponse = VirtualMachineList; /** Optional parameters. */ export interface VirtualMachineSchedulesListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3743,10 +5613,7 @@ export type VirtualMachineSchedulesListResponse = ScheduleList; /** Optional parameters. */ export interface VirtualMachineSchedulesGetOptionalParams - extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; -} + extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ export type VirtualMachineSchedulesGetResponse = Schedule; @@ -3781,9 +5648,7 @@ export interface VirtualMachineSchedulesExecuteOptionalParams /** Optional parameters. */ export interface VirtualMachineSchedulesListNextOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($select=status)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3797,14 +5662,14 @@ export type VirtualMachineSchedulesListNextResponse = ScheduleList; /** Optional parameters. */ export interface VirtualNetworksListOptionalParams extends coreClient.OperationOptions { - /** Specify the $expand query. Example: 'properties($expand=externalSubnets)' */ - expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ orderby?: string; + /** Specify the $expand query. Example: 'properties($expand=externalSubnets)' */ + expand?: string; } /** Contains response data for the list operation. */ @@ -3851,9 +5716,72 @@ export type VirtualNetworksUpdateResponse = VirtualNetwork; /** Optional parameters. */ export interface VirtualNetworksListNextOptionalParams extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; /** Specify the $expand query. Example: 'properties($expand=externalSubnets)' */ expand?: string; - /** The filter to apply to the operation. Example: '$filter=contains(name,'myName') */ +} + +/** Contains response data for the listNext operation. */ +export type VirtualNetworksListNextResponse = VirtualNetworkList; + +/** Optional parameters. */ +export interface BastionHostsListOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ + filter?: string; + /** The maximum number of resources to return from the operation. Example: '$top=10' */ + top?: number; + /** The ordering expression for the results, using OData notation. Example: '$orderby=name desc' */ + orderby?: string; +} + +/** Contains response data for the list operation. */ +export type BastionHostsListResponse = BastionHostList; + +/** Optional parameters. */ +export interface BastionHostsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type BastionHostsGetResponse = BastionHost; + +/** Optional parameters. */ +export interface BastionHostsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type BastionHostsCreateOrUpdateResponse = BastionHost; + +/** Optional parameters. */ +export interface BastionHostsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface BastionHostsUpdateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the update operation. */ +export type BastionHostsUpdateResponse = BastionHost; + +/** Optional parameters. */ +export interface BastionHostsListNextOptionalParams + extends coreClient.OperationOptions { + /** The filter to apply to the operation. Example: '$filter=contains(name,'myName')' */ filter?: string; /** The maximum number of resources to return from the operation. Example: '$top=10' */ top?: number; @@ -3862,7 +5790,7 @@ export interface VirtualNetworksListNextOptionalParams } /** Contains response data for the listNext operation. */ -export type VirtualNetworksListNextResponse = VirtualNetworkList; +export type BastionHostsListNextResponse = BastionHostList; /** Optional parameters. */ export interface DevTestLabsClientOptionalParams diff --git a/sdk/devtestlabs/arm-devtestlabs/src/models/mappers.ts b/sdk/devtestlabs/arm-devtestlabs/src/models/mappers.ts index 6b9a004d562d..9dfef1d61ff6 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/models/mappers.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/models/mappers.ts @@ -8,19 +8,20 @@ import * as coreClient from "@azure/core-client"; -export const ProviderOperationResult: coreClient.CompositeMapper = { +export const OperationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ProviderOperationResult", + className: "OperationListResult", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "OperationMetadata" + className: "Operation" } } } @@ -36,53 +37,79 @@ export const ProviderOperationResult: coreClient.CompositeMapper = { } }; -export const OperationMetadata: coreClient.CompositeMapper = { +export const Operation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationMetadata", + className: "Operation", modelProperties: { name: { serializedName: "name", + readOnly: true, type: { name: "String" } }, + isDataAction: { + serializedName: "isDataAction", + readOnly: true, + type: { + name: "Boolean" + } + }, display: { serializedName: "display", type: { name: "Composite", - className: "OperationMetadataDisplay" + className: "OperationDisplay" + } + }, + origin: { + serializedName: "origin", + readOnly: true, + type: { + name: "String" + } + }, + actionType: { + serializedName: "actionType", + readOnly: true, + type: { + name: "String" } } } } }; -export const OperationMetadataDisplay: coreClient.CompositeMapper = { +export const OperationDisplay: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationMetadataDisplay", + className: "OperationDisplay", modelProperties: { provider: { serializedName: "provider", + readOnly: true, type: { name: "String" } }, resource: { serializedName: "resource", + readOnly: true, type: { name: "String" } }, operation: { serializedName: "operation", + readOnly: true, type: { name: "String" } }, description: { serializedName: "description", + readOnly: true, type: { name: "String" } @@ -91,53 +118,70 @@ export const OperationMetadataDisplay: coreClient.CompositeMapper = { } }; -export const CloudError: coreClient.CompositeMapper = { +export const ErrorResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CloudError", + className: "ErrorResponse", modelProperties: { error: { serializedName: "error", type: { name: "Composite", - className: "CloudErrorBody" + className: "ErrorDetail" } } } } }; -export const CloudErrorBody: coreClient.CompositeMapper = { +export const ErrorDetail: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CloudErrorBody", + className: "ErrorDetail", modelProperties: { code: { serializedName: "code", + readOnly: true, type: { name: "String" } }, message: { serializedName: "message", + readOnly: true, type: { name: "String" } }, target: { serializedName: "target", + readOnly: true, type: { name: "String" } }, details: { serializedName: "details", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorDetail" + } + } + } + }, + additionalInfo: { + serializedName: "additionalInfo", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "CloudErrorBody" + className: "ErrorAdditionalInfo" } } } @@ -146,6 +190,30 @@ export const CloudErrorBody: coreClient.CompositeMapper = { } }; +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorAdditionalInfo", + modelProperties: { + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + info: { + serializedName: "info", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + } + } + } +}; + export const LabList: coreClient.CompositeMapper = { type: { name: "Composite", @@ -153,6 +221,7 @@ export const LabList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -173,74 +242,45 @@ export const LabList: coreClient.CompositeMapper = { } }; -export const LabAnnouncementProperties: coreClient.CompositeMapper = { +export const SystemData: coreClient.CompositeMapper = { type: { name: "Composite", - className: "LabAnnouncementProperties", + className: "SystemData", modelProperties: { - title: { - serializedName: "title", - type: { - name: "String" - } - }, - markdown: { - serializedName: "markdown", + createdBy: { + serializedName: "createdBy", type: { name: "String" } }, - enabled: { - serializedName: "enabled", + createdByType: { + serializedName: "createdByType", type: { name: "String" } }, - expirationDate: { - serializedName: "expirationDate", + createdAt: { + serializedName: "createdAt", type: { name: "DateTime" } }, - expired: { - serializedName: "expired", - type: { - name: "Boolean" - } - }, - provisioningState: { - serializedName: "provisioningState", - readOnly: true, + lastModifiedBy: { + serializedName: "lastModifiedBy", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "uniqueIdentifier", - readOnly: true, - type: { - name: "String" - } - } - } - } -}; - -export const LabSupportProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabSupportProperties", - modelProperties: { - enabled: { - serializedName: "enabled", + lastModifiedByType: { + serializedName: "lastModifiedByType", type: { name: "String" } }, - markdown: { - serializedName: "markdown", + lastModifiedAt: { + serializedName: "lastModifiedAt", type: { - name: "String" + name: "DateTime" } } } @@ -272,19 +312,6 @@ export const Resource: coreClient.CompositeMapper = { type: { name: "String" } - }, - location: { - serializedName: "location", - type: { - name: "String" - } - }, - tags: { - serializedName: "tags", - type: { - name: "Dictionary", - value: { type: { name: "String" } } - } } } } @@ -307,30 +334,14 @@ export const OperationResult: coreClient.CompositeMapper = { name: "String" } }, - error: { - serializedName: "error", - type: { - name: "Composite", - className: "OperationError" - } - } - } - } -}; - -export const OperationError: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationError", - modelProperties: { code: { - serializedName: "code", + serializedName: "error.code", type: { name: "String" } }, message: { - serializedName: "message", + serializedName: "error.message", type: { name: "String" } @@ -346,6 +357,7 @@ export const ScheduleList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -366,101 +378,6 @@ export const ScheduleList: coreClient.CompositeMapper = { } }; -export const WeekDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "WeekDetails", - modelProperties: { - weekdays: { - serializedName: "weekdays", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - time: { - serializedName: "time", - type: { - name: "String" - } - } - } - } -}; - -export const DayDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DayDetails", - modelProperties: { - time: { - serializedName: "time", - type: { - name: "String" - } - } - } - } -}; - -export const HourDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "HourDetails", - modelProperties: { - minute: { - serializedName: "minute", - type: { - name: "Number" - } - } - } - } -}; - -export const NotificationSettings: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotificationSettings", - modelProperties: { - status: { - serializedName: "status", - type: { - name: "String" - } - }, - timeInMinutes: { - serializedName: "timeInMinutes", - type: { - name: "Number" - } - }, - webhookUrl: { - serializedName: "webhookUrl", - type: { - name: "String" - } - }, - emailRecipient: { - serializedName: "emailRecipient", - type: { - name: "String" - } - }, - notificationLocale: { - serializedName: "notificationLocale", - type: { - name: "String" - } - } - } - } -}; - export const ArtifactSourceList: coreClient.CompositeMapper = { type: { name: "Composite", @@ -468,6 +385,7 @@ export const ArtifactSourceList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -495,6 +413,7 @@ export const ArmTemplateList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -544,6 +463,7 @@ export const ArtifactList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -647,10 +567,10 @@ export const ArmTemplateInfo: coreClient.CompositeMapper = { } }; -export const UpdateResource: coreClient.CompositeMapper = { +export const Tags: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UpdateResource", + className: "Tags", modelProperties: { tags: { serializedName: "tags", @@ -663,49 +583,26 @@ export const UpdateResource: coreClient.CompositeMapper = { } }; -export const TargetCostProperties: coreClient.CompositeMapper = { +export const LabCostList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TargetCostProperties", + className: "LabCostList", modelProperties: { - status: { - serializedName: "status", - type: { - name: "String" - } - }, - target: { - serializedName: "target", - type: { - name: "Number" - } - }, - costThresholds: { - serializedName: "costThresholds", + value: { + serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "CostThresholdProperties" + className: "LabCost" } } } }, - cycleStartDateTime: { - serializedName: "cycleStartDateTime", - type: { - name: "DateTime" - } - }, - cycleEndDateTime: { - serializedName: "cycleEndDateTime", - type: { - name: "DateTime" - } - }, - cycleType: { - serializedName: "cycleType", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -725,13 +622,6 @@ export const CostThresholdProperties: coreClient.CompositeMapper = { name: "String" } }, - percentageThreshold: { - serializedName: "percentageThreshold", - type: { - name: "Composite", - className: "PercentageCostThresholdProperties" - } - }, displayOnChart: { serializedName: "displayOnChart", type: { @@ -749,33 +639,9 @@ export const CostThresholdProperties: coreClient.CompositeMapper = { type: { name: "String" } - } - } - } -}; - -export const PercentageCostThresholdProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PercentageCostThresholdProperties", - modelProperties: { + }, thresholdValue: { - serializedName: "thresholdValue", - type: { - name: "Number" - } - } - } - } -}; - -export const LabCostSummaryProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabCostSummaryProperties", - modelProperties: { - estimatedLabCost: { - serializedName: "estimatedLabCost", + serializedName: "percentageThreshold.thresholdValue", type: { name: "Number" } @@ -881,6 +747,7 @@ export const CustomImageList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -901,100 +768,13 @@ export const CustomImageList: coreClient.CompositeMapper = { } }; -export const CustomImagePropertiesFromVm: coreClient.CompositeMapper = { +export const DataDiskStorageTypeInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CustomImagePropertiesFromVm", + className: "DataDiskStorageTypeInfo", modelProperties: { - sourceVmId: { - serializedName: "sourceVmId", - type: { - name: "String" - } - }, - windowsOsInfo: { - serializedName: "windowsOsInfo", - type: { - name: "Composite", - className: "WindowsOsInfo" - } - }, - linuxOsInfo: { - serializedName: "linuxOsInfo", - type: { - name: "Composite", - className: "LinuxOsInfo" - } - } - } - } -}; - -export const WindowsOsInfo: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "WindowsOsInfo", - modelProperties: { - windowsOsState: { - serializedName: "windowsOsState", - type: { - name: "String" - } - } - } - } -}; - -export const LinuxOsInfo: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LinuxOsInfo", - modelProperties: { - linuxOsState: { - serializedName: "linuxOsState", - type: { - name: "String" - } - } - } - } -}; - -export const CustomImagePropertiesCustom: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomImagePropertiesCustom", - modelProperties: { - imageName: { - serializedName: "imageName", - type: { - name: "String" - } - }, - sysPrep: { - serializedName: "sysPrep", - type: { - name: "Boolean" - } - }, - osType: { - serializedName: "osType", - required: true, - type: { - name: "String" - } - } - } - } -}; - -export const DataDiskStorageTypeInfo: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DataDiskStorageTypeInfo", - modelProperties: { - lun: { - serializedName: "lun", + lun: { + serializedName: "lun", type: { name: "String" } @@ -1009,33 +789,6 @@ export const DataDiskStorageTypeInfo: coreClient.CompositeMapper = { } }; -export const CustomImagePropertiesFromPlan: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomImagePropertiesFromPlan", - modelProperties: { - id: { - serializedName: "id", - type: { - name: "String" - } - }, - publisher: { - serializedName: "publisher", - type: { - name: "String" - } - }, - offer: { - serializedName: "offer", - type: { - name: "String" - } - } - } - } -}; - export const FormulaList: coreClient.CompositeMapper = { type: { name: "Composite", @@ -1043,6 +796,7 @@ export const FormulaList: coreClient.CompositeMapper = { modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { @@ -1087,13 +841,6 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { value: { type: { name: "String" } } } }, - bulkCreationParameters: { - serializedName: "properties.bulkCreationParameters", - type: { - name: "Composite", - className: "BulkCreationParameters" - } - }, notes: { serializedName: "properties.notes", type: { @@ -1113,18 +860,64 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { name: "String" } }, - createdDate: { + createdByUserId: { + serializedName: "properties.createdByUserId", + readOnly: true, + type: { + name: "String" + } + }, + createdByUser: { + serializedName: "properties.createdByUser", + readOnly: true, + type: { + name: "String" + } + }, + createdDatePropertiesCreatedDate: { serializedName: "properties.createdDate", type: { name: "DateTime" } }, + computeId: { + serializedName: "properties.computeId", + readOnly: true, + type: { + name: "String" + } + }, customImageId: { serializedName: "properties.customImageId", type: { name: "String" } }, + galleryImageVersionId: { + serializedName: "properties.galleryImageVersionId", + type: { + name: "String" + } + }, + sharedImageId: { + serializedName: "properties.sharedImageId", + type: { + name: "String" + } + }, + sharedImageVersion: { + serializedName: "properties.sharedImageVersion", + type: { + name: "String" + } + }, + osTypePropertiesOsType: { + serializedName: "properties.osType", + readOnly: true, + type: { + name: "String" + } + }, size: { serializedName: "properties.size", type: { @@ -1155,6 +948,13 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { name: "Boolean" } }, + fqdn: { + serializedName: "properties.fqdn", + readOnly: true, + type: { + name: "String" + } + }, labSubnetName: { serializedName: "properties.labSubnetName", type: { @@ -1186,24 +986,16 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { } } }, - galleryImageReference: { - serializedName: "properties.galleryImageReference", - type: { - name: "Composite", - className: "GalleryImageReference" - } - }, planId: { serializedName: "properties.planId", type: { name: "String" } }, - networkInterface: { - serializedName: "properties.networkInterface", + osDiskSizeGb: { + serializedName: "properties.osDiskSizeGb", type: { - name: "Composite", - className: "NetworkInterfaceProperties" + name: "Number" } }, expirationDate: { @@ -1220,12 +1012,18 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { } }, storageType: { - defaultValue: "labStorageType", serializedName: "properties.storageType", type: { name: "String" } }, + virtualMachineCreationSource: { + serializedName: "properties.virtualMachineCreationSource", + readOnly: true, + type: { + name: "String" + } + }, environmentId: { serializedName: "properties.environmentId", type: { @@ -1255,758 +1053,645 @@ export const LabVirtualMachineCreationParameter: coreClient.CompositeMapper = { } } } - } - } - } -}; - -export const BulkCreationParameters: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BulkCreationParameters", - modelProperties: { - instanceCount: { - serializedName: "instanceCount", + }, + lastKnownPowerState: { + serializedName: "properties.lastKnownPowerState", + readOnly: true, type: { - name: "Number" + name: "String" } - } - } - } -}; - -export const ArtifactInstallProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ArtifactInstallProperties", - modelProperties: { - artifactId: { - serializedName: "artifactId", + }, + canApplyArtifacts: { + serializedName: "properties.canApplyArtifacts", + readOnly: true, type: { - name: "String" + name: "Boolean" } }, - artifactTitle: { - serializedName: "artifactTitle", + provisioningStatePropertiesProvisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { name: "String" } }, - parameters: { - serializedName: "parameters", + uniqueIdentifierPropertiesUniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ArtifactParameterProperties" - } - } + name: "String" } }, - status: { - serializedName: "status", + idPropertiesApplicableScheduleId: { + serializedName: "properties.applicableSchedule.id", + readOnly: true, type: { name: "String" } }, - deploymentStatusMessage: { - serializedName: "deploymentStatusMessage", + namePropertiesApplicableScheduleName: { + serializedName: "properties.applicableSchedule.name", + readOnly: true, type: { name: "String" } }, - vmExtensionStatusMessage: { - serializedName: "vmExtensionStatusMessage", + typePropertiesApplicableScheduleType: { + serializedName: "properties.applicableSchedule.type", + readOnly: true, type: { name: "String" } }, - installTime: { - serializedName: "installTime", + systemDataPropertiesApplicableScheduleSystemData: { + serializedName: "properties.applicableSchedule.systemData", type: { - name: "DateTime" + name: "Composite", + className: "SystemData" } - } - } - } -}; - -export const ArtifactParameterProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ArtifactParameterProperties", - modelProperties: { - name: { - serializedName: "name", + }, + idPropertiesApplicableSchedulePropertiesLabVmsStartupId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.id", + readOnly: true, type: { name: "String" } }, - value: { - serializedName: "value", + namePropertiesApplicableSchedulePropertiesLabVmsStartupName: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.name", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const GalleryImageReference: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GalleryImageReference", - modelProperties: { - offer: { - serializedName: "offer", + }, + typePropertiesApplicableSchedulePropertiesLabVmsStartupType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.type", + readOnly: true, type: { name: "String" } }, - publisher: { - serializedName: "publisher", + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - sku: { - serializedName: "sku", + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.location", type: { name: "String" } }, - osType: { - serializedName: "osType", + systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - version: { - serializedName: "version", + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.status", type: { name: "String" } - } - } - } -}; - -export const NetworkInterfaceProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NetworkInterfaceProperties", - modelProperties: { - virtualNetworkId: { - serializedName: "virtualNetworkId", + }, + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.taskType", type: { name: "String" } }, - subnetId: { - serializedName: "subnetId", + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.timeZoneId", type: { name: "String" } }, - publicIpAddressId: { - serializedName: "publicIpAddressId", + createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.targetResourceId", type: { name: "String" } }, - publicIpAddress: { - serializedName: "publicIpAddress", + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.provisioningState", + readOnly: true, type: { name: "String" } }, - privateIpAddress: { - serializedName: "privateIpAddress", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.uniqueIdentifier", + readOnly: true, type: { name: "String" } }, - dnsName: { - serializedName: "dnsName", + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.status", type: { name: "String" } }, - rdpAuthority: { - serializedName: "rdpAuthority", + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.webhookUrl", type: { name: "String" } }, - sshAuthority: { - serializedName: "sshAuthority", + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.emailRecipient", type: { name: "String" } }, - sharedPublicIpAddressConfiguration: { - serializedName: "sharedPublicIpAddressConfiguration", + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.notificationLocale", type: { - name: "Composite", - className: "SharedPublicIpAddressConfiguration" + name: "String" } - } - } - } -}; - -export const SharedPublicIpAddressConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SharedPublicIpAddressConfiguration", - modelProperties: { - inboundNatRules: { - serializedName: "inboundNatRules", + }, + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.weekdays", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "InboundNatRule" + name: "String" } } } - } - } - } -}; - -export const InboundNatRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "InboundNatRule", - modelProperties: { - transportProtocol: { - serializedName: "transportProtocol", + }, + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.time", type: { name: "String" } }, - frontendPort: { - serializedName: "frontendPort", + idPropertiesApplicableSchedulePropertiesLabVmsShutdownId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.id", + readOnly: true, type: { - name: "Number" + name: "String" } }, - backendPort: { - serializedName: "backendPort", + namePropertiesApplicableSchedulePropertiesLabVmsShutdownName: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.name", + readOnly: true, type: { - name: "Number" + name: "String" } - } - } - } -}; - -export const DataDiskProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DataDiskProperties", - modelProperties: { - attachNewDataDiskOptions: { - serializedName: "attachNewDataDiskOptions", + }, + typePropertiesApplicableSchedulePropertiesLabVmsShutdownType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.type", + readOnly: true, type: { - name: "Composite", - className: "AttachNewDataDiskOptions" + name: "String" } }, - existingLabDiskId: { - serializedName: "existingLabDiskId", + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - hostCaching: { - serializedName: "hostCaching", + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.location", type: { name: "String" } - } - } - } -}; - -export const AttachNewDataDiskOptions: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AttachNewDataDiskOptions", - modelProperties: { - diskSizeGiB: { - serializedName: "diskSizeGiB", + }, + systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.systemData", type: { - name: "Number" + name: "Composite", + className: "SystemData" } }, - diskName: { - serializedName: "diskName", + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.status", type: { name: "String" } }, - diskType: { - serializedName: "diskType", + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.taskType", type: { name: "String" } - } - } - } -}; - -export const ScheduleCreationParameter: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScheduleCreationParameter", - modelProperties: { - name: { - serializedName: "name", + }, + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.timeZoneId", type: { name: "String" } }, - location: { - serializedName: "location", + createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.createdDate", readOnly: true, type: { - name: "String" + name: "DateTime" } }, - tags: { - serializedName: "tags", + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.targetResourceId", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "String" } }, - status: { - serializedName: "properties.status", + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.provisioningState", + readOnly: true, type: { name: "String" } }, - taskType: { - serializedName: "properties.taskType", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.uniqueIdentifier", + readOnly: true, type: { name: "String" } }, - weeklyRecurrence: { - serializedName: "properties.weeklyRecurrence", + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.status", type: { - name: "Composite", - className: "WeekDetails" + name: "String" } }, - dailyRecurrence: { - serializedName: "properties.dailyRecurrence", + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.timeInMinutes", type: { - name: "Composite", - className: "DayDetails" + name: "Number" } }, - hourlyRecurrence: { - serializedName: "properties.hourlyRecurrence", + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.webhookUrl", type: { - name: "Composite", - className: "HourDetails" + name: "String" } }, - timeZoneId: { - serializedName: "properties.timeZoneId", + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.emailRecipient", type: { name: "String" } }, - notificationSettings: { - serializedName: "properties.notificationSettings", + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.notificationLocale", type: { - name: "Composite", - className: "NotificationSettings" + name: "String" } }, - targetResourceId: { - serializedName: "properties.targetResourceId", + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.hourlyRecurrence.minute", type: { - name: "String" + name: "Number" } - } - } - } -}; - -export const FormulaPropertiesFromVm: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "FormulaPropertiesFromVm", - modelProperties: { - labVmId: { - serializedName: "labVmId", + }, + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.dailyRecurrence.time", type: { name: "String" } - } - } - } -}; - -export const GalleryImageList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GalleryImageList", - modelProperties: { - value: { - serializedName: "value", + }, + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.weekdays", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "GalleryImage" + name: "String" } } } }, - nextLink: { - serializedName: "nextLink", + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.time", type: { name: "String" } - } - } - } -}; - -export const NotificationChannelList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotificationChannelList", - modelProperties: { - value: { - serializedName: "value", + }, + virtualNetworkId: { + serializedName: "properties.networkInterface.virtualNetworkId", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "NotificationChannel" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + subnetId: { + serializedName: "properties.networkInterface.subnetId", type: { name: "String" } - } - } - } -}; - -export const Event: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Event", - modelProperties: { - eventName: { - serializedName: "eventName", + }, + publicIpAddressId: { + serializedName: "properties.networkInterface.publicIpAddressId", type: { name: "String" } - } - } - } -}; - -export const NotifyParameters: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotifyParameters", - modelProperties: { - eventName: { - serializedName: "eventName", + }, + publicIpAddress: { + serializedName: "properties.networkInterface.publicIpAddress", type: { name: "String" } }, - jsonPayload: { - serializedName: "jsonPayload", + privateIpAddress: { + serializedName: "properties.networkInterface.privateIpAddress", type: { name: "String" } - } - } - } -}; - -export const EvaluatePoliciesRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EvaluatePoliciesRequest", - modelProperties: { - policies: { - serializedName: "policies", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "EvaluatePoliciesProperties" - } - } - } - } - } - } -}; - -export const EvaluatePoliciesProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EvaluatePoliciesProperties", - modelProperties: { - factName: { - serializedName: "factName", + }, + dnsName: { + serializedName: "properties.networkInterface.dnsName", type: { name: "String" } }, - factData: { - serializedName: "factData", + rdpAuthority: { + serializedName: "properties.networkInterface.rdpAuthority", type: { name: "String" } }, - valueOffset: { - serializedName: "valueOffset", + sshAuthority: { + serializedName: "properties.networkInterface.sshAuthority", type: { name: "String" } }, - userObjectId: { - serializedName: "userObjectId", - type: { - name: "String" - } - } - } - } -}; - -export const EvaluatePoliciesResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EvaluatePoliciesResponse", - modelProperties: { - results: { - serializedName: "results", + inboundNatRules: { + serializedName: + "properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules", type: { name: "Sequence", element: { type: { name: "Composite", - className: "PolicySetResult" + className: "InboundNatRule" } } } - } - } - } -}; - -export const PolicySetResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PolicySetResult", - modelProperties: { - hasError: { - serializedName: "hasError", - type: { - name: "Boolean" - } }, - policyViolations: { - serializedName: "policyViolations", + statuses: { + serializedName: "properties.computeVm.statuses", type: { name: "Sequence", element: { type: { name: "Composite", - className: "PolicyViolation" + className: "ComputeVmInstanceViewStatus" } } } - } - } - } -}; - -export const PolicyViolation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PolicyViolation", - modelProperties: { - code: { - serializedName: "code", + }, + osTypePropertiesComputeVmOsType: { + serializedName: "properties.computeVm.osType", type: { name: "String" } }, - message: { - serializedName: "message", + vmSize: { + serializedName: "properties.computeVm.vmSize", type: { name: "String" } - } - } - } -}; - -export const PolicyList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PolicyList", - modelProperties: { - value: { - serializedName: "value", + }, + networkInterfaceId: { + serializedName: "properties.computeVm.networkInterfaceId", + type: { + name: "String" + } + }, + osDiskId: { + serializedName: "properties.computeVm.osDiskId", + type: { + name: "String" + } + }, + dataDiskIds: { + serializedName: "properties.computeVm.dataDiskIds", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + dataDisks: { + serializedName: "properties.computeVm.dataDisks", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Policy" + className: "ComputeDataDisk" } } } }, - nextLink: { - serializedName: "nextLink", + offer: { + serializedName: "properties.galleryImageReference.offer", type: { name: "String" } - } - } - } -}; - -export const IdentityProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IdentityProperties", - modelProperties: { - type: { - serializedName: "type", + }, + publisher: { + serializedName: "properties.galleryImageReference.publisher", type: { name: "String" } }, - principalId: { - serializedName: "principalId", + sku: { + serializedName: "properties.galleryImageReference.sku", type: { name: "String" } }, - tenantId: { - serializedName: "tenantId", + osTypePropertiesGalleryImageReferenceOsType: { + serializedName: "properties.galleryImageReference.osType", type: { name: "String" } }, - clientSecretUrl: { - serializedName: "clientSecretUrl", + version: { + serializedName: "properties.galleryImageReference.version", type: { name: "String" } - } - } - } -}; - -export const UserList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UserList", - modelProperties: { - value: { - serializedName: "value", + }, + deploymentStatus: { + serializedName: "properties.artifactDeploymentStatus.deploymentStatus", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "User" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + artifactsApplied: { + serializedName: "properties.artifactDeploymentStatus.artifactsApplied", type: { - name: "String" + name: "Number" + } + }, + totalArtifacts: { + serializedName: "properties.artifactDeploymentStatus.totalArtifacts", + type: { + name: "Number" + } + }, + instanceCount: { + serializedName: "properties.bulkCreationParameters.instanceCount", + type: { + name: "Number" } } } } }; -export const UserIdentity: coreClient.CompositeMapper = { +export const ArtifactInstallProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UserIdentity", + className: "ArtifactInstallProperties", modelProperties: { - principalName: { - serializedName: "principalName", + artifactId: { + serializedName: "artifactId", type: { name: "String" } }, - principalId: { - serializedName: "principalId", + artifactTitle: { + serializedName: "artifactTitle", type: { name: "String" } }, - tenantId: { - serializedName: "tenantId", + parameters: { + serializedName: "parameters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArtifactParameterProperties" + } + } + } + }, + status: { + serializedName: "status", type: { name: "String" } }, - objectId: { - serializedName: "objectId", + deploymentStatusMessage: { + serializedName: "deploymentStatusMessage", type: { name: "String" } }, - appId: { - serializedName: "appId", + vmExtensionStatusMessage: { + serializedName: "vmExtensionStatusMessage", type: { name: "String" } + }, + installTime: { + serializedName: "installTime", + type: { + name: "DateTime" + } } } } }; -export const UserSecretStore: coreClient.CompositeMapper = { +export const ArtifactParameterProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UserSecretStore", + className: "ArtifactParameterProperties", modelProperties: { - keyVaultUri: { - serializedName: "keyVaultUri", + name: { + serializedName: "name", type: { name: "String" } }, - keyVaultId: { - serializedName: "keyVaultId", + value: { + serializedName: "value", type: { name: "String" } @@ -2015,25 +1700,25 @@ export const UserSecretStore: coreClient.CompositeMapper = { } }; -export const DiskList: coreClient.CompositeMapper = { +export const ComputeVmInstanceViewStatus: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DiskList", + className: "ComputeVmInstanceViewStatus", modelProperties: { - value: { - serializedName: "value", + code: { + serializedName: "code", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Disk" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + displayStatus: { + serializedName: "displayStatus", + type: { + name: "String" + } + }, + message: { + serializedName: "message", type: { name: "String" } @@ -2042,94 +1727,109 @@ export const DiskList: coreClient.CompositeMapper = { } }; -export const AttachDiskProperties: coreClient.CompositeMapper = { +export const ComputeDataDisk: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AttachDiskProperties", + className: "ComputeDataDisk", modelProperties: { - leasedByLabVmId: { - serializedName: "leasedByLabVmId", + name: { + serializedName: "name", type: { name: "String" } - } - } - } -}; - -export const DetachDiskProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DetachDiskProperties", - modelProperties: { - leasedByLabVmId: { - serializedName: "leasedByLabVmId", + }, + diskUri: { + serializedName: "diskUri", + type: { + name: "String" + } + }, + managedDiskId: { + serializedName: "managedDiskId", type: { name: "String" } + }, + diskSizeGiB: { + serializedName: "diskSizeGiB", + type: { + name: "Number" + } } } } }; -export const DtlEnvironmentList: coreClient.CompositeMapper = { +export const InboundNatRule: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DtlEnvironmentList", + className: "InboundNatRule", modelProperties: { - value: { - serializedName: "value", + transportProtocol: { + serializedName: "transportProtocol", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DtlEnvironment" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + frontendPort: { + serializedName: "frontendPort", type: { - name: "String" + name: "Number" + } + }, + backendPort: { + serializedName: "backendPort", + type: { + name: "Number" } } } } }; -export const EnvironmentDeploymentProperties: coreClient.CompositeMapper = { +export const DataDiskProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EnvironmentDeploymentProperties", + className: "DataDiskProperties", modelProperties: { - armTemplateId: { - serializedName: "armTemplateId", + existingLabDiskId: { + serializedName: "existingLabDiskId", type: { name: "String" } }, - parameters: { - serializedName: "parameters", + hostCaching: { + serializedName: "hostCaching", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ArmTemplateParameterProperties" - } - } + name: "String" + } + }, + diskSizeGiB: { + serializedName: "attachNewDataDiskOptions.diskSizeGiB", + type: { + name: "Number" + } + }, + diskName: { + serializedName: "attachNewDataDiskOptions.diskName", + type: { + name: "String" + } + }, + diskType: { + serializedName: "attachNewDataDiskOptions.diskType", + type: { + name: "String" } } } } }; -export const ArmTemplateParameterProperties: coreClient.CompositeMapper = { +export const ScheduleCreationParameter: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ArmTemplateParameterProperties", + className: "ScheduleCreationParameter", modelProperties: { name: { serializedName: "name", @@ -2137,35 +1837,119 @@ export const ArmTemplateParameterProperties: coreClient.CompositeMapper = { name: "String" } }, - value: { - serializedName: "value", + location: { + serializedName: "location", type: { name: "String" } - } - } - } -}; - -export const SecretList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecretList", - modelProperties: { - value: { - serializedName: "value", + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + statusPropertiesStatus: { + serializedName: "properties.status", + type: { + name: "String" + } + }, + taskType: { + serializedName: "properties.taskType", + type: { + name: "String" + } + }, + timeZoneId: { + serializedName: "properties.timeZoneId", + type: { + name: "String" + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceId: { + serializedName: "properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesNotificationSettingsStatus: { + serializedName: "properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutes: { + serializedName: "properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrl: { + serializedName: "properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipient: { + serializedName: "properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocale: { + serializedName: "properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minute: { + serializedName: "properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesDailyRecurrenceTime: { + serializedName: "properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdays: { + serializedName: "properties.weeklyRecurrence.weekdays", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "Secret" + name: "String" } } } }, - nextLink: { - serializedName: "nextLink", + timePropertiesWeeklyRecurrenceTime: { + serializedName: "properties.weeklyRecurrence.time", type: { name: "String" } @@ -2174,19 +1958,20 @@ export const SecretList: coreClient.CompositeMapper = { } }; -export const ServiceFabricList: coreClient.CompositeMapper = { +export const GalleryImageList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceFabricList", + className: "GalleryImageList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ServiceFabric" + className: "GalleryImage" } } } @@ -2201,19 +1986,20 @@ export const ServiceFabricList: coreClient.CompositeMapper = { } }; -export const LabVirtualMachineList: coreClient.CompositeMapper = { +export const NotificationChannelList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "LabVirtualMachineList", + className: "NotificationChannelList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "LabVirtualMachine" + className: "NotificationChannel" } } } @@ -2228,93 +2014,83 @@ export const LabVirtualMachineList: coreClient.CompositeMapper = { } }; -export const ArtifactDeploymentStatusProperties: coreClient.CompositeMapper = { +export const Event: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ArtifactDeploymentStatusProperties", + className: "Event", modelProperties: { - deploymentStatus: { - serializedName: "deploymentStatus", + eventName: { + serializedName: "eventName", type: { name: "String" } - }, - artifactsApplied: { - serializedName: "artifactsApplied", + } + } + } +}; + +export const NotifyParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NotifyParameters", + modelProperties: { + eventName: { + serializedName: "eventName", type: { - name: "Number" + name: "String" } }, - totalArtifacts: { - serializedName: "totalArtifacts", + jsonPayload: { + serializedName: "jsonPayload", type: { - name: "Number" + name: "String" } } } } }; -export const ComputeVmProperties: coreClient.CompositeMapper = { +export const PolicySetList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ComputeVmProperties", + className: "PolicySetList", modelProperties: { - statuses: { - serializedName: "statuses", + value: { + serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ComputeVmInstanceViewStatus" + className: "PolicySet" } } } }, - osType: { - serializedName: "osType", + nextLink: { + serializedName: "nextLink", type: { name: "String" } - }, - vmSize: { - serializedName: "vmSize", - type: { - name: "String" - } - }, - networkInterfaceId: { - serializedName: "networkInterfaceId", - type: { - name: "String" - } - }, - osDiskId: { - serializedName: "osDiskId", - type: { - name: "String" - } - }, - dataDiskIds: { - serializedName: "dataDiskIds", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - dataDisks: { - serializedName: "dataDisks", + } + } + } +}; + +export const EvaluatePoliciesRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EvaluatePoliciesRequest", + modelProperties: { + policies: { + serializedName: "policies", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ComputeDataDisk" + className: "EvaluatePoliciesProperties" } } } @@ -2323,25 +2099,31 @@ export const ComputeVmProperties: coreClient.CompositeMapper = { } }; -export const ComputeVmInstanceViewStatus: coreClient.CompositeMapper = { +export const EvaluatePoliciesProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ComputeVmInstanceViewStatus", + className: "EvaluatePoliciesProperties", modelProperties: { - code: { - serializedName: "code", + factName: { + serializedName: "factName", type: { name: "String" } }, - displayStatus: { - serializedName: "displayStatus", + factData: { + serializedName: "factData", type: { name: "String" } }, - message: { - serializedName: "message", + valueOffset: { + serializedName: "valueOffset", + type: { + name: "String" + } + }, + userObjectId: { + serializedName: "userObjectId", type: { name: "String" } @@ -2350,52 +2132,46 @@ export const ComputeVmInstanceViewStatus: coreClient.CompositeMapper = { } }; -export const ComputeDataDisk: coreClient.CompositeMapper = { +export const EvaluatePoliciesResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ComputeDataDisk", + className: "EvaluatePoliciesResponse", modelProperties: { - name: { - serializedName: "name", - type: { - name: "String" - } - }, - diskUri: { - serializedName: "diskUri", - type: { - name: "String" - } - }, - managedDiskId: { - serializedName: "managedDiskId", - type: { - name: "String" - } - }, - diskSizeGiB: { - serializedName: "diskSizeGiB", + results: { + serializedName: "results", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PolicySetResult" + } + } } } } } }; -export const ApplyArtifactsRequest: coreClient.CompositeMapper = { +export const PolicySetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplyArtifactsRequest", + className: "PolicySetResult", modelProperties: { - artifacts: { - serializedName: "artifacts", + hasError: { + serializedName: "hasError", + type: { + name: "Boolean" + } + }, + policyViolations: { + serializedName: "policyViolations", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ArtifactInstallProperties" + className: "PolicyViolation" } } } @@ -2404,13 +2180,19 @@ export const ApplyArtifactsRequest: coreClient.CompositeMapper = { } }; -export const DetachDataDiskProperties: coreClient.CompositeMapper = { +export const PolicyViolation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DetachDataDiskProperties", + className: "PolicyViolation", modelProperties: { - existingLabDiskId: { - serializedName: "existingLabDiskId", + code: { + serializedName: "code", + type: { + name: "String" + } + }, + message: { + serializedName: "message", type: { name: "String" } @@ -2419,13 +2201,26 @@ export const DetachDataDiskProperties: coreClient.CompositeMapper = { } }; -export const RdpConnection: coreClient.CompositeMapper = { +export const PolicyList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RdpConnection", + className: "PolicyList", modelProperties: { - contents: { - serializedName: "contents", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Policy" + } + } + } + }, + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2434,13 +2229,26 @@ export const RdpConnection: coreClient.CompositeMapper = { } }; -export const ResizeLabVirtualMachineProperties: coreClient.CompositeMapper = { +export const LabSecretList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ResizeLabVirtualMachineProperties", + className: "LabSecretList", modelProperties: { - size: { - serializedName: "size", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabSecret" + } + } + } + }, + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2449,19 +2257,20 @@ export const ResizeLabVirtualMachineProperties: coreClient.CompositeMapper = { } }; -export const VirtualNetworkList: coreClient.CompositeMapper = { +export const ServiceRunnerList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "VirtualNetworkList", + className: "ServiceRunnerList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "VirtualNetwork" + className: "ServiceRunner" } } } @@ -2476,25 +2285,26 @@ export const VirtualNetworkList: coreClient.CompositeMapper = { } }; -export const Subnet: coreClient.CompositeMapper = { +export const SharedGalleryList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Subnet", + className: "SharedGalleryList", modelProperties: { - resourceId: { - serializedName: "resourceId", - type: { - name: "String" - } - }, - labSubnetName: { - serializedName: "labSubnetName", + value: { + serializedName: "value", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SharedGallery" + } + } } }, - allowPublicIp: { - serializedName: "allowPublicIp", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2503,19 +2313,26 @@ export const Subnet: coreClient.CompositeMapper = { } }; -export const ExternalSubnet: coreClient.CompositeMapper = { +export const SharedImageList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExternalSubnet", + className: "SharedImageList", modelProperties: { - id: { - serializedName: "id", + value: { + serializedName: "value", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SharedImage" + } + } } }, - name: { - serializedName: "name", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2524,44 +2341,13 @@ export const ExternalSubnet: coreClient.CompositeMapper = { } }; -export const SubnetOverride: coreClient.CompositeMapper = { +export const ImageVersionProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SubnetOverride", + className: "ImageVersionProperties", modelProperties: { - resourceId: { - serializedName: "resourceId", - type: { - name: "String" - } - }, - labSubnetName: { - serializedName: "labSubnetName", - type: { - name: "String" - } - }, - useInVmCreationPermission: { - serializedName: "useInVmCreationPermission", - type: { - name: "String" - } - }, - usePublicIpAddressPermission: { - serializedName: "usePublicIpAddressPermission", - type: { - name: "String" - } - }, - sharedPublicIpAddressConfiguration: { - serializedName: "sharedPublicIpAddressConfiguration", - type: { - name: "Composite", - className: "SubnetSharedPublicIpAddressConfiguration" - } - }, - virtualNetworkPoolName: { - serializedName: "virtualNetworkPoolName", + name: { + serializedName: "name", type: { name: "String" } @@ -2570,76 +2356,112 @@ export const SubnetOverride: coreClient.CompositeMapper = { } }; -export const SubnetSharedPublicIpAddressConfiguration: coreClient.CompositeMapper = { +export const UserList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SubnetSharedPublicIpAddressConfiguration", + className: "UserList", modelProperties: { - allowedPorts: { - serializedName: "allowedPorts", + value: { + serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Port" + className: "User" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const Port: coreClient.CompositeMapper = { +export const DiskList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Port", + className: "DiskList", modelProperties: { - transportProtocol: { - serializedName: "transportProtocol", + value: { + serializedName: "value", + readOnly: true, type: { - name: "String" - } + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Disk" + } + } + } }, - backendPort: { - serializedName: "backendPort", + nextLink: { + serializedName: "nextLink", type: { - name: "Number" + name: "String" } } } } }; -export const ExportResourceUsageParameters: coreClient.CompositeMapper = { +export const AttachDiskProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExportResourceUsageParameters", + className: "AttachDiskProperties", modelProperties: { - blobStorageAbsoluteSasUri: { - serializedName: "blobStorageAbsoluteSasUri", + leasedByLabVmId: { + serializedName: "leasedByLabVmId", type: { name: "String" } - }, - usageStartDate: { - serializedName: "usageStartDate", + } + } + } +}; + +export const DetachDiskProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DetachDiskProperties", + modelProperties: { + leasedByLabVmId: { + serializedName: "leasedByLabVmId", type: { - name: "DateTime" + name: "String" } } } } }; -export const GenerateUploadUriParameter: coreClient.CompositeMapper = { +export const EnvironmentList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GenerateUploadUriParameter", + className: "EnvironmentList", modelProperties: { - blobName: { - serializedName: "blobName", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Environment" + } + } + } + }, + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2648,13 +2470,19 @@ export const GenerateUploadUriParameter: coreClient.CompositeMapper = { } }; -export const GenerateUploadUriResponse: coreClient.CompositeMapper = { +export const ArmTemplateParameterProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GenerateUploadUriResponse", + className: "ArmTemplateParameterProperties", modelProperties: { - uploadUri: { - serializedName: "uploadUri", + name: { + serializedName: "name", + type: { + name: "String" + } + }, + value: { + serializedName: "value", type: { name: "String" } @@ -2663,19 +2491,54 @@ export const GenerateUploadUriResponse: coreClient.CompositeMapper = { } }; -export const ImportLabVirtualMachineRequest: coreClient.CompositeMapper = { +export const SecretList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ImportLabVirtualMachineRequest", + className: "SecretList", modelProperties: { - sourceVirtualMachineResourceId: { - serializedName: "sourceVirtualMachineResourceId", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Secret" + } + } + } + }, + nextLink: { + serializedName: "nextLink", type: { name: "String" } + } + } + } +}; + +export const ServiceFabricList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceFabricList", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ServiceFabric" + } + } + } }, - destinationVirtualMachineName: { - serializedName: "destinationVirtualMachineName", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2684,19 +2547,20 @@ export const ImportLabVirtualMachineRequest: coreClient.CompositeMapper = { } }; -export const LabVhdList: coreClient.CompositeMapper = { +export const VirtualMachineList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "LabVhdList", + className: "VirtualMachineList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "LabVhd" + className: "VirtualMachine" } } } @@ -2711,13 +2575,34 @@ export const LabVhdList: coreClient.CompositeMapper = { } }; -export const LabVhd: coreClient.CompositeMapper = { +export const ApplyArtifactsRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "LabVhd", + className: "ApplyArtifactsRequest", modelProperties: { - id: { - serializedName: "id", + artifacts: { + serializedName: "artifacts", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArtifactInstallProperties" + } + } + } + } + } + } +}; + +export const DetachDataDiskProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DetachDataDiskProperties", + modelProperties: { + existingLabDiskId: { + serializedName: "existingLabDiskId", type: { name: "String" } @@ -2726,19 +2611,28 @@ export const LabVhd: coreClient.CompositeMapper = { } }; -export const RetargetScheduleProperties: coreClient.CompositeMapper = { +export const RdpConnection: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RetargetScheduleProperties", + className: "RdpConnection", modelProperties: { - currentResourceId: { - serializedName: "currentResourceId", + contents: { + serializedName: "contents", type: { name: "String" } - }, - targetResourceId: { - serializedName: "targetResourceId", + } + } + } +}; + +export const ResizeLabVirtualMachineProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResizeLabVirtualMachineProperties", + modelProperties: { + size: { + serializedName: "size", type: { name: "String" } @@ -2747,19 +2641,20 @@ export const RetargetScheduleProperties: coreClient.CompositeMapper = { } }; -export const ServiceRunnerList: coreClient.CompositeMapper = { +export const VirtualNetworkList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceRunnerList", + className: "VirtualNetworkList", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ServiceRunner" + className: "VirtualNetwork" } } } @@ -2774,228 +2669,3739 @@ export const ServiceRunnerList: coreClient.CompositeMapper = { } }; -export const ShutdownNotificationContent: coreClient.CompositeMapper = { +export const Subnet: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ShutdownNotificationContent", + className: "Subnet", modelProperties: { - skipUrl: { - serializedName: "skipUrl", + resourceId: { + serializedName: "resourceId", type: { name: "String" } }, - delayUrl60: { - serializedName: "delayUrl60", + labSubnetName: { + serializedName: "labSubnetName", type: { name: "String" } }, - delayUrl120: { - serializedName: "delayUrl120", + allowPublicIp: { + serializedName: "allowPublicIp", type: { name: "String" } - }, - vmName: { - serializedName: "vmName", + } + } + } +}; + +export const ExternalSubnet: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExternalSubnet", + modelProperties: { + id: { + serializedName: "id", type: { name: "String" } }, - guid: { - serializedName: "guid", + name: { + serializedName: "name", type: { name: "String" } - }, - owner: { - serializedName: "owner", + } + } + } +}; + +export const SubnetOverride: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SubnetOverride", + modelProperties: { + resourceId: { + serializedName: "resourceId", type: { name: "String" } }, - vmUrl: { - serializedName: "vmUrl", + labSubnetName: { + serializedName: "labSubnetName", type: { name: "String" } }, - minutesUntilShutdown: { - serializedName: "minutesUntilShutdown", + useInVmCreationPermission: { + serializedName: "useInVmCreationPermission", type: { name: "String" } }, - eventType: { - serializedName: "eventType", + usePublicIpAddressPermission: { + serializedName: "usePublicIpAddressPermission", type: { name: "String" } }, - text: { - serializedName: "text", + virtualNetworkPoolName: { + serializedName: "virtualNetworkPoolName", type: { name: "String" } }, - subscriptionId: { - serializedName: "subscriptionId", + allowedPorts: { + serializedName: "sharedPublicIpAddressConfiguration.allowedPorts", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Port" + } + } } - }, - resourceGroupName: { - serializedName: "resourceGroupName", + } + } + } +}; + +export const Port: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Port", + modelProperties: { + transportProtocol: { + serializedName: "transportProtocol", type: { name: "String" } }, - labName: { - serializedName: "labName", + backendPort: { + serializedName: "backendPort", type: { - name: "String" + name: "Number" } } } } }; -export const Lab: coreClient.CompositeMapper = { +export const BastionHostList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Lab", + className: "BastionHostList", modelProperties: { - ...Resource.type.modelProperties, - defaultStorageAccount: { - serializedName: "properties.defaultStorageAccount", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "BastionHost" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const ExportResourceUsageParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExportResourceUsageParameters", + modelProperties: { + blobStorageAbsoluteSasUri: { + serializedName: "blobStorageAbsoluteSasUri", + type: { + name: "String" + } + }, + usageStartDate: { + serializedName: "usageStartDate", + type: { + name: "DateTime" + } + } + } + } +}; + +export const GenerateUploadUriParameter: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GenerateUploadUriParameter", + modelProperties: { + blobName: { + serializedName: "blobName", + type: { + name: "String" + } + } + } + } +}; + +export const GenerateUploadUriResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GenerateUploadUriResponse", + modelProperties: { + uploadUri: { + serializedName: "uploadUri", + type: { + name: "String" + } + } + } + } +}; + +export const ImportLabVirtualMachineRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ImportLabVirtualMachineRequest", + modelProperties: { + sourceVirtualMachineResourceId: { + serializedName: "sourceVirtualMachineResourceId", + type: { + name: "String" + } + }, + destinationVirtualMachineName: { + serializedName: "destinationVirtualMachineName", + type: { + name: "String" + } + } + } + } +}; + +export const LabVhdList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabVhdList", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabVhd" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const LabVhd: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabVhd", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + } + } + } +}; + +export const RetargetScheduleProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RetargetScheduleProperties", + modelProperties: { + currentResourceId: { + serializedName: "currentResourceId", + type: { + name: "String" + } + }, + targetResourceId: { + serializedName: "targetResourceId", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceModelWithAllowedPropertySet: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySet", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" + } + }, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + }, + managedBy: { + serializedName: "managedBy", + type: { + name: "String" + } + }, + kind: { + constraints: { + Pattern: new RegExp("^[-\\w\\._,\\(\\)]+$") + }, + serializedName: "kind", + type: { + name: "String" + } + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetIdentity" + } + }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetSku" + } + }, + plan: { + serializedName: "plan", + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetPlan" + } + } + } + } +}; + +export const Identity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Identity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + tenantId: { + serializedName: "tenantId", + readOnly: true, + type: { + name: "String" + } + }, + type: { + defaultValue: "SystemAssigned", + isConstant: true, + serializedName: "type", + type: { + name: "String" + } + } + } + } +}; + +export const Sku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Sku", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String" + } + }, + tier: { + serializedName: "tier", + type: { + name: "Enum", + allowedValues: ["Free", "Basic", "Standard", "Premium"] + } + }, + size: { + serializedName: "size", + type: { + name: "String" + } + }, + family: { + serializedName: "family", + type: { + name: "String" + } + }, + capacity: { + serializedName: "capacity", + type: { + name: "Number" + } + } + } + } +}; + +export const Plan: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Plan", + modelProperties: { + name: { + serializedName: "name", + required: true, + type: { + name: "String" + } + }, + publisher: { + serializedName: "publisher", + required: true, + type: { + name: "String" + } + }, + product: { + serializedName: "product", + required: true, + type: { + name: "String" + } + }, + promotionCode: { + serializedName: "promotionCode", + type: { + name: "String" + } + }, + version: { + serializedName: "version", + type: { + name: "String" + } + } + } + } +}; + +export const OperationStatusResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "OperationStatusResult", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + status: { + serializedName: "status", + required: true, + type: { + name: "String" + } + }, + percentComplete: { + constraints: { + InclusiveMaximum: 100, + InclusiveMinimum: 0 + }, + serializedName: "percentComplete", + type: { + name: "Number" + } + }, + startTime: { + serializedName: "startTime", + type: { + name: "DateTime" + } + }, + endTime: { + serializedName: "endTime", + type: { + name: "DateTime" + } + }, + operations: { + serializedName: "operations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "OperationStatusResult" + } + } + } + }, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorDetail" + } + } + } + } +}; + +export const LocationData: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LocationData", + modelProperties: { + name: { + constraints: { + MaxLength: 256 + }, + serializedName: "name", + required: true, + type: { + name: "String" + } + }, + city: { + serializedName: "city", + type: { + name: "String" + } + }, + district: { + serializedName: "district", + type: { + name: "String" + } + }, + countryOrRegion: { + serializedName: "countryOrRegion", + type: { + name: "String" + } + } + } + } +}; + +export const EncryptionProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EncryptionProperties", + modelProperties: { + status: { + serializedName: "status", + type: { + name: "String" + } + }, + keyVaultProperties: { + serializedName: "keyVaultProperties", + type: { + name: "Composite", + className: "KeyVaultProperties" + } + } + } + } +}; + +export const KeyVaultProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyVaultProperties", + modelProperties: { + keyIdentifier: { + serializedName: "keyIdentifier", + type: { + name: "String" + } + }, + identity: { + serializedName: "identity", + type: { + name: "String" + } + } + } + } +}; + +export const CheckNameAvailabilityRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CheckNameAvailabilityRequest", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "String" + } + } + } + } +}; + +export const CheckNameAvailabilityResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CheckNameAvailabilityResponse", + modelProperties: { + nameAvailable: { + serializedName: "nameAvailable", + type: { + name: "Boolean" + } + }, + reason: { + serializedName: "reason", + type: { + name: "String" + } + }, + message: { + serializedName: "message", + type: { + name: "String" + } + } + } + } +}; + +export const TrackedResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + ...Resource.type.modelProperties, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + location: { + serializedName: "location", + required: true, + type: { + name: "String" + } + } + } + } +}; + +export const ArmTemplate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ArmTemplate", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + displayName: { + serializedName: "properties.displayName", + readOnly: true, + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + readOnly: true, + type: { + name: "String" + } + }, + publisher: { + serializedName: "properties.publisher", + readOnly: true, + type: { + name: "String" + } + }, + icon: { + serializedName: "properties.icon", + readOnly: true, + type: { + name: "String" + } + }, + contents: { + serializedName: "properties.contents", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + parametersValueFilesInfo: { + serializedName: "properties.parametersValueFilesInfo", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ParametersValueFileInfo" + } + } + } + }, + enabled: { + serializedName: "properties.enabled", + readOnly: true, + type: { + name: "Boolean" + } + } + } + } +}; + +export const Artifact: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Artifact", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + title: { + serializedName: "properties.title", + readOnly: true, + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + readOnly: true, + type: { + name: "String" + } + }, + publisher: { + serializedName: "properties.publisher", + readOnly: true, + type: { + name: "String" + } + }, + filePath: { + serializedName: "properties.filePath", + readOnly: true, + type: { + name: "String" + } + }, + icon: { + serializedName: "properties.icon", + readOnly: true, + type: { + name: "String" + } + }, + targetOsType: { + serializedName: "properties.targetOsType", + readOnly: true, + type: { + name: "String" + } + }, + parameters: { + serializedName: "properties.parameters", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + } + } + } +}; + +export const LabCost: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabCost", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + labCostDetails: { + serializedName: "properties.labCostDetails", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabCostDetailsProperties" + } + } + } + }, + resourceCosts: { + serializedName: "properties.resourceCosts", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabResourceCostProperties" + } + } + } + }, + currencyCode: { + serializedName: "properties.currencyCode", + type: { + name: "String" + } + }, + startDateTime: { + serializedName: "properties.startDateTime", + type: { + name: "DateTime" + } + }, + endDateTime: { + serializedName: "properties.endDateTime", + type: { + name: "DateTime" + } + }, + createdDate: { + serializedName: "properties.createdDate", + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + estimatedLabCost: { + serializedName: "properties.labCostSummary.estimatedLabCost", + type: { + name: "Number" + } + }, + status: { + serializedName: "properties.targetCost.status", + type: { + name: "String" + } + }, + target: { + serializedName: "properties.targetCost.target", + type: { + name: "Number" + } + }, + costThresholds: { + serializedName: "properties.targetCost.costThresholds", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CostThresholdProperties" + } + } + } + }, + cycleStartDateTime: { + serializedName: "properties.targetCost.cycleStartDateTime", + type: { + name: "DateTime" + } + }, + cycleEndDateTime: { + serializedName: "properties.targetCost.cycleEndDateTime", + type: { + name: "DateTime" + } + }, + cycleType: { + serializedName: "properties.targetCost.cycleType", + type: { + name: "String" + } + } + } + } +}; + +export const ApplicableSchedule: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicableSchedule", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + idPropertiesLabVmsStartupId: { + serializedName: "properties.labVmsStartup.id", + readOnly: true, + type: { + name: "String" + } + }, + namePropertiesLabVmsStartupName: { + serializedName: "properties.labVmsStartup.name", + readOnly: true, + type: { + name: "String" + } + }, + typePropertiesLabVmsStartupType: { + serializedName: "properties.labVmsStartup.type", + readOnly: true, + type: { + name: "String" + } + }, + tagsPropertiesLabVmsStartupTags: { + serializedName: "properties.labVmsStartup.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesLabVmsStartupLocation: { + serializedName: "properties.labVmsStartup.location", + type: { + name: "String" + } + }, + systemDataPropertiesLabVmsStartupSystemData: { + serializedName: "properties.labVmsStartup.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesLabVmsStartupPropertiesStatus: { + serializedName: "properties.labVmsStartup.properties.status", + type: { + name: "String" + } + }, + taskTypePropertiesLabVmsStartupPropertiesTaskType: { + serializedName: "properties.labVmsStartup.properties.taskType", + type: { + name: "String" + } + }, + timeZoneIdPropertiesLabVmsStartupPropertiesTimeZoneId: { + serializedName: "properties.labVmsStartup.properties.timeZoneId", + type: { + name: "String" + } + }, + createdDatePropertiesLabVmsStartupPropertiesCreatedDate: { + serializedName: "properties.labVmsStartup.properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceIdPropertiesLabVmsStartupPropertiesTargetResourceId: { + serializedName: "properties.labVmsStartup.properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningStatePropertiesLabVmsStartupPropertiesProvisioningState: { + serializedName: "properties.labVmsStartup.properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesLabVmsStartupPropertiesUniqueIdentifier: { + serializedName: "properties.labVmsStartup.properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesLabVmsStartupPropertiesNotificationSettingsStatus: { + serializedName: + "properties.labVmsStartup.properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutesPropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.labVmsStartup.properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrlPropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.labVmsStartup.properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipientPropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.labVmsStartup.properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocalePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.labVmsStartup.properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minutePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.labVmsStartup.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesLabVmsStartupPropertiesDailyRecurrenceTime: { + serializedName: + "properties.labVmsStartup.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.labVmsStartup.properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.labVmsStartup.properties.weeklyRecurrence.time", + type: { + name: "String" + } + }, + idPropertiesLabVmsShutdownId: { + serializedName: "properties.labVmsShutdown.id", + readOnly: true, + type: { + name: "String" + } + }, + namePropertiesLabVmsShutdownName: { + serializedName: "properties.labVmsShutdown.name", + readOnly: true, + type: { + name: "String" + } + }, + typePropertiesLabVmsShutdownType: { + serializedName: "properties.labVmsShutdown.type", + readOnly: true, + type: { + name: "String" + } + }, + tagsPropertiesLabVmsShutdownTags: { + serializedName: "properties.labVmsShutdown.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesLabVmsShutdownLocation: { + serializedName: "properties.labVmsShutdown.location", + type: { + name: "String" + } + }, + systemDataPropertiesLabVmsShutdownSystemData: { + serializedName: "properties.labVmsShutdown.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesLabVmsShutdownPropertiesStatus: { + serializedName: "properties.labVmsShutdown.properties.status", + type: { + name: "String" + } + }, + taskTypePropertiesLabVmsShutdownPropertiesTaskType: { + serializedName: "properties.labVmsShutdown.properties.taskType", + type: { + name: "String" + } + }, + timeZoneIdPropertiesLabVmsShutdownPropertiesTimeZoneId: { + serializedName: "properties.labVmsShutdown.properties.timeZoneId", + type: { + name: "String" + } + }, + createdDatePropertiesLabVmsShutdownPropertiesCreatedDate: { + serializedName: "properties.labVmsShutdown.properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceIdPropertiesLabVmsShutdownPropertiesTargetResourceId: { + serializedName: "properties.labVmsShutdown.properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningStatePropertiesLabVmsShutdownPropertiesProvisioningState: { + serializedName: + "properties.labVmsShutdown.properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesLabVmsShutdownPropertiesUniqueIdentifier: { + serializedName: "properties.labVmsShutdown.properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesLabVmsShutdownPropertiesNotificationSettingsStatus: { + serializedName: + "properties.labVmsShutdown.properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutesPropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.labVmsShutdown.properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrlPropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.labVmsShutdown.properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipientPropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.labVmsShutdown.properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocalePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.labVmsShutdown.properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minutePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.labVmsShutdown.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime: { + serializedName: + "properties.labVmsShutdown.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.labVmsShutdown.properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.labVmsShutdown.properties.weeklyRecurrence.time", + type: { + name: "String" + } + } + } + } +}; + +export const GalleryImage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GalleryImage", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + author: { + serializedName: "properties.author", + type: { + name: "String" + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + icon: { + serializedName: "properties.icon", + type: { + name: "String" + } + }, + enabled: { + serializedName: "properties.enabled", + type: { + name: "Boolean" + } + }, + planId: { + serializedName: "properties.planId", + type: { + name: "String" + } + }, + isPlanAuthorized: { + serializedName: "properties.isPlanAuthorized", + type: { + name: "Boolean" + } + }, + offer: { + serializedName: "properties.imageReference.offer", + type: { + name: "String" + } + }, + publisher: { + serializedName: "properties.imageReference.publisher", + type: { + name: "String" + } + }, + sku: { + serializedName: "properties.imageReference.sku", + type: { + name: "String" + } + }, + osType: { + serializedName: "properties.imageReference.osType", + type: { + name: "String" + } + }, + version: { + serializedName: "properties.imageReference.version", + type: { + name: "String" + } + } + } + } +}; + +export const PolicySet: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PolicySet", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const Cost: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Cost", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + labCostDetails: { + serializedName: "properties.labCostDetails", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabCostDetailsProperties" + } + } + } + }, + resourceCosts: { + serializedName: "properties.resourceCosts", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "LabResourceCostProperties" + } + } + } + }, + currencyCode: { + serializedName: "properties.currencyCode", + type: { + name: "String" + } + }, + startDateTime: { + serializedName: "properties.startDateTime", + type: { + name: "DateTime" + } + }, + endDateTime: { + serializedName: "properties.endDateTime", + type: { + name: "DateTime" + } + }, + createdDate: { + serializedName: "properties.createdDate", + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + estimatedLabCost: { + serializedName: "properties.labCostSummary.estimatedLabCost", + type: { + name: "Number" + } + }, + status: { + serializedName: "properties.targetCost.status", + type: { + name: "String" + } + }, + target: { + serializedName: "properties.targetCost.target", + type: { + name: "Number" + } + }, + costThresholds: { + serializedName: "properties.targetCost.costThresholds", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CostThresholdProperties" + } + } + } + }, + cycleStartDateTime: { + serializedName: "properties.targetCost.cycleStartDateTime", + type: { + name: "DateTime" + } + }, + cycleEndDateTime: { + serializedName: "properties.targetCost.cycleEndDateTime", + type: { + name: "DateTime" + } + }, + cycleType: { + serializedName: "properties.targetCost.cycleType", + type: { + name: "String" + } + } + } + } +}; + +export const AzureEntityResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AzureEntityResource", + modelProperties: { + ...Resource.type.modelProperties, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ProxyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProxyResource", + modelProperties: { + ...Resource.type.modelProperties + } + } +}; + +export const ArtifactSourceFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ArtifactSourceFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const CustomImageFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CustomImageFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const FormulaFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FormulaFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const NotificationChannelFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NotificationChannelFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const PolicyFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PolicyFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const ScheduleFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ScheduleFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const SecretFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SecretFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const SharedGalleryFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SharedGalleryFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const SharedImageFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SharedImageFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const UserFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UserFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const DiskFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiskFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const EnvironmentFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EnvironmentFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const ServiceFabricFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceFabricFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const VirtualMachineFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualMachineFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const VirtualNetworkFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VirtualNetworkFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const BastionHostFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BastionHostFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const LabFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const LabSecretFragment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabSecretFragment", + modelProperties: { + ...Tags.type.modelProperties + } + } +}; + +export const ResourceModelWithAllowedPropertySetIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetIdentity", + modelProperties: { + ...Identity.type.modelProperties + } + } +}; + +export const ResourceModelWithAllowedPropertySetSku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetSku", + modelProperties: { + ...Sku.type.modelProperties + } + } +}; + +export const ResourceModelWithAllowedPropertySetPlan: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceModelWithAllowedPropertySetPlan", + modelProperties: { + ...Plan.type.modelProperties + } + } +}; + +export const Lab: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Lab", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + typeIdentityType: { + serializedName: "identity.type", + type: { + name: "String" + } + }, + principalId: { + serializedName: "identity.principalId", + type: { + name: "String" + } + }, + tenantId: { + serializedName: "identity.tenantId", + type: { + name: "String" + } + }, + clientSecretUrl: { + serializedName: "identity.clientSecretUrl", + type: { + name: "String" + } + }, + userAssignedIdentities: { + serializedName: "identity.userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Dictionary", value: { type: { name: "any" } } } + } + } + }, + defaultStorageAccount: { + serializedName: "properties.defaultStorageAccount", + readOnly: true, + type: { + name: "String" + } + }, + defaultPremiumStorageAccount: { + serializedName: "properties.defaultPremiumStorageAccount", + readOnly: true, + type: { + name: "String" + } + }, + artifactsStorageAccount: { + serializedName: "properties.artifactsStorageAccount", + type: { + name: "String" + } + }, + premiumDataDiskStorageAccount: { + serializedName: "properties.premiumDataDiskStorageAccount", + readOnly: true, + type: { + name: "String" + } + }, + vaultName: { + serializedName: "properties.vaultName", + readOnly: true, + type: { + name: "String" + } + }, + labStorageType: { + serializedName: "properties.labStorageType", + type: { + name: "String" + } + }, + mandatoryArtifactsResourceIdsLinux: { + serializedName: "properties.mandatoryArtifactsResourceIdsLinux", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + mandatoryArtifactsResourceIdsWindows: { + serializedName: "properties.mandatoryArtifactsResourceIdsWindows", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + premiumDataDisks: { + serializedName: "properties.premiumDataDisks", + type: { + name: "String" + } + }, + environmentPermission: { + serializedName: "properties.environmentPermission", + type: { + name: "String" + } + }, + vmCreationResourceGroup: { + serializedName: "properties.vmCreationResourceGroup", + type: { + name: "String" + } + }, + publicIpId: { + serializedName: "properties.publicIpId", + readOnly: true, + type: { + name: "String" + } + }, + loadBalancerId: { + serializedName: "properties.loadBalancerId", + readOnly: true, + type: { + name: "String" + } + }, + networkSecurityGroupId: { + serializedName: "properties.networkSecurityGroupId", + readOnly: true, + type: { + name: "String" + } + }, + extendedProperties: { + serializedName: "properties.extendedProperties", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + browserConnect: { + serializedName: "properties.browserConnect", + type: { + name: "String" + } + }, + disableAutoUpgradeCseMinorVersion: { + serializedName: "properties.disableAutoUpgradeCseMinorVersion", + type: { + name: "Boolean" + } + }, + managementIdentities: { + serializedName: "properties.managementIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Dictionary", value: { type: { name: "any" } } } + } + } + }, + isolateLabResources: { + serializedName: "properties.isolateLabResources", + type: { + name: "String" + } + }, + defaultSecretName: { + serializedName: "properties.defaultSecretName", + type: { + name: "String" + } + }, + provisioningStatePropertiesProvisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesUniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + diskEncryptionSetId: { + serializedName: "properties.encryption.diskEncryptionSetId", + type: { + name: "String" + } + }, + typePropertiesEncryptionType: { + serializedName: "properties.encryption.type", + type: { + name: "String" + } + }, + enabledPropertiesSupportEnabled: { + serializedName: "properties.support.enabled", + type: { + name: "String" + } + }, + markdownPropertiesSupportMarkdown: { + serializedName: "properties.support.markdown", + type: { + name: "String" + } + }, + title: { + serializedName: "properties.announcement.title", + type: { + name: "String" + } + }, + markdownPropertiesAnnouncementMarkdown: { + serializedName: "properties.announcement.markdown", + type: { + name: "String" + } + }, + enabledPropertiesAnnouncementEnabled: { + serializedName: "properties.announcement.enabled", + type: { + name: "String" + } + }, + expirationDate: { + serializedName: "properties.announcement.expirationDate", + type: { + name: "DateTime" + } + }, + expired: { + serializedName: "properties.announcement.expired", + type: { + name: "Boolean" + } + }, + provisioningStatePropertiesAnnouncementProvisioningState: { + serializedName: "properties.announcement.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesAnnouncementUniqueIdentifier: { + serializedName: "properties.announcement.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const Schedule: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Schedule", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesStatus: { + serializedName: "properties.status", + type: { + name: "String" + } + }, + taskType: { + serializedName: "properties.taskType", + type: { + name: "String" + } + }, + timeZoneId: { + serializedName: "properties.timeZoneId", + type: { + name: "String" + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceId: { + serializedName: "properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesNotificationSettingsStatus: { + serializedName: "properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutes: { + serializedName: "properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrl: { + serializedName: "properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipient: { + serializedName: "properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocale: { + serializedName: "properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minute: { + serializedName: "properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesDailyRecurrenceTime: { + serializedName: "properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdays: { + serializedName: "properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesWeeklyRecurrenceTime: { + serializedName: "properties.weeklyRecurrence.time", + type: { + name: "String" + } + } + } + } +}; + +export const ArtifactSource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ArtifactSource", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + displayName: { + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + uri: { + serializedName: "properties.uri", + type: { + name: "String" + } + }, + sourceType: { + serializedName: "properties.sourceType", + type: { + name: "String" + } + }, + folderPath: { + serializedName: "properties.folderPath", + type: { + name: "String" + } + }, + armTemplateFolderPath: { + serializedName: "properties.armTemplateFolderPath", + type: { + name: "String" + } + }, + branchRef: { + serializedName: "properties.branchRef", + type: { + name: "String" + } + }, + securityToken: { + serializedName: "properties.securityToken", + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + type: { + name: "String" + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const CustomImage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CustomImage", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + author: { + serializedName: "properties.author", + type: { + name: "String" + } + }, + creationDate: { + serializedName: "properties.creationDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + managedImageId: { + serializedName: "properties.managedImageId", + type: { + name: "String" + } + }, + managedSnapshotId: { + serializedName: "properties.managedSnapshotId", + type: { + name: "String" + } + }, + dataDiskStorageInfo: { + serializedName: "properties.dataDiskStorageInfo", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DataDiskStorageTypeInfo" + } + } + } + }, + isPlanAuthorized: { + serializedName: "properties.isPlanAuthorized", + type: { + name: "Boolean" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + idPropertiesCustomImagePlanId: { + serializedName: "properties.customImagePlan.id", + type: { + name: "String" + } + }, + publisher: { + serializedName: "properties.customImagePlan.publisher", + type: { + name: "String" + } + }, + offer: { + serializedName: "properties.customImagePlan.offer", + type: { + name: "String" + } + }, + imageName: { + serializedName: "properties.vhd.imageName", + type: { + name: "String" + } + }, + sysPrep: { + serializedName: "properties.vhd.sysPrep", + type: { + name: "Boolean" + } + }, + osType: { + serializedName: "properties.vhd.osType", + type: { + name: "String" + } + }, + sourceVmId: { + serializedName: "properties.vm.sourceVmId", + type: { + name: "String" + } + }, + linuxOsState: { + serializedName: "properties.vm.linuxOsInfo.linuxOsState", + type: { + name: "String" + } + }, + windowsOsState: { + serializedName: "properties.vm.windowsOsInfo.windowsOsState", + type: { + name: "String" + } + } + } + } +}; + +export const Formula: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Formula", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + author: { + serializedName: "properties.author", + readOnly: true, + type: { + name: "String" + } + }, + osTypePropertiesOsType: { + serializedName: "properties.osType", + type: { + name: "String" + } + }, + creationDate: { + serializedName: "properties.creationDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + provisioningStatePropertiesProvisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesUniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + labVmId: { + serializedName: "properties.vm.labVmId", + type: { + name: "String" + } + }, + namePropertiesFormulaContentName: { + serializedName: "properties.formulaContent.name", + type: { + name: "String" + } + }, + locationPropertiesFormulaContentLocation: { + serializedName: "properties.formulaContent.location", + type: { + name: "String" + } + }, + tagsPropertiesFormulaContentTags: { + serializedName: "properties.formulaContent.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + notes: { + serializedName: "properties.formulaContent.properties.notes", + type: { + name: "String" + } + }, + ownerObjectId: { + defaultValue: "dynamicValue", + serializedName: "properties.formulaContent.properties.ownerObjectId", + type: { + name: "String" + } + }, + ownerUserPrincipalName: { + serializedName: + "properties.formulaContent.properties.ownerUserPrincipalName", + type: { + name: "String" + } + }, + createdByUserId: { + serializedName: "properties.formulaContent.properties.createdByUserId", + readOnly: true, + type: { + name: "String" + } + }, + createdByUser: { + serializedName: "properties.formulaContent.properties.createdByUser", + readOnly: true, + type: { + name: "String" + } + }, + createdDatePropertiesFormulaContentPropertiesCreatedDate: { + serializedName: "properties.formulaContent.properties.createdDate", + type: { + name: "DateTime" + } + }, + computeId: { + serializedName: "properties.formulaContent.properties.computeId", + readOnly: true, + type: { + name: "String" + } + }, + customImageId: { + serializedName: "properties.formulaContent.properties.customImageId", + type: { + name: "String" + } + }, + galleryImageVersionId: { + serializedName: + "properties.formulaContent.properties.galleryImageVersionId", + type: { + name: "String" + } + }, + sharedImageId: { + serializedName: "properties.formulaContent.properties.sharedImageId", + type: { + name: "String" + } + }, + sharedImageVersion: { + serializedName: + "properties.formulaContent.properties.sharedImageVersion", + type: { + name: "String" + } + }, + osTypePropertiesFormulaContentPropertiesOsType: { + serializedName: "properties.formulaContent.properties.osType", + readOnly: true, + type: { + name: "String" + } + }, + size: { + serializedName: "properties.formulaContent.properties.size", + type: { + name: "String" + } + }, + userName: { + serializedName: "properties.formulaContent.properties.userName", + type: { + name: "String" + } + }, + password: { + serializedName: "properties.formulaContent.properties.password", + type: { + name: "String" + } + }, + sshKey: { + serializedName: "properties.formulaContent.properties.sshKey", + type: { + name: "String" + } + }, + isAuthenticationWithSshKey: { + serializedName: + "properties.formulaContent.properties.isAuthenticationWithSshKey", + type: { + name: "Boolean" + } + }, + fqdn: { + serializedName: "properties.formulaContent.properties.fqdn", + readOnly: true, + type: { + name: "String" + } + }, + labSubnetName: { + serializedName: "properties.formulaContent.properties.labSubnetName", + type: { + name: "String" + } + }, + labVirtualNetworkId: { + serializedName: + "properties.formulaContent.properties.labVirtualNetworkId", + type: { + name: "String" + } + }, + disallowPublicIpAddress: { + defaultValue: false, + serializedName: + "properties.formulaContent.properties.disallowPublicIpAddress", + type: { + name: "Boolean" + } + }, + artifacts: { + serializedName: "properties.formulaContent.properties.artifacts", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArtifactInstallProperties" + } + } + } + }, + planId: { + serializedName: "properties.formulaContent.properties.planId", + type: { + name: "String" + } + }, + osDiskSizeGb: { + serializedName: "properties.formulaContent.properties.osDiskSizeGb", + type: { + name: "Number" + } + }, + expirationDate: { + serializedName: "properties.formulaContent.properties.expirationDate", + type: { + name: "DateTime" + } + }, + allowClaim: { + defaultValue: false, + serializedName: "properties.formulaContent.properties.allowClaim", + type: { + name: "Boolean" + } + }, + storageType: { + serializedName: "properties.formulaContent.properties.storageType", + type: { + name: "String" + } + }, + virtualMachineCreationSource: { + serializedName: + "properties.formulaContent.properties.virtualMachineCreationSource", + readOnly: true, + type: { + name: "String" + } + }, + environmentId: { + serializedName: "properties.formulaContent.properties.environmentId", + type: { + name: "String" + } + }, + dataDiskParameters: { + serializedName: + "properties.formulaContent.properties.dataDiskParameters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DataDiskProperties" + } + } + } + }, + scheduleParameters: { + serializedName: + "properties.formulaContent.properties.scheduleParameters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScheduleCreationParameter" + } + } + } + }, + lastKnownPowerState: { + serializedName: + "properties.formulaContent.properties.lastKnownPowerState", + readOnly: true, + type: { + name: "String" + } + }, + canApplyArtifacts: { + serializedName: + "properties.formulaContent.properties.canApplyArtifacts", + readOnly: true, + type: { + name: "Boolean" + } + }, + provisioningStatePropertiesFormulaContentPropertiesProvisioningState: { + serializedName: + "properties.formulaContent.properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesFormulaContentPropertiesUniqueIdentifier: { + serializedName: "properties.formulaContent.properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + idPropertiesFormulaContentPropertiesApplicableScheduleId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.id", + readOnly: true, + type: { + name: "String" + } + }, + namePropertiesFormulaContentPropertiesApplicableScheduleName: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.name", + readOnly: true, + type: { + name: "String" + } + }, + typePropertiesFormulaContentPropertiesApplicableScheduleType: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.type", + readOnly: true, + type: { + name: "String" + } + }, + systemDataPropertiesFormulaContentPropertiesApplicableScheduleSystemData: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.id", + readOnly: true, + type: { + name: "String" + } + }, + namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupName: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.name", + readOnly: true, + type: { + name: "String" + } + }, + typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupType: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.type", + readOnly: true, + type: { + name: "String" + } + }, + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupTags: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupLocation: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.location", + type: { + name: "String" + } + }, + systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.status", + type: { + name: "String" + } + }, + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.taskType", + type: { + name: "String" + } + }, + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.timeZoneId", + type: { + name: "String" + } + }, + createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.time", + type: { + name: "String" + } + }, + idPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.id", + readOnly: true, + type: { + name: "String" + } + }, + namePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownName: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.name", + readOnly: true, + type: { + name: "String" + } + }, + typePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownType: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.type", + readOnly: true, + type: { + name: "String" + } + }, + tagsPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownTags: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.location", + type: { + name: "String" + } + }, + systemDataPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.status", + type: { + name: "String" + } + }, + taskTypePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.taskType", + type: { + name: "String" + } + }, + timeZoneIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.timeZoneId", + type: { + name: "String" + } + }, + createdDatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + targetResourceIdPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningStatePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifierPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + }, + statusPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.status", + type: { + name: "String" + } + }, + timeInMinutesPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.timeInMinutes", + type: { + name: "Number" + } + }, + webhookUrlPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.webhookUrl", + type: { + name: "String" + } + }, + emailRecipientPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.emailRecipient", + type: { + name: "String" + } + }, + notificationLocalePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.notificationLocale", + type: { + name: "String" + } + }, + minutePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesFormulaContentPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.formulaContent.properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.time", + type: { + name: "String" + } + }, + virtualNetworkId: { + serializedName: + "properties.formulaContent.properties.networkInterface.virtualNetworkId", + type: { + name: "String" + } + }, + subnetId: { + serializedName: + "properties.formulaContent.properties.networkInterface.subnetId", + type: { + name: "String" + } + }, + publicIpAddressId: { + serializedName: + "properties.formulaContent.properties.networkInterface.publicIpAddressId", + type: { + name: "String" + } + }, + publicIpAddress: { + serializedName: + "properties.formulaContent.properties.networkInterface.publicIpAddress", + type: { + name: "String" + } + }, + privateIpAddress: { + serializedName: + "properties.formulaContent.properties.networkInterface.privateIpAddress", + type: { + name: "String" + } + }, + dnsName: { + serializedName: + "properties.formulaContent.properties.networkInterface.dnsName", + type: { + name: "String" + } + }, + rdpAuthority: { + serializedName: + "properties.formulaContent.properties.networkInterface.rdpAuthority", + type: { + name: "String" + } + }, + sshAuthority: { + serializedName: + "properties.formulaContent.properties.networkInterface.sshAuthority", + type: { + name: "String" + } + }, + inboundNatRules: { + serializedName: + "properties.formulaContent.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InboundNatRule" + } + } + } + }, + statuses: { + serializedName: + "properties.formulaContent.properties.computeVm.statuses", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ComputeVmInstanceViewStatus" + } + } + } + }, + osTypePropertiesFormulaContentPropertiesComputeVmOsType: { + serializedName: "properties.formulaContent.properties.computeVm.osType", + type: { + name: "String" + } + }, + vmSize: { + serializedName: "properties.formulaContent.properties.computeVm.vmSize", + type: { + name: "String" + } + }, + networkInterfaceId: { + serializedName: + "properties.formulaContent.properties.computeVm.networkInterfaceId", + type: { + name: "String" + } + }, + osDiskId: { + serializedName: + "properties.formulaContent.properties.computeVm.osDiskId", + type: { + name: "String" + } + }, + dataDiskIds: { + serializedName: + "properties.formulaContent.properties.computeVm.dataDiskIds", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + dataDisks: { + serializedName: + "properties.formulaContent.properties.computeVm.dataDisks", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ComputeDataDisk" + } + } + } + }, + offer: { + serializedName: + "properties.formulaContent.properties.galleryImageReference.offer", + type: { + name: "String" + } + }, + publisher: { + serializedName: + "properties.formulaContent.properties.galleryImageReference.publisher", + type: { + name: "String" + } + }, + sku: { + serializedName: + "properties.formulaContent.properties.galleryImageReference.sku", + type: { + name: "String" + } + }, + osTypePropertiesFormulaContentPropertiesGalleryImageReferenceOsType: { + serializedName: + "properties.formulaContent.properties.galleryImageReference.osType", + type: { + name: "String" + } + }, + version: { + serializedName: + "properties.formulaContent.properties.galleryImageReference.version", + type: { + name: "String" + } + }, + deploymentStatus: { + serializedName: + "properties.formulaContent.properties.artifactDeploymentStatus.deploymentStatus", + type: { + name: "String" + } + }, + artifactsApplied: { + serializedName: + "properties.formulaContent.properties.artifactDeploymentStatus.artifactsApplied", + type: { + name: "Number" + } + }, + totalArtifacts: { + serializedName: + "properties.formulaContent.properties.artifactDeploymentStatus.totalArtifacts", + type: { + name: "Number" + } + }, + instanceCount: { + serializedName: + "properties.formulaContent.properties.bulkCreationParameters.instanceCount", + type: { + name: "Number" + } + } + } + } +}; + +export const NotificationChannel: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NotificationChannel", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + webHookUrl: { + serializedName: "properties.webHookUrl", + type: { + name: "String" + } + }, + emailRecipient: { + serializedName: "properties.emailRecipient", + type: { + name: "String" + } + }, + notificationLocale: { + serializedName: "properties.notificationLocale", + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + events: { + serializedName: "properties.events", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Event" + } + } + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const Policy: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Policy", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + type: { + name: "String" + } + }, + factName: { + serializedName: "properties.factName", + type: { + name: "String" + } + }, + factData: { + serializedName: "properties.factData", + type: { + name: "String" + } + }, + threshold: { + serializedName: "properties.threshold", + type: { + name: "String" + } + }, + evaluatorType: { + serializedName: "properties.evaluatorType", + type: { + name: "String" + } + }, + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const LabSecret: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "LabSecret", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + value: { + serializedName: "properties.value", + type: { + name: "String" + } + }, + keyVaultEntry: { + serializedName: "properties.keyVaultEntry", + readOnly: true, + type: { + name: "String" + } + }, + enabledForArtifacts: { + serializedName: "properties.enabledForArtifacts", + type: { + name: "Boolean" + } + }, + enabledForVmCreation: { + serializedName: "properties.enabledForVmCreation", + type: { + name: "Boolean" + } + }, + enabledForArmEnvironments: { + serializedName: "properties.enabledForArmEnvironments", + type: { + name: "Boolean" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", readOnly: true, type: { name: "String" } + } + } + } +}; + +export const ServiceRunner: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceRunner", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + typeIdentityType: { + serializedName: "identity.type", + type: { + name: "String" + } + }, + principalId: { + serializedName: "identity.principalId", + type: { + name: "String" + } + }, + tenantId: { + serializedName: "identity.tenantId", + type: { + name: "String" + } }, - defaultPremiumStorageAccount: { - serializedName: "properties.defaultPremiumStorageAccount", - readOnly: true, + clientSecretUrl: { + serializedName: "identity.clientSecretUrl", type: { name: "String" } }, - artifactsStorageAccount: { - serializedName: "properties.artifactsStorageAccount", - readOnly: true, + userAssignedIdentities: { + serializedName: "identity.userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { name: "Dictionary", value: { type: { name: "any" } } } + } + } + }, + identityUsageType: { + serializedName: "properties.identityUsageType", type: { name: "String" } }, - premiumDataDiskStorageAccount: { - serializedName: "properties.premiumDataDiskStorageAccount", + provisioningState: { + serializedName: "properties.provisioningState", readOnly: true, type: { name: "String" } }, - vaultName: { - serializedName: "properties.vaultName", + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", readOnly: true, type: { name: "String" } + } + } + } +}; + +export const SharedGallery: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SharedGallery", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } }, - labStorageType: { - serializedName: "properties.labStorageType", + galleryId: { + serializedName: "properties.galleryId", type: { name: "String" } }, - mandatoryArtifactsResourceIdsLinux: { - serializedName: "properties.mandatoryArtifactsResourceIdsLinux", + allowAllImages: { + serializedName: "properties.allowAllImages", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - mandatoryArtifactsResourceIdsWindows: { - serializedName: "properties.mandatoryArtifactsResourceIdsWindows", + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", readOnly: true, type: { - name: "DateTime" + name: "String" + } + } + } + } +}; + +export const SharedImage: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SharedImage", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" } }, - premiumDataDisks: { - serializedName: "properties.premiumDataDisks", + definitionName: { + serializedName: "properties.definitionName", type: { name: "String" } }, - environmentPermission: { - serializedName: "properties.environmentPermission", + osType: { + serializedName: "properties.osType", type: { name: "String" } }, - announcement: { - serializedName: "properties.announcement", + imageType: { + serializedName: "properties.imageType", type: { - name: "Composite", - className: "LabAnnouncementProperties" + name: "String" } }, - support: { - serializedName: "properties.support", + enableState: { + serializedName: "properties.enableState", type: { - name: "Composite", - className: "LabSupportProperties" + name: "String" } }, - vmCreationResourceGroup: { - serializedName: "properties.vmCreationResourceGroup", - readOnly: true, + displayName: { + serializedName: "properties.displayName", type: { name: "String" } }, - publicIpId: { - serializedName: "properties.publicIpId", - readOnly: true, + versions: { + serializedName: "properties.versions", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ImageVersionProperties" + } + } } }, - loadBalancerId: { - serializedName: "properties.loadBalancerId", + provisioningState: { + serializedName: "properties.provisioningState", readOnly: true, type: { name: "String" } }, - networkSecurityGroupId: { - serializedName: "properties.networkSecurityGroupId", + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", readOnly: true, type: { name: "String" } + } + } + } +}; + +export const User: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "User", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } }, - extendedProperties: { - serializedName: "properties.extendedProperties", + createdDate: { + serializedName: "properties.createdDate", + readOnly: true, type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "DateTime" } }, provisioningState: { @@ -3011,61 +6417,100 @@ export const Lab: coreClient.CompositeMapper = { type: { name: "String" } + }, + keyVaultUri: { + serializedName: "properties.secretStore.keyVaultUri", + type: { + name: "String" + } + }, + keyVaultId: { + serializedName: "properties.secretStore.keyVaultId", + type: { + name: "String" + } + }, + principalName: { + serializedName: "properties.identity.principalName", + type: { + name: "String" + } + }, + principalId: { + serializedName: "properties.identity.principalId", + type: { + name: "String" + } + }, + tenantId: { + serializedName: "properties.identity.tenantId", + type: { + name: "String" + } + }, + objectId: { + serializedName: "properties.identity.objectId", + type: { + name: "String" + } + }, + appId: { + serializedName: "properties.identity.appId", + type: { + name: "String" + } } } } }; -export const Schedule: coreClient.CompositeMapper = { +export const Disk: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Schedule", + className: "Disk", modelProperties: { - ...Resource.type.modelProperties, - status: { - serializedName: "properties.status", + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - taskType: { - serializedName: "properties.taskType", + diskType: { + serializedName: "properties.diskType", type: { name: "String" } }, - weeklyRecurrence: { - serializedName: "properties.weeklyRecurrence", + diskSizeGiB: { + serializedName: "properties.diskSizeGiB", type: { - name: "Composite", - className: "WeekDetails" + name: "Number" } }, - dailyRecurrence: { - serializedName: "properties.dailyRecurrence", + leasedByLabVmId: { + serializedName: "properties.leasedByLabVmId", type: { - name: "Composite", - className: "DayDetails" + name: "String" } }, - hourlyRecurrence: { - serializedName: "properties.hourlyRecurrence", + diskBlobName: { + serializedName: "properties.diskBlobName", type: { - name: "Composite", - className: "HourDetails" + name: "String" } }, - timeZoneId: { - serializedName: "properties.timeZoneId", + diskUri: { + serializedName: "properties.diskUri", type: { name: "String" } }, - notificationSettings: { - serializedName: "properties.notificationSettings", + storageAccountId: { + serializedName: "properties.storageAccountId", type: { - name: "Composite", - className: "NotificationSettings" + name: "String" } }, createdDate: { @@ -3075,8 +6520,14 @@ export const Schedule: coreClient.CompositeMapper = { name: "DateTime" } }, - targetResourceId: { - serializedName: "properties.targetResourceId", + hostCaching: { + serializedName: "properties.hostCaching", + type: { + name: "String" + } + }, + managedDiskId: { + serializedName: "properties.managedDiskId", type: { name: "String" } @@ -3099,67 +6550,94 @@ export const Schedule: coreClient.CompositeMapper = { } }; -export const ArtifactSource: coreClient.CompositeMapper = { +export const Environment: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ArtifactSource", + className: "Environment", modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + armTemplateDisplayName: { + serializedName: "properties.armTemplateDisplayName", type: { name: "String" } }, - uri: { - serializedName: "properties.uri", + resourceGroupId: { + serializedName: "properties.resourceGroupId", + readOnly: true, type: { name: "String" } }, - sourceType: { - serializedName: "properties.sourceType", + createdByUser: { + serializedName: "properties.createdByUser", + readOnly: true, type: { name: "String" } }, - folderPath: { - serializedName: "properties.folderPath", + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { name: "String" } }, - armTemplateFolderPath: { - serializedName: "properties.armTemplateFolderPath", + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, type: { name: "String" } }, - branchRef: { - serializedName: "properties.branchRef", + armTemplateId: { + serializedName: "properties.deploymentProperties.armTemplateId", type: { name: "String" } }, - securityToken: { - serializedName: "properties.securityToken", + parameters: { + serializedName: "properties.deploymentProperties.parameters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArmTemplateParameterProperties" + } + } + } + } + } + } +}; + +export const Secret: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Secret", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - status: { - serializedName: "properties.status", + value: { + serializedName: "properties.value", type: { name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", - readOnly: true, - type: { - name: "DateTime" - } - }, provisioningState: { serializedName: "properties.provisioningState", readOnly: true, @@ -3178,384 +6656,403 @@ export const ArtifactSource: coreClient.CompositeMapper = { } }; -export const ArmTemplate: coreClient.CompositeMapper = { +export const ServiceFabric: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ArmTemplate", + className: "ServiceFabric", modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - readOnly: true, + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + externalServiceFabricId: { + serializedName: "properties.externalServiceFabricId", type: { name: "String" } }, - description: { - serializedName: "properties.description", - readOnly: true, + environmentId: { + serializedName: "properties.environmentId", type: { name: "String" } }, - publisher: { - serializedName: "properties.publisher", + provisioningStatePropertiesProvisioningState: { + serializedName: "properties.provisioningState", readOnly: true, type: { name: "String" } }, - icon: { - serializedName: "properties.icon", + uniqueIdentifierPropertiesUniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", readOnly: true, type: { name: "String" } }, - contents: { - serializedName: "properties.contents", + idPropertiesApplicableScheduleId: { + serializedName: "properties.applicableSchedule.id", readOnly: true, type: { - name: "Dictionary", - value: { type: { name: "any" } } + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + namePropertiesApplicableScheduleName: { + serializedName: "properties.applicableSchedule.name", readOnly: true, type: { - name: "DateTime" + name: "String" } }, - parametersValueFilesInfo: { - serializedName: "properties.parametersValueFilesInfo", + typePropertiesApplicableScheduleType: { + serializedName: "properties.applicableSchedule.type", readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ParametersValueFileInfo" - } - } + name: "String" } }, - enabled: { - serializedName: "properties.enabled", - readOnly: true, + systemDataPropertiesApplicableScheduleSystemData: { + serializedName: "properties.applicableSchedule.systemData", type: { - name: "Boolean" + name: "Composite", + className: "SystemData" } - } - } - } -}; - -export const Artifact: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Artifact", - modelProperties: { - ...Resource.type.modelProperties, - title: { - serializedName: "properties.title", + }, + idPropertiesApplicableSchedulePropertiesLabVmsStartupId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.id", readOnly: true, type: { name: "String" } }, - description: { - serializedName: "properties.description", + namePropertiesApplicableSchedulePropertiesLabVmsStartupName: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.name", readOnly: true, type: { name: "String" } }, - publisher: { - serializedName: "properties.publisher", + typePropertiesApplicableSchedulePropertiesLabVmsStartupType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.type", readOnly: true, type: { name: "String" } }, - filePath: { - serializedName: "properties.filePath", - readOnly: true, + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.location", type: { name: "String" } }, - icon: { - serializedName: "properties.icon", - readOnly: true, + systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.status", type: { name: "String" } }, - targetOsType: { - serializedName: "properties.targetOsType", - readOnly: true, + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.taskType", type: { name: "String" } }, - parameters: { - serializedName: "properties.parameters", - readOnly: true, + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.timeZoneId", type: { - name: "Dictionary", - value: { type: { name: "any" } } + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.createdDate", readOnly: true, type: { name: "DateTime" } - } - } - } -}; - -export const LabCost: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabCost", - modelProperties: { - ...Resource.type.modelProperties, - targetCost: { - serializedName: "properties.targetCost", - type: { - name: "Composite", - className: "TargetCostProperties" - } }, - labCostSummary: { - serializedName: "properties.labCostSummary", + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.targetResourceId", type: { - name: "Composite", - className: "LabCostSummaryProperties" + name: "String" } }, - labCostDetails: { - serializedName: "properties.labCostDetails", + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.provisioningState", readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "LabCostDetailsProperties" - } - } + name: "String" } }, - resourceCosts: { - serializedName: "properties.resourceCosts", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.uniqueIdentifier", readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "LabResourceCostProperties" - } - } + name: "String" } }, - currencyCode: { - serializedName: "properties.currencyCode", + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.status", type: { name: "String" } }, - startDateTime: { - serializedName: "properties.startDateTime", + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.timeInMinutes", type: { - name: "DateTime" + name: "Number" } }, - endDateTime: { - serializedName: "properties.endDateTime", + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.webhookUrl", type: { - name: "DateTime" + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.emailRecipient", type: { - name: "DateTime" + name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.notificationLocale", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.hourlyRecurrence.minute", + type: { + name: "Number" + } + }, + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.dailyRecurrence.time", type: { name: "String" } - } - } - } -}; - -export const CustomImage: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomImage", - modelProperties: { - ...Resource.type.modelProperties, - vm: { - serializedName: "properties.vm", + }, + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.weekdays", type: { - name: "Composite", - className: "CustomImagePropertiesFromVm" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - vhd: { - serializedName: "properties.vhd", + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.time", type: { - name: "Composite", - className: "CustomImagePropertiesCustom" + name: "String" } }, - description: { - serializedName: "properties.description", + idPropertiesApplicableSchedulePropertiesLabVmsShutdownId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.id", + readOnly: true, type: { name: "String" } }, - author: { - serializedName: "properties.author", + namePropertiesApplicableSchedulePropertiesLabVmsShutdownName: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.name", + readOnly: true, type: { name: "String" } }, - creationDate: { - serializedName: "properties.creationDate", + typePropertiesApplicableSchedulePropertiesLabVmsShutdownType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.type", readOnly: true, type: { - name: "DateTime" + name: "String" } }, - managedImageId: { - serializedName: "properties.managedImageId", + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.location", type: { name: "String" } }, - managedSnapshotId: { - serializedName: "properties.managedSnapshotId", + systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.status", type: { name: "String" } }, - dataDiskStorageInfo: { - serializedName: "properties.dataDiskStorageInfo", + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.taskType", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DataDiskStorageTypeInfo" - } - } + name: "String" } }, - customImagePlan: { - serializedName: "properties.customImagePlan", + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.timeZoneId", type: { - name: "Composite", - className: "CustomImagePropertiesFromPlan" + name: "String" } }, - isPlanAuthorized: { - serializedName: "properties.isPlanAuthorized", + createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.createdDate", + readOnly: true, type: { - name: "Boolean" + name: "DateTime" } }, - provisioningState: { - serializedName: "properties.provisioningState", + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.targetResourceId", + type: { + name: "String" + } + }, + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.provisioningState", readOnly: true, type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.uniqueIdentifier", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const Formula: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Formula", - modelProperties: { - ...Resource.type.modelProperties, - description: { - serializedName: "properties.description", + }, + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.status", type: { name: "String" } }, - author: { - serializedName: "properties.author", - readOnly: true, + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.timeInMinutes", type: { - name: "String" + name: "Number" } }, - osType: { - serializedName: "properties.osType", + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.webhookUrl", type: { name: "String" } }, - creationDate: { - serializedName: "properties.creationDate", - readOnly: true, + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.emailRecipient", type: { - name: "DateTime" + name: "String" } }, - formulaContent: { - serializedName: "properties.formulaContent", + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.notificationLocale", type: { - name: "Composite", - className: "LabVirtualMachineCreationParameter" + name: "String" } }, - vm: { - serializedName: "properties.vm", + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.hourlyRecurrence.minute", type: { - name: "Composite", - className: "FormulaPropertiesFromVm" + name: "Number" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.dailyRecurrence.time", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.weekdays", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.time", type: { name: "String" } @@ -3564,740 +7061,789 @@ export const Formula: coreClient.CompositeMapper = { } }; -export const GalleryImage: coreClient.CompositeMapper = { +export const VirtualMachine: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GalleryImage", + className: "VirtualMachine", modelProperties: { - ...Resource.type.modelProperties, - author: { - serializedName: "properties.author", + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + notes: { + serializedName: "properties.notes", type: { name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", - readOnly: true, + ownerObjectId: { + defaultValue: "dynamicValue", + serializedName: "properties.ownerObjectId", type: { - name: "DateTime" + name: "String" } }, - description: { - serializedName: "properties.description", + ownerUserPrincipalName: { + serializedName: "properties.ownerUserPrincipalName", type: { name: "String" } }, - imageReference: { - serializedName: "properties.imageReference", + createdByUserId: { + serializedName: "properties.createdByUserId", + readOnly: true, type: { - name: "Composite", - className: "GalleryImageReference" + name: "String" } }, - icon: { - serializedName: "properties.icon", + createdByUser: { + serializedName: "properties.createdByUser", + readOnly: true, type: { name: "String" } }, - enabled: { - serializedName: "properties.enabled", + createdDatePropertiesCreatedDate: { + serializedName: "properties.createdDate", type: { - name: "Boolean" + name: "DateTime" } }, - planId: { - serializedName: "properties.planId", + computeId: { + serializedName: "properties.computeId", + readOnly: true, type: { name: "String" } }, - isPlanAuthorized: { - serializedName: "properties.isPlanAuthorized", + customImageId: { + serializedName: "properties.customImageId", type: { - name: "Boolean" + name: "String" } - } - } - } -}; - -export const NotificationChannel: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotificationChannel", - modelProperties: { - ...Resource.type.modelProperties, - webHookUrl: { - serializedName: "properties.webHookUrl", + }, + galleryImageVersionId: { + serializedName: "properties.galleryImageVersionId", type: { name: "String" } }, - emailRecipient: { - serializedName: "properties.emailRecipient", + sharedImageId: { + serializedName: "properties.sharedImageId", type: { name: "String" } }, - notificationLocale: { - serializedName: "properties.notificationLocale", + sharedImageVersion: { + serializedName: "properties.sharedImageVersion", type: { name: "String" } }, - description: { - serializedName: "properties.description", + osTypePropertiesOsType: { + serializedName: "properties.osType", + readOnly: true, type: { name: "String" } }, - events: { - serializedName: "properties.events", + size: { + serializedName: "properties.size", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Event" - } - } + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", - readOnly: true, + userName: { + serializedName: "properties.userName", type: { - name: "DateTime" + name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + password: { + serializedName: "properties.password", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + sshKey: { + serializedName: "properties.sshKey", type: { name: "String" } - } - } - } -}; - -export const Policy: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Policy", - modelProperties: { - ...Resource.type.modelProperties, - description: { - serializedName: "properties.description", + }, + isAuthenticationWithSshKey: { + serializedName: "properties.isAuthenticationWithSshKey", type: { - name: "String" + name: "Boolean" } }, - status: { - serializedName: "properties.status", + fqdn: { + serializedName: "properties.fqdn", + readOnly: true, type: { name: "String" } }, - factName: { - serializedName: "properties.factName", + labSubnetName: { + serializedName: "properties.labSubnetName", type: { name: "String" } }, - factData: { - serializedName: "properties.factData", + labVirtualNetworkId: { + serializedName: "properties.labVirtualNetworkId", type: { name: "String" } }, - threshold: { - serializedName: "properties.threshold", + disallowPublicIpAddress: { + defaultValue: false, + serializedName: "properties.disallowPublicIpAddress", type: { - name: "String" + name: "Boolean" } }, - evaluatorType: { - serializedName: "properties.evaluatorType", + artifacts: { + serializedName: "properties.artifacts", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArtifactInstallProperties" + } + } + } + }, + planId: { + serializedName: "properties.planId", type: { name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", - readOnly: true, + osDiskSizeGb: { + serializedName: "properties.osDiskSizeGb", + type: { + name: "Number" + } + }, + expirationDate: { + serializedName: "properties.expirationDate", type: { name: "DateTime" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + allowClaim: { + defaultValue: false, + serializedName: "properties.allowClaim", + type: { + name: "Boolean" + } + }, + storageType: { + serializedName: "properties.storageType", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", + virtualMachineCreationSource: { + serializedName: "properties.virtualMachineCreationSource", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const ServiceRunner: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServiceRunner", - modelProperties: { - ...Resource.type.modelProperties, - identity: { - serializedName: "identity", + }, + environmentId: { + serializedName: "properties.environmentId", type: { - name: "Composite", - className: "IdentityProperties" + name: "String" } - } - } - } -}; - -export const User: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "User", - modelProperties: { - ...Resource.type.modelProperties, - identity: { - serializedName: "properties.identity", + }, + dataDiskParameters: { + serializedName: "properties.dataDiskParameters", type: { - name: "Composite", - className: "UserIdentity" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DataDiskProperties" + } + } + } + }, + scheduleParameters: { + serializedName: "properties.scheduleParameters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ScheduleCreationParameter" + } + } } }, - secretStore: { - serializedName: "properties.secretStore", + lastKnownPowerState: { + serializedName: "properties.lastKnownPowerState", + readOnly: true, type: { - name: "Composite", - className: "UserSecretStore" + name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + canApplyArtifacts: { + serializedName: "properties.canApplyArtifacts", readOnly: true, type: { - name: "DateTime" + name: "Boolean" } }, - provisioningState: { + provisioningStatePropertiesProvisioningState: { serializedName: "properties.provisioningState", readOnly: true, type: { name: "String" } }, - uniqueIdentifier: { + uniqueIdentifierPropertiesUniqueIdentifier: { serializedName: "properties.uniqueIdentifier", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const Disk: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Disk", - modelProperties: { - ...Resource.type.modelProperties, - diskType: { - serializedName: "properties.diskType", + }, + idPropertiesApplicableScheduleId: { + serializedName: "properties.applicableSchedule.id", + readOnly: true, type: { name: "String" } }, - diskSizeGiB: { - serializedName: "properties.diskSizeGiB", + namePropertiesApplicableScheduleName: { + serializedName: "properties.applicableSchedule.name", + readOnly: true, type: { - name: "Number" + name: "String" } }, - leasedByLabVmId: { - serializedName: "properties.leasedByLabVmId", + typePropertiesApplicableScheduleType: { + serializedName: "properties.applicableSchedule.type", + readOnly: true, type: { name: "String" } }, - diskBlobName: { - serializedName: "properties.diskBlobName", + systemDataPropertiesApplicableScheduleSystemData: { + serializedName: "properties.applicableSchedule.systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - diskUri: { - serializedName: "properties.diskUri", + idPropertiesApplicableSchedulePropertiesLabVmsStartupId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.id", + readOnly: true, type: { name: "String" } }, - storageAccountId: { - serializedName: "properties.storageAccountId", + namePropertiesApplicableSchedulePropertiesLabVmsStartupName: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.name", + readOnly: true, type: { name: "String" } }, - createdDate: { - serializedName: "properties.createdDate", + typePropertiesApplicableSchedulePropertiesLabVmsStartupType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.type", readOnly: true, type: { - name: "DateTime" + name: "String" } }, - hostCaching: { - serializedName: "properties.hostCaching", + tagsPropertiesApplicableSchedulePropertiesLabVmsStartupTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - managedDiskId: { - serializedName: "properties.managedDiskId", + locationPropertiesApplicableSchedulePropertiesLabVmsStartupLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.location", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + systemDataPropertiesApplicableSchedulePropertiesLabVmsStartupSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.status", type: { name: "String" } - } - } - } -}; - -export const DtlEnvironment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DtlEnvironment", - modelProperties: { - ...Resource.type.modelProperties, - deploymentProperties: { - serializedName: "properties.deploymentProperties", + }, + taskTypePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.taskType", type: { - name: "Composite", - className: "EnvironmentDeploymentProperties" + name: "String" } }, - armTemplateDisplayName: { - serializedName: "properties.armTemplateDisplayName", + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.timeZoneId", type: { name: "String" } }, - resourceGroupId: { - serializedName: "properties.resourceGroupId", + createdDatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.createdDate", readOnly: true, type: { - name: "String" + name: "DateTime" } }, - createdByUser: { - serializedName: "properties.createdByUser", - readOnly: true, + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.targetResourceId", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.provisioningState", readOnly: true, type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.uniqueIdentifier", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const Secret: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Secret", - modelProperties: { - ...Resource.type.modelProperties, - value: { - serializedName: "properties.value", + }, + statusPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.status", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.timeInMinutes", type: { - name: "String" + name: "Number" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.webhookUrl", type: { name: "String" } - } - } - } -}; - -export const ApplicableSchedule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApplicableSchedule", - modelProperties: { - ...Resource.type.modelProperties, - labVmsShutdown: { - serializedName: "properties.labVmsShutdown", + }, + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.emailRecipient", type: { - name: "Composite", - className: "Schedule" + name: "String" } }, - labVmsStartup: { - serializedName: "properties.labVmsStartup", + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.notificationSettings.notificationLocale", type: { - name: "Composite", - className: "Schedule" + name: "String" } - } - } - } -}; - -export const ServiceFabric: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServiceFabric", - modelProperties: { - ...Resource.type.modelProperties, - externalServiceFabricId: { - serializedName: "properties.externalServiceFabricId", + }, + minutePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.hourlyRecurrence.minute", type: { - name: "String" + name: "Number" } }, - environmentId: { - serializedName: "properties.environmentId", + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.dailyRecurrence.time", type: { name: "String" } }, - applicableSchedule: { - serializedName: "properties.applicableSchedule", + weekdaysPropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.weekdays", type: { - name: "Composite", - className: "ApplicableSchedule" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + timePropertiesApplicableSchedulePropertiesLabVmsStartupPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsStartup.properties.weeklyRecurrence.time", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", + idPropertiesApplicableSchedulePropertiesLabVmsShutdownId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.id", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const LabVirtualMachine: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabVirtualMachine", - modelProperties: { - ...Resource.type.modelProperties, - notes: { - serializedName: "properties.notes", + }, + namePropertiesApplicableSchedulePropertiesLabVmsShutdownName: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.name", + readOnly: true, type: { name: "String" } }, - ownerObjectId: { - defaultValue: "dynamicValue", - serializedName: "properties.ownerObjectId", + typePropertiesApplicableSchedulePropertiesLabVmsShutdownType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.type", + readOnly: true, type: { name: "String" } }, - ownerUserPrincipalName: { - serializedName: "properties.ownerUserPrincipalName", + tagsPropertiesApplicableSchedulePropertiesLabVmsShutdownTags: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - createdByUserId: { - serializedName: "properties.createdByUserId", - readOnly: true, + locationPropertiesApplicableSchedulePropertiesLabVmsShutdownLocation: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.location", type: { name: "String" } }, - createdByUser: { - serializedName: "properties.createdByUser", - readOnly: true, + systemDataPropertiesApplicableSchedulePropertiesLabVmsShutdownSystemData: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - createdDate: { - serializedName: "properties.createdDate", + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.status", type: { - name: "DateTime" + name: "String" } }, - computeId: { - serializedName: "properties.computeId", - readOnly: true, + taskTypePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTaskType: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.taskType", type: { name: "String" } }, - customImageId: { - serializedName: "properties.customImageId", + timeZoneIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTimeZoneId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.timeZoneId", type: { name: "String" } }, - osType: { - serializedName: "properties.osType", + createdDatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesCreatedDate: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.createdDate", readOnly: true, type: { - name: "String" + name: "DateTime" } }, - size: { - serializedName: "properties.size", + targetResourceIdPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesTargetResourceId: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.targetResourceId", type: { name: "String" } }, - userName: { - serializedName: "properties.userName", + provisioningStatePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesProvisioningState: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.provisioningState", + readOnly: true, type: { name: "String" } }, - password: { - serializedName: "properties.password", + uniqueIdentifierPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesUniqueIdentifier: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.uniqueIdentifier", + readOnly: true, type: { name: "String" } }, - sshKey: { - serializedName: "properties.sshKey", + statusPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsStatus: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.status", type: { name: "String" } }, - isAuthenticationWithSshKey: { - serializedName: "properties.isAuthenticationWithSshKey", + timeInMinutesPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsTimeInMinutes: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.timeInMinutes", type: { - name: "Boolean" + name: "Number" } }, - fqdn: { - serializedName: "properties.fqdn", - readOnly: true, + webhookUrlPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsWebhookUrl: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.webhookUrl", type: { name: "String" } }, - labSubnetName: { - serializedName: "properties.labSubnetName", + emailRecipientPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsEmailRecipient: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.emailRecipient", type: { name: "String" } }, - labVirtualNetworkId: { - serializedName: "properties.labVirtualNetworkId", + notificationLocalePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesNotificationSettingsNotificationLocale: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.notificationSettings.notificationLocale", type: { name: "String" } }, - disallowPublicIpAddress: { - defaultValue: false, - serializedName: "properties.disallowPublicIpAddress", + minutePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesHourlyRecurrenceMinute: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.hourlyRecurrence.minute", type: { - name: "Boolean" + name: "Number" } }, - artifacts: { - serializedName: "properties.artifacts", + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesDailyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.dailyRecurrence.time", + type: { + name: "String" + } + }, + weekdaysPropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceWeekdays: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.weekdays", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "ArtifactInstallProperties" + name: "String" } } } }, - artifactDeploymentStatus: { - serializedName: "properties.artifactDeploymentStatus", + timePropertiesApplicableSchedulePropertiesLabVmsShutdownPropertiesWeeklyRecurrenceTime: { + serializedName: + "properties.applicableSchedule.properties.labVmsShutdown.properties.weeklyRecurrence.time", + type: { + name: "String" + } + }, + virtualNetworkId: { + serializedName: "properties.networkInterface.virtualNetworkId", + type: { + name: "String" + } + }, + subnetId: { + serializedName: "properties.networkInterface.subnetId", + type: { + name: "String" + } + }, + publicIpAddressId: { + serializedName: "properties.networkInterface.publicIpAddressId", + type: { + name: "String" + } + }, + publicIpAddress: { + serializedName: "properties.networkInterface.publicIpAddress", type: { - name: "Composite", - className: "ArtifactDeploymentStatusProperties" + name: "String" } }, - galleryImageReference: { - serializedName: "properties.galleryImageReference", + privateIpAddress: { + serializedName: "properties.networkInterface.privateIpAddress", type: { - name: "Composite", - className: "GalleryImageReference" + name: "String" } }, - planId: { - serializedName: "properties.planId", + dnsName: { + serializedName: "properties.networkInterface.dnsName", type: { name: "String" } }, - computeVm: { - serializedName: "properties.computeVm", + rdpAuthority: { + serializedName: "properties.networkInterface.rdpAuthority", type: { - name: "Composite", - className: "ComputeVmProperties" + name: "String" } }, - networkInterface: { - serializedName: "properties.networkInterface", + sshAuthority: { + serializedName: "properties.networkInterface.sshAuthority", type: { - name: "Composite", - className: "NetworkInterfaceProperties" + name: "String" } }, - applicableSchedule: { - serializedName: "properties.applicableSchedule", + inboundNatRules: { + serializedName: + "properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules", type: { - name: "Composite", - className: "ApplicableSchedule" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InboundNatRule" + } + } } }, - expirationDate: { - serializedName: "properties.expirationDate", + statuses: { + serializedName: "properties.computeVm.statuses", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ComputeVmInstanceViewStatus" + } + } } }, - allowClaim: { - defaultValue: false, - serializedName: "properties.allowClaim", + osTypePropertiesComputeVmOsType: { + serializedName: "properties.computeVm.osType", type: { - name: "Boolean" + name: "String" } }, - storageType: { - defaultValue: "labStorageType", - serializedName: "properties.storageType", + vmSize: { + serializedName: "properties.computeVm.vmSize", type: { name: "String" } }, - virtualMachineCreationSource: { - serializedName: "properties.virtualMachineCreationSource", - readOnly: true, + networkInterfaceId: { + serializedName: "properties.computeVm.networkInterfaceId", type: { name: "String" } }, - environmentId: { - serializedName: "properties.environmentId", + osDiskId: { + serializedName: "properties.computeVm.osDiskId", type: { name: "String" } }, - dataDiskParameters: { - serializedName: "properties.dataDiskParameters", + dataDiskIds: { + serializedName: "properties.computeVm.dataDiskIds", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "DataDiskProperties" + name: "String" } } } }, - scheduleParameters: { - serializedName: "properties.scheduleParameters", + dataDisks: { + serializedName: "properties.computeVm.dataDisks", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ScheduleCreationParameter" + className: "ComputeDataDisk" } } } }, - lastKnownPowerState: { - serializedName: "properties.lastKnownPowerState", - readOnly: true, + offer: { + serializedName: "properties.galleryImageReference.offer", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + publisher: { + serializedName: "properties.galleryImageReference.publisher", type: { name: "String" } }, - uniqueIdentifier: { - serializedName: "properties.uniqueIdentifier", - readOnly: true, + sku: { + serializedName: "properties.galleryImageReference.sku", + type: { + name: "String" + } + }, + osTypePropertiesGalleryImageReferenceOsType: { + serializedName: "properties.galleryImageReference.osType", + type: { + name: "String" + } + }, + version: { + serializedName: "properties.galleryImageReference.version", + type: { + name: "String" + } + }, + deploymentStatus: { + serializedName: "properties.artifactDeploymentStatus.deploymentStatus", type: { name: "String" } + }, + artifactsApplied: { + serializedName: "properties.artifactDeploymentStatus.artifactsApplied", + type: { + name: "Number" + } + }, + totalArtifacts: { + serializedName: "properties.artifactDeploymentStatus.totalArtifacts", + type: { + name: "Number" + } } } } @@ -4308,7 +7854,14 @@ export const VirtualNetwork: coreClient.CompositeMapper = { name: "Composite", className: "VirtualNetwork", modelProperties: { - ...Resource.type.modelProperties, + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, allowedSubnets: { serializedName: "properties.allowedSubnets", type: { @@ -4383,152 +7936,47 @@ export const VirtualNetwork: coreClient.CompositeMapper = { } }; -export const ArtifactSourceFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ArtifactSourceFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const CustomImageFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomImageFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const FormulaFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "FormulaFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const NotificationChannelFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotificationChannelFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const PolicyFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PolicyFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const ScheduleFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScheduleFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const UserFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UserFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const DiskFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DiskFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const DtlEnvironmentFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DtlEnvironmentFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const SecretFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecretFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const ServiceFabricFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServiceFabricFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const LabVirtualMachineFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabVirtualMachineFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const VirtualNetworkFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "VirtualNetworkFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const LabFragment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "LabFragment", - modelProperties: { - ...UpdateResource.type.modelProperties - } - } -}; - -export const ApplicableScheduleFragment: coreClient.CompositeMapper = { +export const BastionHost: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplicableScheduleFragment", + className: "BastionHost", modelProperties: { - ...UpdateResource.type.modelProperties + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + externalBastionHostId: { + serializedName: "properties.externalBastionHostId", + readOnly: true, + type: { + name: "String" + } + }, + ipAddressId: { + serializedName: "properties.ipAddressId", + readOnly: true, + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + uniqueIdentifier: { + serializedName: "properties.uniqueIdentifier", + readOnly: true, + type: { + name: "String" + } + } } } }; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/models/parameters.ts b/sdk/devtestlabs/arm-devtestlabs/src/models/parameters.ts index 5400bb6e6dc4..20ae0807c564 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/models/parameters.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/models/parameters.ts @@ -35,27 +35,34 @@ import { EvaluatePoliciesRequest as EvaluatePoliciesRequestMapper, Policy as PolicyMapper, PolicyFragment as PolicyFragmentMapper, + LabSecret as LabSecretMapper, + SecretFragment as SecretFragmentMapper, ServiceRunner as ServiceRunnerMapper, + SharedGallery as SharedGalleryMapper, + SharedGalleryFragment as SharedGalleryFragmentMapper, + SharedImage as SharedImageMapper, + SharedImageFragment as SharedImageFragmentMapper, User as UserMapper, UserFragment as UserFragmentMapper, Disk as DiskMapper, DiskFragment as DiskFragmentMapper, AttachDiskProperties as AttachDiskPropertiesMapper, DetachDiskProperties as DetachDiskPropertiesMapper, - DtlEnvironment as DtlEnvironmentMapper, - DtlEnvironmentFragment as DtlEnvironmentFragmentMapper, + Environment as EnvironmentMapper, + EnvironmentFragment as EnvironmentFragmentMapper, Secret as SecretMapper, - SecretFragment as SecretFragmentMapper, ServiceFabric as ServiceFabricMapper, ServiceFabricFragment as ServiceFabricFragmentMapper, - LabVirtualMachine as LabVirtualMachineMapper, - LabVirtualMachineFragment as LabVirtualMachineFragmentMapper, + VirtualMachine as VirtualMachineMapper, + VirtualMachineFragment as VirtualMachineFragmentMapper, DataDiskProperties as DataDiskPropertiesMapper, ApplyArtifactsRequest as ApplyArtifactsRequestMapper, DetachDataDiskProperties as DetachDataDiskPropertiesMapper, ResizeLabVirtualMachineProperties as ResizeLabVirtualMachinePropertiesMapper, VirtualNetwork as VirtualNetworkMapper, - VirtualNetworkFragment as VirtualNetworkFragmentMapper + VirtualNetworkFragment as VirtualNetworkFragmentMapper, + BastionHost as BastionHostMapper, + BastionHostFragment as BastionHostFragmentMapper } from "../models/mappers"; export const accept: OperationParameter = { @@ -85,7 +92,7 @@ export const $host: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2018-09-15", + defaultValue: "2021-09-01", isConstant: true, serializedName: "api-version", type: { @@ -109,6 +116,9 @@ export const nextLink: OperationURLParameter = { export const subscriptionId: OperationURLParameter = { parameterPath: "subscriptionId", mapper: { + constraints: { + MinLength: 1 + }, serializedName: "subscriptionId", required: true, type: { @@ -117,16 +127,6 @@ export const subscriptionId: OperationURLParameter = { } }; -export const expand: OperationQueryParameter = { - parameterPath: ["options", "expand"], - mapper: { - serializedName: "$expand", - type: { - name: "String" - } - } -}; - export const filter: OperationQueryParameter = { parameterPath: ["options", "filter"], mapper: { @@ -160,6 +160,10 @@ export const orderby: OperationQueryParameter = { export const resourceGroupName: OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { + constraints: { + MaxLength: 90, + MinLength: 1 + }, serializedName: "resourceGroupName", required: true, type: { @@ -221,10 +225,27 @@ export const importLabVirtualMachineRequest: OperationParameter = { mapper: ImportLabVirtualMachineRequestMapper }; -export const locationName: OperationURLParameter = { - parameterPath: "locationName", +export const location: OperationURLParameter = { + parameterPath: "location", mapper: { - serializedName: "locationName", + constraints: { + MinLength: 1 + }, + serializedName: "location", + required: true, + type: { + name: "String" + } + } +}; + +export const name1: OperationURLParameter = { + parameterPath: "name", + mapper: { + constraints: { + MinLength: 1 + }, + serializedName: "name", required: true, type: { name: "String" @@ -284,6 +305,16 @@ export const generateArmTemplateRequest: OperationParameter = { mapper: GenerateArmTemplateRequestMapper }; +export const expand: OperationQueryParameter = { + parameterPath: ["options", "expand"], + mapper: { + serializedName: "$expand", + type: { + name: "String" + } + } +}; + export const labCost: OperationParameter = { parameterPath: "labCost", mapper: LabCostMapper @@ -350,11 +381,52 @@ export const policy1: OperationParameter = { mapper: PolicyFragmentMapper }; +export const labSecret: OperationParameter = { + parameterPath: "labSecret", + mapper: LabSecretMapper +}; + +export const secret: OperationParameter = { + parameterPath: "secret", + mapper: SecretFragmentMapper +}; + export const serviceRunner: OperationParameter = { parameterPath: "serviceRunner", mapper: ServiceRunnerMapper }; +export const sharedGallery: OperationParameter = { + parameterPath: "sharedGallery", + mapper: SharedGalleryMapper +}; + +export const sharedGallery1: OperationParameter = { + parameterPath: "sharedGallery", + mapper: SharedGalleryFragmentMapper +}; + +export const sharedGalleryName: OperationURLParameter = { + parameterPath: "sharedGalleryName", + mapper: { + serializedName: "sharedGalleryName", + required: true, + type: { + name: "String" + } + } +}; + +export const sharedImage: OperationParameter = { + parameterPath: "sharedImage", + mapper: SharedImageMapper +}; + +export const sharedImage1: OperationParameter = { + parameterPath: "sharedImage", + mapper: SharedImageFragmentMapper +}; + export const user: OperationParameter = { parameterPath: "user", mapper: UserMapper @@ -396,24 +468,19 @@ export const detachDiskProperties: OperationParameter = { mapper: DetachDiskPropertiesMapper }; -export const dtlEnvironment: OperationParameter = { - parameterPath: "dtlEnvironment", - mapper: DtlEnvironmentMapper +export const environment: OperationParameter = { + parameterPath: "environment", + mapper: EnvironmentMapper }; -export const dtlEnvironment1: OperationParameter = { - parameterPath: "dtlEnvironment", - mapper: DtlEnvironmentFragmentMapper -}; - -export const secret: OperationParameter = { - parameterPath: "secret", - mapper: SecretMapper +export const environment1: OperationParameter = { + parameterPath: "environment", + mapper: EnvironmentFragmentMapper }; export const secret1: OperationParameter = { parameterPath: "secret", - mapper: SecretFragmentMapper + mapper: SecretMapper }; export const serviceFabric: OperationParameter = { @@ -437,14 +504,14 @@ export const serviceFabricName: OperationURLParameter = { } }; -export const labVirtualMachine: OperationParameter = { - parameterPath: "labVirtualMachine", - mapper: LabVirtualMachineMapper +export const virtualMachine: OperationParameter = { + parameterPath: "virtualMachine", + mapper: VirtualMachineMapper }; -export const labVirtualMachine1: OperationParameter = { - parameterPath: "labVirtualMachine", - mapper: LabVirtualMachineFragmentMapper +export const virtualMachine1: OperationParameter = { + parameterPath: "virtualMachine", + mapper: VirtualMachineFragmentMapper }; export const dataDiskProperties: OperationParameter = { @@ -487,3 +554,24 @@ export const virtualNetwork1: OperationParameter = { parameterPath: "virtualNetwork", mapper: VirtualNetworkFragmentMapper }; + +export const virtualNetworkName: OperationURLParameter = { + parameterPath: "virtualNetworkName", + mapper: { + serializedName: "virtualNetworkName", + required: true, + type: { + name: "String" + } + } +}; + +export const bastionHost: OperationParameter = { + parameterPath: "bastionHost", + mapper: BastionHostMapper +}; + +export const bastionHost1: OperationParameter = { + parameterPath: "bastionHost", + mapper: BastionHostFragmentMapper +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/armTemplates.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/armTemplates.ts index ee88006aa55c..bd5921295525 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/armTemplates.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/armTemplates.ts @@ -37,7 +37,7 @@ export class ArmTemplatesImpl implements ArmTemplates { /** * List azure resource manager templates in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -117,7 +117,7 @@ export class ArmTemplatesImpl implements ArmTemplates { /** * List azure resource manager templates in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -136,7 +136,7 @@ export class ArmTemplatesImpl implements ArmTemplates { /** * Get azure resource manager template. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the azure resource manager template. @@ -157,7 +157,7 @@ export class ArmTemplatesImpl implements ArmTemplates { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param nextLink The nextLink from the previous successful call to the List method. @@ -188,12 +188,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArmTemplateList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -217,10 +216,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArmTemplate }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -240,12 +239,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArmTemplateList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/artifactSources.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/artifactSources.ts index 256b138ca574..691912bb9181 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/artifactSources.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/artifactSources.ts @@ -43,7 +43,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * List artifact sources in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -102,7 +102,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * List artifact sources in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -119,7 +119,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * Get artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param options The options parameters. @@ -138,7 +138,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * Create or replace an existing artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param artifactSource Properties of an artifact source. @@ -159,7 +159,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * Delete artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param options The options parameters. @@ -178,10 +178,11 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * Allows modifying tags of artifact sources. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. - * @param artifactSource Properties of an artifact source. + * @param artifactSource Allows modifying tags of artifact sources. All other properties will be + * ignored. * @param options The options parameters. */ update( @@ -199,7 +200,7 @@ export class ArtifactSourcesImpl implements ArtifactSources { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -228,12 +229,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactSourceList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -256,10 +256,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactSource }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -282,7 +282,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactSource }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.artifactSource, @@ -306,7 +306,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -329,7 +329,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactSource }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.artifactSource1, @@ -353,12 +353,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactSourceList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/artifacts.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/artifacts.ts index 0e848534832e..382d9eaa35d2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/artifacts.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/artifacts.ts @@ -40,7 +40,7 @@ export class ArtifactsImpl implements Artifacts { /** * List artifacts in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -120,7 +120,7 @@ export class ArtifactsImpl implements Artifacts { /** * List artifacts in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -139,7 +139,7 @@ export class ArtifactsImpl implements Artifacts { /** * Get artifact. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the artifact. @@ -161,7 +161,7 @@ export class ArtifactsImpl implements Artifacts { /** * Generates an ARM template for the given artifact, uploads the required files to a storage account, * and validates the generated artifact. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the artifact. @@ -191,7 +191,7 @@ export class ArtifactsImpl implements Artifacts { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param nextLink The nextLink from the previous successful call to the List method. @@ -222,12 +222,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -251,10 +250,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Artifact }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -275,7 +274,7 @@ const generateArmTemplateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArmTemplateInfo }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.generateArmTemplateRequest, @@ -300,12 +299,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ArtifactList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/bastionHosts.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/bastionHosts.ts new file mode 100644 index 000000000000..3bd388b2435b --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/bastionHosts.ts @@ -0,0 +1,582 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { BastionHosts } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DevTestLabsClient } from "../devTestLabsClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + BastionHost, + BastionHostsListNextOptionalParams, + BastionHostsListOptionalParams, + BastionHostsListResponse, + BastionHostsGetOptionalParams, + BastionHostsGetResponse, + BastionHostsCreateOrUpdateOptionalParams, + BastionHostsCreateOrUpdateResponse, + BastionHostsDeleteOptionalParams, + BastionHostFragment, + BastionHostsUpdateOptionalParams, + BastionHostsUpdateResponse, + BastionHostsListNextResponse +} from "../models"; + +/// +/** Class containing BastionHosts operations. */ +export class BastionHostsImpl implements BastionHosts { + private readonly client: DevTestLabsClient; + + /** + * Initialize a new instance of the class BastionHosts class. + * @param client Reference to the service client + */ + constructor(client: DevTestLabsClient) { + this.client = client; + } + + /** + * List bastionhosts in a given virtual network. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + options?: BastionHostsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll( + resourceGroupName, + labName, + virtualNetworkName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage( + resourceGroupName, + labName, + virtualNetworkName, + options + ); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + options?: BastionHostsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list( + resourceGroupName, + labName, + virtualNetworkName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + virtualNetworkName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + options?: BastionHostsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + virtualNetworkName, + options + )) { + yield* page; + } + } + + /** + * List bastionhosts in a given virtual network. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + options?: BastionHostsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, virtualNetworkName, options }, + listOperationSpec + ); + } + + /** + * Get bastionhost. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, virtualNetworkName, name, options }, + getOperationSpec + ); + } + + /** + * Create or replace an existing bastionHost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Profile of a Bastion Host + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHost, + options?: BastionHostsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + BastionHostsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + labName, + virtualNetworkName, + name, + bastionHost, + options + }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or replace an existing bastionHost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Profile of a Bastion Host + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHost, + options?: BastionHostsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + labName, + virtualNetworkName, + name, + bastionHost, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete bastionhost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, labName, virtualNetworkName, name, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Delete bastionhost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + labName, + virtualNetworkName, + name, + options + ); + return poller.pollUntilDone(); + } + + /** + * Allows modifying tags of bastionhosts. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Allows modifying tags of bastionhosts. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHostFragment, + options?: BastionHostsUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + labName, + virtualNetworkName, + name, + bastionHost, + options + }, + updateOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + nextLink: string, + options?: BastionHostsListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, virtualNetworkName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{virtualNetworkName}/bastionhosts", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.BastionHostList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{virtualNetworkName}/bastionhosts/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.BastionHost + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{virtualNetworkName}/bastionhosts/{name}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.BastionHost + }, + 201: { + bodyMapper: Mappers.BastionHost + }, + 202: { + bodyMapper: Mappers.BastionHost + }, + 204: { + bodyMapper: Mappers.BastionHost + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.bastionHost, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{virtualNetworkName}/bastionhosts/{name}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualnetworks/{virtualNetworkName}/bastionhosts/{name}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.BastionHost + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.bastionHost1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.BastionHostList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName, + Parameters.virtualNetworkName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/costs.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/costs.ts index 69f89a265416..cfbaa6eea3ba 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/costs.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/costs.ts @@ -6,19 +6,25 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { Costs } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DevTestLabsClient } from "../devTestLabsClient"; import { + LabCost, + CostsListNextOptionalParams, + CostsListOptionalParams, + CostsListResponse, CostsGetOptionalParams, CostsGetResponse, - LabCost, CostsCreateOrUpdateOptionalParams, - CostsCreateOrUpdateResponse + CostsCreateOrUpdateResponse, + CostsListNextResponse } from "../models"; +/// /** Class containing Costs operations. */ export class CostsImpl implements Costs { private readonly client: DevTestLabsClient; @@ -31,9 +37,85 @@ export class CostsImpl implements Costs { this.client = client; } + /** + * List costs in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + options?: CostsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, labName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, labName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + options?: CostsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, labName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + options?: CostsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + options + )) { + yield* page; + } + } + + /** + * List costs in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + options?: CostsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, options }, + listOperationSpec + ); + } + /** * Get cost. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the cost. * @param options The options parameters. @@ -52,7 +134,7 @@ export class CostsImpl implements Costs { /** * Create or replace an existing cost. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the cost. * @param labCost A cost item. @@ -70,10 +152,57 @@ export class CostsImpl implements Costs { createOrUpdateOperationSpec ); } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + nextLink: string, + options?: CostsListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, nextLink, options }, + listNextOperationSpec + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/costs", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.LabCostList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby, + Parameters.expand + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/costs/{name}", @@ -83,7 +212,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabCost }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion, Parameters.expand], @@ -109,7 +238,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabCost }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.labCost, @@ -125,3 +254,31 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.LabCostList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby, + Parameters.expand + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/customImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/customImages.ts index 3269fb975298..5cc92fe2526e 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/customImages.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/customImages.ts @@ -45,7 +45,7 @@ export class CustomImagesImpl implements CustomImages { /** * List custom images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -104,7 +104,7 @@ export class CustomImagesImpl implements CustomImages { /** * List custom images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -121,7 +121,7 @@ export class CustomImagesImpl implements CustomImages { /** * Get custom image. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -140,7 +140,7 @@ export class CustomImagesImpl implements CustomImages { /** * Create or replace an existing custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param customImage A custom image. @@ -210,7 +210,7 @@ export class CustomImagesImpl implements CustomImages { /** * Create or replace an existing custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param customImage A custom image. @@ -235,7 +235,7 @@ export class CustomImagesImpl implements CustomImages { /** * Delete custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -298,7 +298,7 @@ export class CustomImagesImpl implements CustomImages { /** * Delete custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -320,10 +320,10 @@ export class CustomImagesImpl implements CustomImages { /** * Allows modifying tags of custom images. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. - * @param customImage A custom image. + * @param customImage Allows modifying tags of custom images. All other properties will be ignored. * @param options The options parameters. */ update( @@ -341,7 +341,7 @@ export class CustomImagesImpl implements CustomImages { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -370,12 +370,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CustomImageList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -398,10 +397,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CustomImage }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -430,7 +429,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CustomImage }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.customImage, @@ -456,7 +455,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -479,7 +478,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CustomImage }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.customImage1, @@ -503,12 +502,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CustomImageList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/disks.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/disks.ts index 5de1e8715e0a..f73991d5b34d 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/disks.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/disks.ts @@ -49,7 +49,7 @@ export class DisksImpl implements Disks { /** * List disks in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -129,7 +129,7 @@ export class DisksImpl implements Disks { /** * List disks in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -148,7 +148,7 @@ export class DisksImpl implements Disks { /** * Get disk. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -169,7 +169,7 @@ export class DisksImpl implements Disks { /** * Create or replace an existing disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -241,7 +241,7 @@ export class DisksImpl implements Disks { /** * Create or replace an existing disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -269,7 +269,7 @@ export class DisksImpl implements Disks { /** * Delete disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -334,7 +334,7 @@ export class DisksImpl implements Disks { /** * Delete disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -359,11 +359,11 @@ export class DisksImpl implements Disks { /** * Allows modifying tags of disks. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. - * @param disk A Disk. + * @param disk Allows modifying tags of disks. All other properties will be ignored. * @param options The options parameters. */ update( @@ -383,7 +383,7 @@ export class DisksImpl implements Disks { /** * Attach and create the lease of the disk to the virtual machine. This operation can take a while to * complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -458,7 +458,7 @@ export class DisksImpl implements Disks { /** * Attach and create the lease of the disk to the virtual machine. This operation can take a while to * complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -487,7 +487,7 @@ export class DisksImpl implements Disks { /** * Detach and break the lease of the disk attached to the virtual machine. This operation can take a * while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -562,7 +562,7 @@ export class DisksImpl implements Disks { /** * Detach and break the lease of the disk attached to the virtual machine. This operation can take a * while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -590,7 +590,7 @@ export class DisksImpl implements Disks { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param nextLink The nextLink from the previous successful call to the List method. @@ -621,12 +621,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.DiskList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -650,10 +649,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Disk }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -683,7 +682,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Disk }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.disk, @@ -710,7 +709,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -734,7 +733,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Disk }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.disk1, @@ -761,7 +760,7 @@ const attachOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.attachDiskProperties, @@ -788,7 +787,7 @@ const detachOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.detachDiskProperties, @@ -813,12 +812,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.DiskList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/environments.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/environments.ts index b82fc0b9b083..fe5d9b605cbe 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/environments.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/environments.ts @@ -15,7 +15,7 @@ import { DevTestLabsClient } from "../devTestLabsClient"; import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; import { LroImpl } from "../lroImpl"; import { - DtlEnvironment, + Environment, EnvironmentsListNextOptionalParams, EnvironmentsListOptionalParams, EnvironmentsListResponse, @@ -24,7 +24,7 @@ import { EnvironmentsCreateOrUpdateOptionalParams, EnvironmentsCreateOrUpdateResponse, EnvironmentsDeleteOptionalParams, - DtlEnvironmentFragment, + EnvironmentFragment, EnvironmentsUpdateOptionalParams, EnvironmentsUpdateResponse, EnvironmentsListNextResponse @@ -45,7 +45,7 @@ export class EnvironmentsImpl implements Environments { /** * List environments in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -55,7 +55,7 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, options?: EnvironmentsListOptionalParams - ): PagedAsyncIterableIterator { + ): PagedAsyncIterableIterator { const iter = this.listPagingAll( resourceGroupName, labName, @@ -85,7 +85,7 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, options?: EnvironmentsListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { let result = await this._list( resourceGroupName, labName, @@ -112,7 +112,7 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, options?: EnvironmentsListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { for await (const page of this.listPagingPage( resourceGroupName, labName, @@ -125,7 +125,7 @@ export class EnvironmentsImpl implements Environments { /** * List environments in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -144,7 +144,7 @@ export class EnvironmentsImpl implements Environments { /** * Get environment. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -165,11 +165,11 @@ export class EnvironmentsImpl implements Environments { /** * Create or replace an existing environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment An environment, which is essentially an ARM template deployment. * @param options The options parameters. */ async beginCreateOrUpdate( @@ -177,7 +177,7 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironment, + environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams ): Promise< PollerLike< @@ -226,7 +226,7 @@ export class EnvironmentsImpl implements Environments { const lro = new LroImpl( sendOperation, - { resourceGroupName, labName, userName, name, dtlEnvironment, options }, + { resourceGroupName, labName, userName, name, environment, options }, createOrUpdateOperationSpec ); return new LroEngine(lro, { @@ -237,11 +237,11 @@ export class EnvironmentsImpl implements Environments { /** * Create or replace an existing environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment An environment, which is essentially an ARM template deployment. * @param options The options parameters. */ async beginCreateOrUpdateAndWait( @@ -249,7 +249,7 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironment, + environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams ): Promise { const poller = await this.beginCreateOrUpdate( @@ -257,7 +257,7 @@ export class EnvironmentsImpl implements Environments { labName, userName, name, - dtlEnvironment, + environment, options ); return poller.pollUntilDone(); @@ -265,7 +265,7 @@ export class EnvironmentsImpl implements Environments { /** * Delete environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -330,7 +330,7 @@ export class EnvironmentsImpl implements Environments { /** * Delete environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -355,11 +355,11 @@ export class EnvironmentsImpl implements Environments { /** * Allows modifying tags of environments. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment Allows modifying tags of environments. All other properties will be ignored. * @param options The options parameters. */ update( @@ -367,18 +367,18 @@ export class EnvironmentsImpl implements Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironmentFragment, + environment: EnvironmentFragment, options?: EnvironmentsUpdateOptionalParams ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, labName, userName, name, dtlEnvironment, options }, + { resourceGroupName, labName, userName, name, environment, options }, updateOperationSpec ); } /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param nextLink The nextLink from the previous successful call to the List method. @@ -406,15 +406,14 @@ const listOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DtlEnvironmentList + bodyMapper: Mappers.EnvironmentList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -435,13 +434,13 @@ const getOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -459,22 +458,22 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { httpMethod: "PUT", responses: { 200: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, 201: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, 202: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, 204: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.dtlEnvironment, + requestBody: Parameters.environment, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -498,7 +497,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -519,13 +518,13 @@ const updateOperationSpec: coreClient.OperationSpec = { httpMethod: "PATCH", responses: { 200: { - bodyMapper: Mappers.DtlEnvironment + bodyMapper: Mappers.Environment }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.dtlEnvironment1, + requestBody: Parameters.environment1, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -544,15 +543,14 @@ const listNextOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DtlEnvironmentList + bodyMapper: Mappers.EnvironmentList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/formulas.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/formulas.ts index 0b227407f302..7f21b07778a0 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/formulas.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/formulas.ts @@ -45,7 +45,7 @@ export class FormulasImpl implements Formulas { /** * List formulas in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -104,7 +104,7 @@ export class FormulasImpl implements Formulas { /** * List formulas in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -121,7 +121,7 @@ export class FormulasImpl implements Formulas { /** * Get formula. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param options The options parameters. @@ -139,8 +139,8 @@ export class FormulasImpl implements Formulas { } /** - * Create or replace an existing formula. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Formula. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param formula A formula for creating a VM, specifying an image base and other parameters @@ -209,8 +209,8 @@ export class FormulasImpl implements Formulas { } /** - * Create or replace an existing formula. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Formula. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param formula A formula for creating a VM, specifying an image base and other parameters @@ -235,7 +235,7 @@ export class FormulasImpl implements Formulas { /** * Delete formula. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param options The options parameters. @@ -254,10 +254,10 @@ export class FormulasImpl implements Formulas { /** * Allows modifying tags of formulas. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. - * @param formula A formula for creating a VM, specifying an image base and other parameters + * @param formula Allows modifying tags of formulas. All other properties will be ignored. * @param options The options parameters. */ update( @@ -275,7 +275,7 @@ export class FormulasImpl implements Formulas { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -304,12 +304,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.FormulaList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -332,10 +331,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Formula }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -364,7 +363,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Formula }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.formula, @@ -388,7 +387,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -411,7 +410,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Formula }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.formula1, @@ -435,12 +434,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.FormulaList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/galleryImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/galleryImages.ts index 4a6ebec6f6d1..9c27d413236b 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/galleryImages.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/galleryImages.ts @@ -17,6 +17,8 @@ import { GalleryImagesListNextOptionalParams, GalleryImagesListOptionalParams, GalleryImagesListResponse, + GalleryImagesGetOptionalParams, + GalleryImagesGetResponse, GalleryImagesListNextResponse } from "../models"; @@ -35,7 +37,7 @@ export class GalleryImagesImpl implements GalleryImages { /** * List gallery images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -94,7 +96,7 @@ export class GalleryImagesImpl implements GalleryImages { /** * List gallery images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -109,9 +111,28 @@ export class GalleryImagesImpl implements GalleryImages { ); } + /** + * Get gallery image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the gallery image. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: GalleryImagesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, options }, + getOperationSpec + ); + } + /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -140,12 +161,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.GalleryImageList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -159,6 +179,29 @@ const listOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/galleryimages/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.GalleryImage + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", @@ -167,12 +210,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.GalleryImageList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/globalSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/globalSchedules.ts index f49e96d12d22..7f2d91dd57d9 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/globalSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/globalSchedules.ts @@ -94,7 +94,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * List schedules in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ public listByResourceGroup( @@ -160,7 +160,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * List schedules in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ private _listByResourceGroup( @@ -175,7 +175,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -192,7 +192,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param schedule A schedule. * @param options The options parameters. @@ -211,7 +211,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -228,9 +228,9 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -247,7 +247,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -308,7 +308,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -323,7 +323,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Updates a schedule's target resource Id. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param retargetScheduleProperties Properties for retargeting a virtual machine schedule. * @param options The options parameters. @@ -386,7 +386,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * Updates a schedule's target resource Id. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param retargetScheduleProperties Properties for retargeting a virtual machine schedule. * @param options The options parameters. @@ -423,7 +423,7 @@ export class GlobalSchedulesImpl implements GlobalSchedules { /** * ListByResourceGroupNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. * @param options The options parameters. */ @@ -450,12 +450,11 @@ const listBySubscriptionOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -473,12 +472,11 @@ const listByResourceGroupOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -500,10 +498,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -525,7 +523,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule, @@ -548,7 +546,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -570,7 +568,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule1, @@ -595,7 +593,7 @@ const executeOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -618,7 +616,7 @@ const retargetOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.retargetScheduleProperties, @@ -641,12 +639,11 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -667,12 +664,11 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/index.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/index.ts index ed76356e15ec..0a40f531a4bb 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/index.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/index.ts @@ -21,7 +21,10 @@ export * from "./notificationChannels"; export * from "./policySets"; export * from "./policies"; export * from "./schedules"; +export * from "./labSecrets"; export * from "./serviceRunners"; +export * from "./sharedGalleries"; +export * from "./sharedImages"; export * from "./users"; export * from "./disks"; export * from "./environments"; @@ -31,3 +34,4 @@ export * from "./serviceFabricSchedules"; export * from "./virtualMachines"; export * from "./virtualMachineSchedules"; export * from "./virtualNetworks"; +export * from "./bastionHosts"; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/labSecrets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/labSecrets.ts new file mode 100644 index 000000000000..b7668182b580 --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/labSecrets.ts @@ -0,0 +1,523 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { LabSecrets } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DevTestLabsClient } from "../devTestLabsClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + LabSecret, + LabSecretsListNextOptionalParams, + LabSecretsListOptionalParams, + LabSecretsListResponse, + LabSecretsGetOptionalParams, + LabSecretsGetResponse, + LabSecretsCreateOrUpdateOptionalParams, + LabSecretsCreateOrUpdateResponse, + LabSecretsDeleteOptionalParams, + SecretFragment, + LabSecretsUpdateOptionalParams, + LabSecretsUpdateResponse, + LabSecretsListNextResponse +} from "../models"; + +/// +/** Class containing LabSecrets operations. */ +export class LabSecretsImpl implements LabSecrets { + private readonly client: DevTestLabsClient; + + /** + * Initialize a new instance of the class LabSecrets class. + * @param client Reference to the service client + */ + constructor(client: DevTestLabsClient) { + this.client = client; + } + + /** + * List lab secrets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + options?: LabSecretsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, labName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, labName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + options?: LabSecretsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, labName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + options?: LabSecretsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + options + )) { + yield* page; + } + } + + /** + * List lab secrets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + options?: LabSecretsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, options }, + listOperationSpec + ); + } + + /** + * Get lab secret. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, options }, + getOperationSpec + ); + } + + /** + * Create or replace an existing Lab Secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param labSecret A shared secret in a lab. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + labName: string, + name: string, + labSecret: LabSecret, + options?: LabSecretsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + LabSecretsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, labName, name, labSecret, options }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or replace an existing Lab Secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param labSecret A shared secret in a lab. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + labName: string, + name: string, + labSecret: LabSecret, + options?: LabSecretsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + labName, + name, + labSecret, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete lab secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, labName, name, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Delete lab secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + labName, + name, + options + ); + return poller.pollUntilDone(); + } + + /** + * Allows modifying tags of lab secrets. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param secret Allows modifying tags of lab secrets. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + name: string, + secret: SecretFragment, + options?: LabSecretsUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, secret, options }, + updateOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + nextLink: string, + options?: LabSecretsListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/secrets", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.LabSecretList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/secrets/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.LabSecret + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/secrets/{name}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.LabSecret + }, + 201: { + bodyMapper: Mappers.LabSecret + }, + 202: { + bodyMapper: Mappers.LabSecret + }, + 204: { + bodyMapper: Mappers.LabSecret + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.labSecret, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/secrets/{name}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/secrets/{name}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.LabSecret + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.secret, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.LabSecretList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/labs.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/labs.ts index e5c96c218f5e..66a7e555d1fd 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/labs.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/labs.ts @@ -20,9 +20,6 @@ import { LabsListBySubscriptionOptionalParams, LabsListByResourceGroupNextOptionalParams, LabsListByResourceGroupOptionalParams, - LabVhd, - LabsListVhdsNextOptionalParams, - LabsListVhdsOptionalParams, LabsListBySubscriptionResponse, LabsListByResourceGroupResponse, LabsGetOptionalParams, @@ -36,6 +33,7 @@ import { LabsClaimAnyVmOptionalParams, LabVirtualMachineCreationParameter, LabsCreateEnvironmentOptionalParams, + LabsEnsureCurrentUserProfileOptionalParams, ExportResourceUsageParameters, LabsExportResourceUsageOptionalParams, GenerateUploadUriParameter, @@ -43,10 +41,10 @@ import { LabsGenerateUploadUriResponse, ImportLabVirtualMachineRequest, LabsImportVirtualMachineOptionalParams, + LabsListVhdsOptionalParams, LabsListVhdsResponse, LabsListBySubscriptionNextResponse, - LabsListByResourceGroupNextResponse, - LabsListVhdsNextResponse + LabsListByResourceGroupNextResponse } from "../models"; /// @@ -106,7 +104,7 @@ export class LabsImpl implements Labs { /** * List labs in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ public listByResourceGroup( @@ -157,65 +155,6 @@ export class LabsImpl implements Labs { } } - /** - * List disk images available for custom image creation. - * @param resourceGroupName The name of the resource group. - * @param name The name of the lab. - * @param options The options parameters. - */ - public listVhds( - resourceGroupName: string, - name: string, - options?: LabsListVhdsOptionalParams - ): PagedAsyncIterableIterator { - const iter = this.listVhdsPagingAll(resourceGroupName, name, options); - return { - next() { - return iter.next(); - }, - [Symbol.asyncIterator]() { - return this; - }, - byPage: () => { - return this.listVhdsPagingPage(resourceGroupName, name, options); - } - }; - } - - private async *listVhdsPagingPage( - resourceGroupName: string, - name: string, - options?: LabsListVhdsOptionalParams - ): AsyncIterableIterator { - let result = await this._listVhds(resourceGroupName, name, options); - yield result.value || []; - let continuationToken = result.nextLink; - while (continuationToken) { - result = await this._listVhdsNext( - resourceGroupName, - name, - continuationToken, - options - ); - continuationToken = result.nextLink; - yield result.value || []; - } - } - - private async *listVhdsPagingAll( - resourceGroupName: string, - name: string, - options?: LabsListVhdsOptionalParams - ): AsyncIterableIterator { - for await (const page of this.listVhdsPagingPage( - resourceGroupName, - name, - options - )) { - yield* page; - } - } - /** * List labs in a subscription. * @param options The options parameters. @@ -231,7 +170,7 @@ export class LabsImpl implements Labs { /** * List labs in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ private _listByResourceGroup( @@ -246,7 +185,7 @@ export class LabsImpl implements Labs { /** * Get lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -263,7 +202,7 @@ export class LabsImpl implements Labs { /** * Create or replace an existing lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param lab A lab. * @param options The options parameters. @@ -331,7 +270,7 @@ export class LabsImpl implements Labs { /** * Create or replace an existing lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param lab A lab. * @param options The options parameters. @@ -353,7 +292,7 @@ export class LabsImpl implements Labs { /** * Delete lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -414,7 +353,7 @@ export class LabsImpl implements Labs { /** * Delete lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -429,9 +368,9 @@ export class LabsImpl implements Labs { /** * Allows modifying tags of labs. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. - * @param lab A lab. + * @param lab Allows modifying tags of labs. All other properties will be ignored. * @param options The options parameters. */ update( @@ -448,7 +387,7 @@ export class LabsImpl implements Labs { /** * Claim a random claimable virtual machine in the lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -509,7 +448,7 @@ export class LabsImpl implements Labs { /** * Claim a random claimable virtual machine in the lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -524,7 +463,7 @@ export class LabsImpl implements Labs { /** * Create virtual machines in a lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param labVirtualMachineCreationParameter Properties for creating a virtual machine. * @param options The options parameters. @@ -587,7 +526,7 @@ export class LabsImpl implements Labs { /** * Create virtual machines in a lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param labVirtualMachineCreationParameter Properties for creating a virtual machine. * @param options The options parameters. @@ -607,9 +546,26 @@ export class LabsImpl implements Labs { return poller.pollUntilDone(); } + /** + * Ensure the current user has a valid profile in the lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the lab. + * @param options The options parameters. + */ + ensureCurrentUserProfile( + resourceGroupName: string, + name: string, + options?: LabsEnsureCurrentUserProfileOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, name, options }, + ensureCurrentUserProfileOperationSpec + ); + } + /** * Exports the lab resource usage into a storage account This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param exportResourceUsageParameters The parameters of the export operation. * @param options The options parameters. @@ -672,7 +628,7 @@ export class LabsImpl implements Labs { /** * Exports the lab resource usage into a storage account This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param exportResourceUsageParameters The parameters of the export operation. * @param options The options parameters. @@ -694,7 +650,7 @@ export class LabsImpl implements Labs { /** * Generate a URI for uploading custom disk images to a Lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param generateUploadUriParameter Properties for generating an upload URI. * @param options The options parameters. @@ -713,7 +669,7 @@ export class LabsImpl implements Labs { /** * Import a virtual machine into a different lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param importLabVirtualMachineRequest This represents the payload required to import a virtual * machine from a different lab into the current one @@ -777,7 +733,7 @@ export class LabsImpl implements Labs { /** * Import a virtual machine into a different lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param importLabVirtualMachineRequest This represents the payload required to import a virtual * machine from a different lab into the current one @@ -800,11 +756,11 @@ export class LabsImpl implements Labs { /** * List disk images available for custom image creation. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ - private _listVhds( + listVhds( resourceGroupName: string, name: string, options?: LabsListVhdsOptionalParams @@ -832,7 +788,7 @@ export class LabsImpl implements Labs { /** * ListByResourceGroupNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. * @param options The options parameters. */ @@ -846,25 +802,6 @@ export class LabsImpl implements Labs { listByResourceGroupNextOperationSpec ); } - - /** - * ListVhdsNext - * @param resourceGroupName The name of the resource group. - * @param name The name of the lab. - * @param nextLink The nextLink from the previous successful call to the ListVhds method. - * @param options The options parameters. - */ - private _listVhdsNext( - resourceGroupName: string, - name: string, - nextLink: string, - options?: LabsListVhdsNextOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, name, nextLink, options }, - listVhdsNextOperationSpec - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); @@ -877,12 +814,11 @@ const listBySubscriptionOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -900,12 +836,11 @@ const listByResourceGroupOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -927,10 +862,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Lab }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -958,7 +893,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Lab }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.lab, @@ -983,7 +918,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1005,7 +940,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Lab }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.lab1, @@ -1030,7 +965,7 @@ const claimAnyVmOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1053,7 +988,7 @@ const createEnvironmentOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.labVirtualMachineCreationParameter, @@ -1068,6 +1003,26 @@ const createEnvironmentOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const ensureCurrentUserProfileOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/ensureCurrentUserProfile", + httpMethod: "POST", + responses: { + 200: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name + ], + headerParameters: [Parameters.accept], + serializer +}; const exportResourceUsageOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{name}/exportResourceUsage", @@ -1078,7 +1033,7 @@ const exportResourceUsageOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.exportResourceUsageParameters, @@ -1102,7 +1057,7 @@ const generateUploadUriOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.GenerateUploadUriResponse }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.generateUploadUriParameter, @@ -1127,7 +1082,7 @@ const importVirtualMachineOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.importLabVirtualMachineRequest, @@ -1151,7 +1106,7 @@ const listVhdsOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabVhdList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1172,12 +1127,11 @@ const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -1198,12 +1152,11 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.LabList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -1217,25 +1170,3 @@ const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; -const listVhdsNextOperationSpec: coreClient.OperationSpec = { - path: "{nextLink}", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.LabVhdList - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.nextLink, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.name - ], - headerParameters: [Parameters.accept], - serializer -}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/notificationChannels.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/notificationChannels.ts index fbf0bc76b9f5..49bb257f08a9 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/notificationChannels.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/notificationChannels.ts @@ -45,7 +45,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * List notification channels in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -104,7 +104,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * List notification channels in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -121,7 +121,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * Get notification channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param options The options parameters. @@ -139,8 +139,8 @@ export class NotificationChannelsImpl implements NotificationChannels { } /** - * Create or replace an existing notification channel. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Notification Channel. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param notificationChannel A notification. @@ -161,7 +161,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * Delete notification channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param options The options parameters. @@ -180,10 +180,11 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * Allows modifying tags of notification channels. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. - * @param notificationChannel A notification. + * @param notificationChannel Allows modifying tags of notification channels. All other properties will + * be ignored. * @param options The options parameters. */ update( @@ -201,7 +202,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * Send notification to provided channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param notifyParameters Properties for generating a Notification. @@ -222,7 +223,7 @@ export class NotificationChannelsImpl implements NotificationChannels { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -251,12 +252,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.NotificationChannelList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -279,10 +279,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.NotificationChannel }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -305,7 +305,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.NotificationChannel }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.notificationChannel, @@ -329,7 +329,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -352,7 +352,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.NotificationChannel }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.notificationChannel1, @@ -375,7 +375,7 @@ const notifyOperationSpec: coreClient.OperationSpec = { responses: { 200: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.notifyParameters, @@ -399,12 +399,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.NotificationChannelList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/operations.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/operations.ts index 73d824f75daa..4b4288598072 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/operations.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/operations.ts @@ -26,18 +26,18 @@ export class OperationsImpl implements Operations { } /** - * Get operation. - * @param locationName The name of the location. - * @param name The name of the operation. + * Get operation + * @param location The name of Azure region. + * @param name Name of the operation id * @param options The options parameters. */ get( - locationName: string, + location: string, name: string, options?: OperationsGetOptionalParams ): Promise { return this.client.sendOperationRequest( - { locationName, name, options }, + { location, name, options }, getOperationSpec ); } @@ -47,25 +47,22 @@ const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); const getOperationSpec: coreClient.OperationSpec = { path: - "/subscriptions/{subscriptionId}/providers/Microsoft.DevTestLab/locations/{locationName}/operations/{name}", + "/subscriptions/{subscriptionId}/providers/Microsoft.DevTestLab/locations/{location}/operations/{name}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.OperationResult }, - 202: { - bodyMapper: Mappers.OperationResult - }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, - Parameters.name, - Parameters.locationName + Parameters.location, + Parameters.name1 ], headerParameters: [Parameters.accept], serializer diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/policies.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/policies.ts index 166e816dc0d0..b60e53eeef1c 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/policies.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/policies.ts @@ -43,7 +43,7 @@ export class PoliciesImpl implements Policies { /** * List policies in a given policy set. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param options The options parameters. @@ -123,7 +123,7 @@ export class PoliciesImpl implements Policies { /** * List policies in a given policy set. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param options The options parameters. @@ -142,7 +142,7 @@ export class PoliciesImpl implements Policies { /** * Get policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -163,7 +163,7 @@ export class PoliciesImpl implements Policies { /** * Create or replace an existing policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -186,7 +186,7 @@ export class PoliciesImpl implements Policies { /** * Delete policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -207,11 +207,11 @@ export class PoliciesImpl implements Policies { /** * Allows modifying tags of policies. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. - * @param policy A Policy. + * @param policy Allows modifying tags of policies. All other properties will be ignored. * @param options The options parameters. */ update( @@ -230,7 +230,7 @@ export class PoliciesImpl implements Policies { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param nextLink The nextLink from the previous successful call to the List method. @@ -261,12 +261,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PolicyList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -290,10 +289,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Policy }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -317,7 +316,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Policy }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.policy, @@ -342,7 +341,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -366,7 +365,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Policy }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.policy1, @@ -391,12 +390,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.PolicyList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/policySets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/policySets.ts index 55fd9408a8cc..adefb67e86a5 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/policySets.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/policySets.ts @@ -6,17 +6,24 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PolicySets } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DevTestLabsClient } from "../devTestLabsClient"; import { + PolicySet, + PolicySetsListNextOptionalParams, + PolicySetsListOptionalParams, + PolicySetsListResponse, EvaluatePoliciesRequest, PolicySetsEvaluatePoliciesOptionalParams, - PolicySetsEvaluatePoliciesResponse + PolicySetsEvaluatePoliciesResponse, + PolicySetsListNextResponse } from "../models"; +/// /** Class containing PolicySets operations. */ export class PolicySetsImpl implements PolicySets { private readonly client: DevTestLabsClient; @@ -29,9 +36,85 @@ export class PolicySetsImpl implements PolicySets { this.client = client; } + /** + * List policy sets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + options?: PolicySetsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, labName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, labName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + options?: PolicySetsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, labName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + options?: PolicySetsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + options + )) { + yield* page; + } + } + + /** + * List policy sets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + options?: PolicySetsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, options }, + listOperationSpec + ); + } + /** * Evaluates lab policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the policy set. * @param evaluatePoliciesRequest Request body for evaluating a policy set. @@ -49,10 +132,56 @@ export class PolicySetsImpl implements PolicySets { evaluatePoliciesOperationSpec ); } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + nextLink: string, + options?: PolicySetsListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, nextLink, options }, + listNextOperationSpec + ); + } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PolicySetList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; const evaluatePoliciesOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/policysets/{name}/evaluatePolicies", @@ -62,7 +191,7 @@ const evaluatePoliciesOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.EvaluatePoliciesResponse }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.evaluatePoliciesRequest, @@ -78,3 +207,30 @@ const evaluatePoliciesOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PolicySetList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/providerOperations.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/providerOperations.ts index 5c888b0ecfa3..cb493b2ef621 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/providerOperations.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/providerOperations.ts @@ -13,7 +13,7 @@ import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DevTestLabsClient } from "../devTestLabsClient"; import { - OperationMetadata, + Operation, ProviderOperationsListNextOptionalParams, ProviderOperationsListOptionalParams, ProviderOperationsListResponse, @@ -39,7 +39,7 @@ export class ProviderOperationsImpl implements ProviderOperations { */ public list( options?: ProviderOperationsListOptionalParams - ): PagedAsyncIterableIterator { + ): PagedAsyncIterableIterator { const iter = this.listPagingAll(options); return { next() { @@ -56,7 +56,7 @@ export class ProviderOperationsImpl implements ProviderOperations { private async *listPagingPage( options?: ProviderOperationsListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { let result = await this._list(options); yield result.value || []; let continuationToken = result.nextLink; @@ -69,7 +69,7 @@ export class ProviderOperationsImpl implements ProviderOperations { private async *listPagingAll( options?: ProviderOperationsListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { for await (const page of this.listPagingPage(options)) { yield* page; } @@ -108,10 +108,10 @@ const listOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ProviderOperationResult + bodyMapper: Mappers.OperationListResult }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -124,10 +124,10 @@ const listNextOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ProviderOperationResult + bodyMapper: Mappers.OperationListResult }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/schedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/schedules.ts index 3cc3c2f41436..b1664691555e 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/schedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/schedules.ts @@ -18,8 +18,6 @@ import { Schedule, SchedulesListNextOptionalParams, SchedulesListOptionalParams, - SchedulesListApplicableNextOptionalParams, - SchedulesListApplicableOptionalParams, SchedulesListResponse, SchedulesGetOptionalParams, SchedulesGetResponse, @@ -30,9 +28,9 @@ import { SchedulesUpdateOptionalParams, SchedulesUpdateResponse, SchedulesExecuteOptionalParams, + SchedulesListApplicableOptionalParams, SchedulesListApplicableResponse, - SchedulesListNextResponse, - SchedulesListApplicableNextResponse + SchedulesListNextResponse } from "../models"; /// @@ -50,7 +48,7 @@ export class SchedulesImpl implements Schedules { /** * List schedules in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -107,89 +105,9 @@ export class SchedulesImpl implements Schedules { } } - /** - * Lists all applicable schedules - * @param resourceGroupName The name of the resource group. - * @param labName The name of the lab. - * @param name The name of the schedule. - * @param options The options parameters. - */ - public listApplicable( - resourceGroupName: string, - labName: string, - name: string, - options?: SchedulesListApplicableOptionalParams - ): PagedAsyncIterableIterator { - const iter = this.listApplicablePagingAll( - resourceGroupName, - labName, - name, - options - ); - return { - next() { - return iter.next(); - }, - [Symbol.asyncIterator]() { - return this; - }, - byPage: () => { - return this.listApplicablePagingPage( - resourceGroupName, - labName, - name, - options - ); - } - }; - } - - private async *listApplicablePagingPage( - resourceGroupName: string, - labName: string, - name: string, - options?: SchedulesListApplicableOptionalParams - ): AsyncIterableIterator { - let result = await this._listApplicable( - resourceGroupName, - labName, - name, - options - ); - yield result.value || []; - let continuationToken = result.nextLink; - while (continuationToken) { - result = await this._listApplicableNext( - resourceGroupName, - labName, - name, - continuationToken, - options - ); - continuationToken = result.nextLink; - yield result.value || []; - } - } - - private async *listApplicablePagingAll( - resourceGroupName: string, - labName: string, - name: string, - options?: SchedulesListApplicableOptionalParams - ): AsyncIterableIterator { - for await (const page of this.listApplicablePagingPage( - resourceGroupName, - labName, - name, - options - )) { - yield* page; - } - } - /** * List schedules in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -206,7 +124,7 @@ export class SchedulesImpl implements Schedules { /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -225,7 +143,7 @@ export class SchedulesImpl implements Schedules { /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param schedule A schedule. @@ -246,7 +164,7 @@ export class SchedulesImpl implements Schedules { /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -265,10 +183,10 @@ export class SchedulesImpl implements Schedules { /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -286,7 +204,7 @@ export class SchedulesImpl implements Schedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -349,7 +267,7 @@ export class SchedulesImpl implements Schedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -371,12 +289,12 @@ export class SchedulesImpl implements Schedules { /** * Lists all applicable schedules - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. */ - private _listApplicable( + listApplicable( resourceGroupName: string, labName: string, name: string, @@ -390,7 +308,7 @@ export class SchedulesImpl implements Schedules { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -406,27 +324,6 @@ export class SchedulesImpl implements Schedules { listNextOperationSpec ); } - - /** - * ListApplicableNext - * @param resourceGroupName The name of the resource group. - * @param labName The name of the lab. - * @param name The name of the schedule. - * @param nextLink The nextLink from the previous successful call to the ListApplicable method. - * @param options The options parameters. - */ - private _listApplicableNext( - resourceGroupName: string, - labName: string, - name: string, - nextLink: string, - options?: SchedulesListApplicableNextOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, labName, name, nextLink, options }, - listApplicableNextOperationSpec - ); - } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); @@ -440,12 +337,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -468,10 +364,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -494,7 +390,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule, @@ -518,7 +414,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -541,7 +437,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule1, @@ -567,7 +463,7 @@ const executeOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -590,7 +486,7 @@ const listApplicableOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -612,12 +508,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -632,26 +527,3 @@ const listNextOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; -const listApplicableNextOperationSpec: coreClient.OperationSpec = { - path: "{nextLink}", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.ScheduleList - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.nextLink, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.name, - Parameters.labName - ], - headerParameters: [Parameters.accept], - serializer -}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/secrets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/secrets.ts index f4852f62e573..5a58592a7a3f 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/secrets.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/secrets.ts @@ -45,7 +45,7 @@ export class SecretsImpl implements Secrets { /** * List secrets in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -125,7 +125,7 @@ export class SecretsImpl implements Secrets { /** * List secrets in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -144,7 +144,7 @@ export class SecretsImpl implements Secrets { /** * Get secret. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -165,7 +165,7 @@ export class SecretsImpl implements Secrets { /** * Create or replace an existing secret. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -237,7 +237,7 @@ export class SecretsImpl implements Secrets { /** * Create or replace an existing secret. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -265,7 +265,7 @@ export class SecretsImpl implements Secrets { /** * Delete secret. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -286,11 +286,11 @@ export class SecretsImpl implements Secrets { /** * Allows modifying tags of secrets. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. - * @param secret A secret. + * @param secret Allows modifying tags of secrets. All other properties will be ignored. * @param options The options parameters. */ update( @@ -309,7 +309,7 @@ export class SecretsImpl implements Secrets { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param nextLink The nextLink from the previous successful call to the List method. @@ -340,12 +340,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.SecretList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -369,10 +368,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Secret }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -402,10 +401,10 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Secret }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.secret, + requestBody: Parameters.secret1, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -427,7 +426,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -451,10 +450,10 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Secret }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.secret1, + requestBody: Parameters.secret, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -476,12 +475,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.SecretList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabricSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabricSchedules.ts index 0f9d3649f893..af9337e22fb2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabricSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabricSchedules.ts @@ -46,7 +46,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * List schedules in a given service fabric. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -135,7 +135,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * List schedules in a given service fabric. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -156,7 +156,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -186,7 +186,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -219,7 +219,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -249,12 +249,12 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -282,7 +282,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -356,7 +356,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -384,7 +384,7 @@ export class ServiceFabricSchedulesImpl implements ServiceFabricSchedules { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -424,12 +424,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -454,10 +453,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -482,7 +481,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule, @@ -508,7 +507,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -533,7 +532,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule1, @@ -561,7 +560,7 @@ const executeOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -585,12 +584,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabrics.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabrics.ts index d52efc06271c..b9cacc8f2bf5 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabrics.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceFabrics.ts @@ -49,7 +49,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * List service fabrics in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -129,7 +129,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * List service fabrics in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -148,7 +148,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Get service fabric. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -168,8 +168,8 @@ export class ServiceFabricsImpl implements ServiceFabrics { } /** - * Create or replace an existing service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service Fabric. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -240,8 +240,8 @@ export class ServiceFabricsImpl implements ServiceFabrics { } /** - * Create or replace an existing service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service Fabric. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -269,7 +269,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Delete service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -334,7 +334,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Delete service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -359,11 +359,11 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Allows modifying tags of service fabrics. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. - * @param serviceFabric A Service Fabric. + * @param serviceFabric Allows modifying tags of service fabrics. All other properties will be ignored. * @param options The options parameters. */ update( @@ -382,7 +382,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Lists the applicable start/stop schedules, if any. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -403,7 +403,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Start a service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -468,7 +468,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Start a service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -493,7 +493,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Stop a service fabric This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -558,7 +558,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * Stop a service fabric This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -583,7 +583,7 @@ export class ServiceFabricsImpl implements ServiceFabrics { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param nextLink The nextLink from the previous successful call to the List method. @@ -614,15 +614,15 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceFabricList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, @@ -643,7 +643,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceFabric }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion, Parameters.expand], @@ -676,7 +676,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceFabric }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.serviceFabric, @@ -703,7 +703,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -727,7 +727,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceFabric }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.serviceFabric1, @@ -753,7 +753,7 @@ const listApplicableSchedulesOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicableSchedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -778,7 +778,7 @@ const startOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -803,7 +803,7 @@ const stopOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -826,15 +826,15 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceFabricList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceRunners.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceRunners.ts index d1b1874b8446..26a19f9c6ba9 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceRunners.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/serviceRunners.ts @@ -6,20 +6,28 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { ServiceRunners } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { DevTestLabsClient } from "../devTestLabsClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; import { + ServiceRunner, + ServiceRunnersListNextOptionalParams, + ServiceRunnersListOptionalParams, + ServiceRunnersListResponse, ServiceRunnersGetOptionalParams, ServiceRunnersGetResponse, - ServiceRunner, ServiceRunnersCreateOrUpdateOptionalParams, ServiceRunnersCreateOrUpdateResponse, - ServiceRunnersDeleteOptionalParams + ServiceRunnersDeleteOptionalParams, + ServiceRunnersListNextResponse } from "../models"; +/// /** Class containing ServiceRunners operations. */ export class ServiceRunnersImpl implements ServiceRunners { private readonly client: DevTestLabsClient; @@ -32,9 +40,85 @@ export class ServiceRunnersImpl implements ServiceRunners { this.client = client; } + /** + * List service runners in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + options?: ServiceRunnersListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, labName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, labName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + options?: ServiceRunnersListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, labName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + options?: ServiceRunnersListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + options + )) { + yield* page; + } + } + + /** + * List service runners in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + options?: ServiceRunnersListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, options }, + listOperationSpec + ); + } + /** * Get service runner. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param options The options parameters. @@ -52,48 +136,234 @@ export class ServiceRunnersImpl implements ServiceRunners { } /** - * Create or replace an existing service runner. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param serviceRunner A container for a managed identity to execute DevTest lab services. * @param options The options parameters. */ - createOrUpdate( + async beginCreateOrUpdate( resourceGroupName: string, labName: string, name: string, serviceRunner: ServiceRunner, options?: ServiceRunnersCreateOrUpdateOptionalParams - ): Promise { - return this.client.sendOperationRequest( + ): Promise< + PollerLike< + PollOperationState, + ServiceRunnersCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, { resourceGroupName, labName, name, serviceRunner, options }, createOrUpdateOperationSpec ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or replace an existing Service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the service runner. + * @param serviceRunner A container for a managed identity to execute DevTest lab services. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + labName: string, + name: string, + serviceRunner: ServiceRunner, + options?: ServiceRunnersCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + labName, + name, + serviceRunner, + options + ); + return poller.pollUntilDone(); } /** - * Delete service runner. - * @param resourceGroupName The name of the resource group. + * Delete service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param options The options parameters. */ - delete( + async beginDelete( resourceGroupName: string, labName: string, name: string, options?: ServiceRunnersDeleteOptionalParams - ): Promise { - return this.client.sendOperationRequest( + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, { resourceGroupName, labName, name, options }, deleteOperationSpec ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Delete service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the service runner. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + labName: string, + name: string, + options?: ServiceRunnersDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + labName, + name, + options + ); + return poller.pollUntilDone(); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + nextLink: string, + options?: ServiceRunnersListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, nextLink, options }, + listNextOperationSpec + ); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/servicerunners", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ServiceRunnerList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/servicerunners/{name}", @@ -103,7 +373,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ServiceRunner }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -128,8 +398,14 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { 201: { bodyMapper: Mappers.ServiceRunner }, + 202: { + bodyMapper: Mappers.ServiceRunner + }, + 204: { + bodyMapper: Mappers.ServiceRunner + }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.serviceRunner, @@ -151,9 +427,11 @@ const deleteOperationSpec: coreClient.OperationSpec = { httpMethod: "DELETE", responses: { 200: {}, + 201: {}, + 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -167,3 +445,30 @@ const deleteOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ServiceRunnerList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedGalleries.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedGalleries.ts new file mode 100644 index 000000000000..440fa74bd2fc --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedGalleries.ts @@ -0,0 +1,374 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SharedGalleries } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DevTestLabsClient } from "../devTestLabsClient"; +import { + SharedGallery, + SharedGalleriesListNextOptionalParams, + SharedGalleriesListOptionalParams, + SharedGalleriesListResponse, + SharedGalleriesGetOptionalParams, + SharedGalleriesGetResponse, + SharedGalleriesCreateOrUpdateOptionalParams, + SharedGalleriesCreateOrUpdateResponse, + SharedGalleriesDeleteOptionalParams, + SharedGalleryFragment, + SharedGalleriesUpdateOptionalParams, + SharedGalleriesUpdateResponse, + SharedGalleriesListNextResponse +} from "../models"; + +/// +/** Class containing SharedGalleries operations. */ +export class SharedGalleriesImpl implements SharedGalleries { + private readonly client: DevTestLabsClient; + + /** + * Initialize a new instance of the class SharedGalleries class. + * @param client Reference to the service client + */ + constructor(client: DevTestLabsClient) { + this.client = client; + } + + /** + * List shared galleries in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + options?: SharedGalleriesListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(resourceGroupName, labName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(resourceGroupName, labName, options); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + options?: SharedGalleriesListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(resourceGroupName, labName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + options?: SharedGalleriesListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + options + )) { + yield* page; + } + } + + /** + * List shared galleries in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + options?: SharedGalleriesListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, options }, + listOperationSpec + ); + } + + /** + * Get shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: SharedGalleriesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, options }, + getOperationSpec + ); + } + + /** + * Create or replace an existing Shared Gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param sharedGallery Properties of a shared gallery + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + labName: string, + name: string, + sharedGallery: SharedGallery, + options?: SharedGalleriesCreateOrUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, sharedGallery, options }, + createOrUpdateOperationSpec + ); + } + + /** + * Delete shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param options The options parameters. + */ + delete( + resourceGroupName: string, + labName: string, + name: string, + options?: SharedGalleriesDeleteOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, options }, + deleteOperationSpec + ); + } + + /** + * Allows modifying tags of shared galleries. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param sharedGallery Allows modifying tags of shared galleries. All other properties will be + * ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + name: string, + sharedGallery: SharedGalleryFragment, + options?: SharedGalleriesUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, sharedGallery, options }, + updateOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + nextLink: string, + options?: SharedGalleriesListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedGalleryList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedGallery + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{name}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.SharedGallery + }, + 201: { + bodyMapper: Mappers.SharedGallery + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.sharedGallery, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{name}", + httpMethod: "DELETE", + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{name}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.SharedGallery + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.sharedGallery1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedGalleryList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedImages.ts new file mode 100644 index 000000000000..b49135159a9f --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/sharedImages.ts @@ -0,0 +1,428 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SharedImages } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DevTestLabsClient } from "../devTestLabsClient"; +import { + SharedImage, + SharedImagesListNextOptionalParams, + SharedImagesListOptionalParams, + SharedImagesListResponse, + SharedImagesGetOptionalParams, + SharedImagesGetResponse, + SharedImagesCreateOrUpdateOptionalParams, + SharedImagesCreateOrUpdateResponse, + SharedImagesDeleteOptionalParams, + SharedImageFragment, + SharedImagesUpdateOptionalParams, + SharedImagesUpdateResponse, + SharedImagesListNextResponse +} from "../models"; + +/// +/** Class containing SharedImages operations. */ +export class SharedImagesImpl implements SharedImages { + private readonly client: DevTestLabsClient; + + /** + * Initialize a new instance of the class SharedImages class. + * @param client Reference to the service client + */ + constructor(client: DevTestLabsClient) { + this.client = client; + } + + /** + * List shared images in a given shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + options?: SharedImagesListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll( + resourceGroupName, + labName, + sharedGalleryName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage( + resourceGroupName, + labName, + sharedGalleryName, + options + ); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + options?: SharedImagesListOptionalParams + ): AsyncIterableIterator { + let result = await this._list( + resourceGroupName, + labName, + sharedGalleryName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + labName, + sharedGalleryName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + options?: SharedImagesListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + labName, + sharedGalleryName, + options + )) { + yield* page; + } + } + + /** + * List shared images in a given shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + options?: SharedImagesListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, sharedGalleryName, options }, + listOperationSpec + ); + } + + /** + * Get shared image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + options?: SharedImagesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, sharedGalleryName, name, options }, + getOperationSpec + ); + } + + /** + * Create or replace an existing Shared Image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param sharedImage Properties of a shared image + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + sharedImage: SharedImage, + options?: SharedImagesCreateOrUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + labName, + sharedGalleryName, + name, + sharedImage, + options + }, + createOrUpdateOperationSpec + ); + } + + /** + * Delete shared image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param options The options parameters. + */ + delete( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + options?: SharedImagesDeleteOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, sharedGalleryName, name, options }, + deleteOperationSpec + ); + } + + /** + * Allows modifying tags of shared images. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param sharedImage Allows modifying tags of shared images. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + sharedImage: SharedImageFragment, + options?: SharedImagesUpdateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + labName, + sharedGalleryName, + name, + sharedImage, + options + }, + updateOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + nextLink: string, + options?: SharedImagesListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, sharedGalleryName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{sharedGalleryName}/sharedimages", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedImageList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby, + Parameters.expand + ], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{sharedGalleryName}/sharedimages/{name}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedImage + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.expand], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{sharedGalleryName}/sharedimages/{name}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.SharedImage + }, + 201: { + bodyMapper: Mappers.SharedImage + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.sharedImage, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{sharedGalleryName}/sharedimages/{name}", + httpMethod: "DELETE", + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/sharedgalleries/{sharedGalleryName}/sharedimages/{name}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.SharedImage + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.sharedImage1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SharedImageList + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [ + Parameters.apiVersion, + Parameters.filter, + Parameters.top, + Parameters.orderby, + Parameters.expand + ], + urlParameters: [ + Parameters.$host, + Parameters.nextLink, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.labName, + Parameters.sharedGalleryName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/users.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/users.ts index baf95bb9603b..5ffaa970c78c 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/users.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/users.ts @@ -45,7 +45,7 @@ export class UsersImpl implements Users { /** * List user profiles in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -104,7 +104,7 @@ export class UsersImpl implements Users { /** * List user profiles in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -121,7 +121,7 @@ export class UsersImpl implements Users { /** * Get user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -140,7 +140,7 @@ export class UsersImpl implements Users { /** * Create or replace an existing user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param user Profile of a lab user. @@ -210,7 +210,7 @@ export class UsersImpl implements Users { /** * Create or replace an existing user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param user Profile of a lab user. @@ -235,7 +235,7 @@ export class UsersImpl implements Users { /** * Delete user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -298,7 +298,7 @@ export class UsersImpl implements Users { /** * Delete user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -320,10 +320,10 @@ export class UsersImpl implements Users { /** * Allows modifying tags of user profiles. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. - * @param user Profile of a lab user. + * @param user Allows modifying tags of user profiles. All other properties will be ignored. * @param options The options parameters. */ update( @@ -341,7 +341,7 @@ export class UsersImpl implements Users { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -370,12 +370,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.UserList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -398,10 +397,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.User }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -430,7 +429,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.User }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.user, @@ -456,7 +455,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -479,7 +478,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.User }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.user1, @@ -503,12 +502,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.UserList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachineSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachineSchedules.ts index d909b07947f9..2300aeb73c9e 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachineSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachineSchedules.ts @@ -46,7 +46,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * List schedules in a given virtual machine. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param options The options parameters. @@ -126,7 +126,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * List schedules in a given virtual machine. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param options The options parameters. @@ -145,7 +145,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -166,7 +166,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -196,7 +196,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -217,11 +217,11 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -247,7 +247,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -312,7 +312,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -337,7 +337,7 @@ export class VirtualMachineSchedulesImpl implements VirtualMachineSchedules { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param nextLink The nextLink from the previous successful call to the List method. @@ -368,12 +368,11 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby @@ -397,10 +396,10 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - queryParameters: [Parameters.apiVersion, Parameters.expand], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.subscriptionId, @@ -424,7 +423,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule, @@ -449,7 +448,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 200: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -473,7 +472,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.Schedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.schedule1, @@ -500,7 +499,7 @@ const executeOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -523,12 +522,11 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ScheduleList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, Parameters.orderby diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachines.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachines.ts index 7e82cf7ded65..19d7d395a7ad 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachines.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualMachines.ts @@ -15,7 +15,7 @@ import { DevTestLabsClient } from "../devTestLabsClient"; import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; import { LroImpl } from "../lroImpl"; import { - LabVirtualMachine, + VirtualMachine, VirtualMachinesListNextOptionalParams, VirtualMachinesListOptionalParams, VirtualMachinesListResponse, @@ -24,7 +24,7 @@ import { VirtualMachinesCreateOrUpdateOptionalParams, VirtualMachinesCreateOrUpdateResponse, VirtualMachinesDeleteOptionalParams, - LabVirtualMachineFragment, + VirtualMachineFragment, VirtualMachinesUpdateOptionalParams, VirtualMachinesUpdateResponse, DataDiskProperties, @@ -32,6 +32,7 @@ import { ApplyArtifactsRequest, VirtualMachinesApplyArtifactsOptionalParams, VirtualMachinesClaimOptionalParams, + VirtualMachinesClearArtifactResultsOptionalParams, DetachDataDiskProperties, VirtualMachinesDetachDataDiskOptionalParams, VirtualMachinesGetRdpFileContentsOptionalParams, @@ -64,7 +65,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * List virtual machines in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -72,7 +73,7 @@ export class VirtualMachinesImpl implements VirtualMachines { resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams - ): PagedAsyncIterableIterator { + ): PagedAsyncIterableIterator { const iter = this.listPagingAll(resourceGroupName, labName, options); return { next() { @@ -91,7 +92,7 @@ export class VirtualMachinesImpl implements VirtualMachines { resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { let result = await this._list(resourceGroupName, labName, options); yield result.value || []; let continuationToken = result.nextLink; @@ -111,7 +112,7 @@ export class VirtualMachinesImpl implements VirtualMachines { resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams - ): AsyncIterableIterator { + ): AsyncIterableIterator { for await (const page of this.listPagingPage( resourceGroupName, labName, @@ -123,7 +124,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * List virtual machines in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -140,7 +141,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Get virtual machine. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -158,18 +159,18 @@ export class VirtualMachinesImpl implements VirtualMachines { } /** - * Create or replace an existing virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Virtual machine. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine A virtual machine. * @param options The options parameters. */ async beginCreateOrUpdate( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachine, + virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams ): Promise< PollerLike< @@ -218,7 +219,7 @@ export class VirtualMachinesImpl implements VirtualMachines { const lro = new LroImpl( sendOperation, - { resourceGroupName, labName, name, labVirtualMachine, options }, + { resourceGroupName, labName, name, virtualMachine, options }, createOrUpdateOperationSpec ); return new LroEngine(lro, { @@ -228,25 +229,25 @@ export class VirtualMachinesImpl implements VirtualMachines { } /** - * Create or replace an existing virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Virtual machine. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine A virtual machine. * @param options The options parameters. */ async beginCreateOrUpdateAndWait( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachine, + virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams ): Promise { const poller = await this.beginCreateOrUpdate( resourceGroupName, labName, name, - labVirtualMachine, + virtualMachine, options ); return poller.pollUntilDone(); @@ -254,7 +255,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Delete virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -317,7 +318,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Delete virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -339,28 +340,29 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Allows modifying tags of virtual machines. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine Allows modifying tags of virtual machines. All other properties will be + * ignored. * @param options The options parameters. */ update( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachineFragment, + virtualMachine: VirtualMachineFragment, options?: VirtualMachinesUpdateOptionalParams ): Promise { return this.client.sendOperationRequest( - { resourceGroupName, labName, name, labVirtualMachine, options }, + { resourceGroupName, labName, name, virtualMachine, options }, updateOperationSpec ); } /** * Attach a new or existing data disk to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param dataDiskProperties Request body for adding a new or existing data disk to a virtual machine. @@ -425,7 +427,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Attach a new or existing data disk to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param dataDiskProperties Request body for adding a new or existing data disk to a virtual machine. @@ -450,7 +452,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Apply artifacts to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param applyArtifactsRequest Request body for applying artifacts to a virtual machine. @@ -515,7 +517,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Apply artifacts to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param applyArtifactsRequest Request body for applying artifacts to a virtual machine. @@ -540,7 +542,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Take ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -603,7 +605,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Take ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -623,9 +625,28 @@ export class VirtualMachinesImpl implements VirtualMachines { return poller.pollUntilDone(); } + /** + * Clears the artifact results of the virtual machine. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the virtual machine. + * @param options The options parameters. + */ + clearArtifactResults( + resourceGroupName: string, + labName: string, + name: string, + options?: VirtualMachinesClearArtifactResultsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, labName, name, options }, + clearArtifactResultsOperationSpec + ); + } + /** * Detach the specified disk from the virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param detachDataDiskProperties Request body for detaching data disk from a virtual machine. @@ -690,7 +711,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Detach the specified disk from the virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param detachDataDiskProperties Request body for detaching data disk from a virtual machine. @@ -715,7 +736,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Gets a string that represents the contents of the RDP file for the virtual machine - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -734,7 +755,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Lists the applicable start/stop schedules, if any. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -753,7 +774,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Redeploy a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -816,7 +837,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Redeploy a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -838,7 +859,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Resize Virtual Machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param resizeLabVirtualMachineProperties Request body for resizing a virtual machine. @@ -909,7 +930,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Resize Virtual Machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param resizeLabVirtualMachineProperties Request body for resizing a virtual machine. @@ -934,7 +955,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Restart a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -997,7 +1018,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Restart a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1019,7 +1040,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Start a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1082,7 +1103,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Start a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1104,7 +1125,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Stop a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1167,7 +1188,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Stop a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1190,7 +1211,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Transfers all data disks attached to the virtual machine to be owned by the current user. This * operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1254,7 +1275,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Transfers all data disks attached to the virtual machine to be owned by the current user. This * operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1276,7 +1297,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Release ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1339,7 +1360,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * Release ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -1361,7 +1382,7 @@ export class VirtualMachinesImpl implements VirtualMachines { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -1387,18 +1408,18 @@ const listOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.LabVirtualMachineList + bodyMapper: Mappers.VirtualMachineList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, @@ -1415,10 +1436,10 @@ const getOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion, Parameters.expand], @@ -1438,22 +1459,22 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { httpMethod: "PUT", responses: { 200: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, 201: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, 202: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, 204: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.labVirtualMachine, + requestBody: Parameters.virtualMachine, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -1476,7 +1497,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1496,13 +1517,13 @@ const updateOperationSpec: coreClient.OperationSpec = { httpMethod: "PATCH", responses: { 200: { - bodyMapper: Mappers.LabVirtualMachine + bodyMapper: Mappers.VirtualMachine }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.labVirtualMachine1, + requestBody: Parameters.virtualMachine1, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -1525,7 +1546,7 @@ const addDataDiskOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.dataDiskProperties, @@ -1551,7 +1572,7 @@ const applyArtifactsOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.applyArtifactsRequest, @@ -1577,7 +1598,28 @@ const claimOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.name, + Parameters.labName + ], + headerParameters: [Parameters.accept], + serializer +}; +const clearArtifactResultsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}/clearArtifactResults", + httpMethod: "POST", + responses: { + 200: {}, + default: { + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1601,7 +1643,7 @@ const detachDataDiskOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.detachDataDiskProperties, @@ -1626,7 +1668,7 @@ const getRdpFileContentsOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.RdpConnection }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1649,7 +1691,7 @@ const listApplicableSchedulesOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ApplicableSchedule }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1673,7 +1715,7 @@ const redeployOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1697,7 +1739,7 @@ const resizeOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.resizeLabVirtualMachineProperties, @@ -1723,7 +1765,7 @@ const restartOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1747,7 +1789,7 @@ const startOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1771,7 +1813,7 @@ const stopOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1795,7 +1837,7 @@ const transferDisksOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1819,7 +1861,7 @@ const unClaimOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -1838,18 +1880,18 @@ const listNextOperationSpec: coreClient.OperationSpec = { httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.LabVirtualMachineList + bodyMapper: Mappers.VirtualMachineList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualNetworks.ts b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualNetworks.ts index c8e518f67082..8728a71101a2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualNetworks.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operations/virtualNetworks.ts @@ -45,7 +45,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * List virtual networks in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -104,7 +104,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * List virtual networks in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -121,7 +121,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Get virtual network. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -140,7 +140,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Create or replace an existing virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param virtualNetwork A virtual network. @@ -210,7 +210,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Create or replace an existing virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param virtualNetwork A virtual network. @@ -235,7 +235,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Delete virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -298,7 +298,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Delete virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -320,10 +320,11 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * Allows modifying tags of virtual networks. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. - * @param virtualNetwork A virtual network. + * @param virtualNetwork Allows modifying tags of virtual networks. All other properties will be + * ignored. * @param options The options parameters. */ update( @@ -341,7 +342,7 @@ export class VirtualNetworksImpl implements VirtualNetworks { /** * ListNext - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param nextLink The nextLink from the previous successful call to the List method. * @param options The options parameters. @@ -370,15 +371,15 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.VirtualNetworkList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, @@ -398,7 +399,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.VirtualNetwork }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion, Parameters.expand], @@ -430,7 +431,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.VirtualNetwork }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.virtualNetwork, @@ -456,7 +457,7 @@ const deleteOperationSpec: coreClient.OperationSpec = { 202: {}, 204: {}, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [Parameters.apiVersion], @@ -479,7 +480,7 @@ const updateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.VirtualNetwork }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, requestBody: Parameters.virtualNetwork1, @@ -503,15 +504,15 @@ const listNextOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.VirtualNetworkList }, default: { - bodyMapper: Mappers.CloudError + bodyMapper: Mappers.ErrorResponse } }, queryParameters: [ Parameters.apiVersion, - Parameters.expand, Parameters.filter, Parameters.top, - Parameters.orderby + Parameters.orderby, + Parameters.expand ], urlParameters: [ Parameters.$host, diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/armTemplates.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/armTemplates.ts index 92ecdc733d1d..04b389c2049f 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/armTemplates.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/armTemplates.ts @@ -19,7 +19,7 @@ import { export interface ArmTemplates { /** * List azure resource manager templates in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -32,7 +32,7 @@ export interface ArmTemplates { ): PagedAsyncIterableIterator; /** * Get azure resource manager template. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the azure resource manager template. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifactSources.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifactSources.ts index f5f5b6d61a9d..376e72f86829 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifactSources.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifactSources.ts @@ -25,7 +25,7 @@ import { export interface ArtifactSources { /** * List artifact sources in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -36,7 +36,7 @@ export interface ArtifactSources { ): PagedAsyncIterableIterator; /** * Get artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param options The options parameters. @@ -49,7 +49,7 @@ export interface ArtifactSources { ): Promise; /** * Create or replace an existing artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param artifactSource Properties of an artifact source. @@ -64,7 +64,7 @@ export interface ArtifactSources { ): Promise; /** * Delete artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. * @param options The options parameters. @@ -77,10 +77,11 @@ export interface ArtifactSources { ): Promise; /** * Allows modifying tags of artifact sources. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the artifact source. - * @param artifactSource Properties of an artifact source. + * @param artifactSource Allows modifying tags of artifact sources. All other properties will be + * ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifacts.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifacts.ts index 74f6d40a985c..3f26028ed25f 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifacts.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/artifacts.ts @@ -22,7 +22,7 @@ import { export interface Artifacts { /** * List artifacts in a given artifact source. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param options The options parameters. @@ -35,7 +35,7 @@ export interface Artifacts { ): PagedAsyncIterableIterator; /** * Get artifact. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the artifact. @@ -51,7 +51,7 @@ export interface Artifacts { /** * Generates an ARM template for the given artifact, uploads the required files to a storage account, * and validates the generated artifact. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param artifactSourceName The name of the artifact source. * @param name The name of the artifact. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/bastionHosts.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/bastionHosts.ts new file mode 100644 index 000000000000..5a6b09d2573f --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/bastionHosts.ts @@ -0,0 +1,141 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + BastionHost, + BastionHostsListOptionalParams, + BastionHostsGetOptionalParams, + BastionHostsGetResponse, + BastionHostsCreateOrUpdateOptionalParams, + BastionHostsCreateOrUpdateResponse, + BastionHostsDeleteOptionalParams, + BastionHostFragment, + BastionHostsUpdateOptionalParams, + BastionHostsUpdateResponse +} from "../models"; + +/// +/** Interface representing a BastionHosts. */ +export interface BastionHosts { + /** + * List bastionhosts in a given virtual network. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + options?: BastionHostsListOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get bastionhost. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsGetOptionalParams + ): Promise; + /** + * Create or replace an existing bastionHost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Profile of a Bastion Host + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHost, + options?: BastionHostsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + BastionHostsCreateOrUpdateResponse + > + >; + /** + * Create or replace an existing bastionHost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Profile of a Bastion Host + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHost, + options?: BastionHostsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete bastionhost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete bastionhost. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + options?: BastionHostsDeleteOptionalParams + ): Promise; + /** + * Allows modifying tags of bastionhosts. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param virtualNetworkName The name of the virtual network. + * @param name The name of the bastionhost. + * @param bastionHost Allows modifying tags of bastionhosts. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + virtualNetworkName: string, + name: string, + bastionHost: BastionHostFragment, + options?: BastionHostsUpdateOptionalParams + ): Promise; +} diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/costs.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/costs.ts index dab7bda435a6..878dc8bc0fa0 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/costs.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/costs.ts @@ -6,19 +6,33 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { + LabCost, + CostsListOptionalParams, CostsGetOptionalParams, CostsGetResponse, - LabCost, CostsCreateOrUpdateOptionalParams, CostsCreateOrUpdateResponse } from "../models"; +/// /** Interface representing a Costs. */ export interface Costs { + /** + * List costs in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + options?: CostsListOptionalParams + ): PagedAsyncIterableIterator; /** * Get cost. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the cost. * @param options The options parameters. @@ -31,7 +45,7 @@ export interface Costs { ): Promise; /** * Create or replace an existing cost. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the cost. * @param labCost A cost item. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/customImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/customImages.ts index 7dce830603d6..855996f7f547 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/customImages.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/customImages.ts @@ -26,7 +26,7 @@ import { export interface CustomImages { /** * List custom images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -37,7 +37,7 @@ export interface CustomImages { ): PagedAsyncIterableIterator; /** * Get custom image. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -50,7 +50,7 @@ export interface CustomImages { ): Promise; /** * Create or replace an existing custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param customImage A custom image. @@ -70,7 +70,7 @@ export interface CustomImages { >; /** * Create or replace an existing custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param customImage A custom image. @@ -85,7 +85,7 @@ export interface CustomImages { ): Promise; /** * Delete custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -98,7 +98,7 @@ export interface CustomImages { ): Promise, void>>; /** * Delete custom image. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. * @param options The options parameters. @@ -111,10 +111,10 @@ export interface CustomImages { ): Promise; /** * Allows modifying tags of custom images. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the custom image. - * @param customImage A custom image. + * @param customImage Allows modifying tags of custom images. All other properties will be ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/disks.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/disks.ts index 89a515ab236b..3fbfd24c75cd 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/disks.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/disks.ts @@ -30,7 +30,7 @@ import { export interface Disks { /** * List disks in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -43,7 +43,7 @@ export interface Disks { ): PagedAsyncIterableIterator; /** * Get disk. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -58,7 +58,7 @@ export interface Disks { ): Promise; /** * Create or replace an existing disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -80,7 +80,7 @@ export interface Disks { >; /** * Create or replace an existing disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -97,7 +97,7 @@ export interface Disks { ): Promise; /** * Delete disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -112,7 +112,7 @@ export interface Disks { ): Promise, void>>; /** * Delete disk. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -127,11 +127,11 @@ export interface Disks { ): Promise; /** * Allows modifying tags of disks. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. - * @param disk A Disk. + * @param disk Allows modifying tags of disks. All other properties will be ignored. * @param options The options parameters. */ update( @@ -145,7 +145,7 @@ export interface Disks { /** * Attach and create the lease of the disk to the virtual machine. This operation can take a while to * complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -163,7 +163,7 @@ export interface Disks { /** * Attach and create the lease of the disk to the virtual machine. This operation can take a while to * complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -181,7 +181,7 @@ export interface Disks { /** * Detach and break the lease of the disk attached to the virtual machine. This operation can take a * while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. @@ -199,7 +199,7 @@ export interface Disks { /** * Detach and break the lease of the disk attached to the virtual machine. This operation can take a * while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the disk. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/environments.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/environments.ts index 06ca898114b6..31d9e873bfc7 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/environments.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/environments.ts @@ -9,14 +9,14 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PollerLike, PollOperationState } from "@azure/core-lro"; import { - DtlEnvironment, + Environment, EnvironmentsListOptionalParams, EnvironmentsGetOptionalParams, EnvironmentsGetResponse, EnvironmentsCreateOrUpdateOptionalParams, EnvironmentsCreateOrUpdateResponse, EnvironmentsDeleteOptionalParams, - DtlEnvironmentFragment, + EnvironmentFragment, EnvironmentsUpdateOptionalParams, EnvironmentsUpdateResponse } from "../models"; @@ -26,7 +26,7 @@ import { export interface Environments { /** * List environments in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -36,10 +36,10 @@ export interface Environments { labName: string, userName: string, options?: EnvironmentsListOptionalParams - ): PagedAsyncIterableIterator; + ): PagedAsyncIterableIterator; /** * Get environment. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -54,11 +54,11 @@ export interface Environments { ): Promise; /** * Create or replace an existing environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment An environment, which is essentially an ARM template deployment. * @param options The options parameters. */ beginCreateOrUpdate( @@ -66,7 +66,7 @@ export interface Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironment, + environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams ): Promise< PollerLike< @@ -76,11 +76,11 @@ export interface Environments { >; /** * Create or replace an existing environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment An environment, which is essentially an ARM template deployment. * @param options The options parameters. */ beginCreateOrUpdateAndWait( @@ -88,12 +88,12 @@ export interface Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironment, + environment: Environment, options?: EnvironmentsCreateOrUpdateOptionalParams ): Promise; /** * Delete environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -108,7 +108,7 @@ export interface Environments { ): Promise, void>>; /** * Delete environment. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. @@ -123,11 +123,11 @@ export interface Environments { ): Promise; /** * Allows modifying tags of environments. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the environment. - * @param dtlEnvironment An environment, which is essentially an ARM template deployment. + * @param environment Allows modifying tags of environments. All other properties will be ignored. * @param options The options parameters. */ update( @@ -135,7 +135,7 @@ export interface Environments { labName: string, userName: string, name: string, - dtlEnvironment: DtlEnvironmentFragment, + environment: EnvironmentFragment, options?: EnvironmentsUpdateOptionalParams ): Promise; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/formulas.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/formulas.ts index d81b022f8a56..e4f97b5d00d2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/formulas.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/formulas.ts @@ -26,7 +26,7 @@ import { export interface Formulas { /** * List formulas in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -37,7 +37,7 @@ export interface Formulas { ): PagedAsyncIterableIterator; /** * Get formula. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param options The options parameters. @@ -49,8 +49,8 @@ export interface Formulas { options?: FormulasGetOptionalParams ): Promise; /** - * Create or replace an existing formula. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Formula. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param formula A formula for creating a VM, specifying an image base and other parameters @@ -69,8 +69,8 @@ export interface Formulas { > >; /** - * Create or replace an existing formula. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Formula. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param formula A formula for creating a VM, specifying an image base and other parameters @@ -85,7 +85,7 @@ export interface Formulas { ): Promise; /** * Delete formula. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. * @param options The options parameters. @@ -98,10 +98,10 @@ export interface Formulas { ): Promise; /** * Allows modifying tags of formulas. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the formula. - * @param formula A formula for creating a VM, specifying an image base and other parameters + * @param formula Allows modifying tags of formulas. All other properties will be ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/galleryImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/galleryImages.ts index 3142c6295d23..952b17ea7383 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/galleryImages.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/galleryImages.ts @@ -7,14 +7,19 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { GalleryImage, GalleryImagesListOptionalParams } from "../models"; +import { + GalleryImage, + GalleryImagesListOptionalParams, + GalleryImagesGetOptionalParams, + GalleryImagesGetResponse +} from "../models"; /// /** Interface representing a GalleryImages. */ export interface GalleryImages { /** * List gallery images in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -23,4 +28,17 @@ export interface GalleryImages { labName: string, options?: GalleryImagesListOptionalParams ): PagedAsyncIterableIterator; + /** + * Get gallery image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the gallery image. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: GalleryImagesGetOptionalParams + ): Promise; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/globalSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/globalSchedules.ts index 881cbeabb76c..dbe2168188e2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/globalSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/globalSchedules.ts @@ -37,7 +37,7 @@ export interface GlobalSchedules { ): PagedAsyncIterableIterator; /** * List schedules in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ listByResourceGroup( @@ -46,7 +46,7 @@ export interface GlobalSchedules { ): PagedAsyncIterableIterator; /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -57,7 +57,7 @@ export interface GlobalSchedules { ): Promise; /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param schedule A schedule. * @param options The options parameters. @@ -70,7 +70,7 @@ export interface GlobalSchedules { ): Promise; /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -81,9 +81,9 @@ export interface GlobalSchedules { ): Promise; /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -94,7 +94,7 @@ export interface GlobalSchedules { ): Promise; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -105,7 +105,7 @@ export interface GlobalSchedules { ): Promise, void>>; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param options The options parameters. */ @@ -116,7 +116,7 @@ export interface GlobalSchedules { ): Promise; /** * Updates a schedule's target resource Id. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param retargetScheduleProperties Properties for retargeting a virtual machine schedule. * @param options The options parameters. @@ -129,7 +129,7 @@ export interface GlobalSchedules { ): Promise, void>>; /** * Updates a schedule's target resource Id. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the schedule. * @param retargetScheduleProperties Properties for retargeting a virtual machine schedule. * @param options The options parameters. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/index.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/index.ts index ed76356e15ec..0a40f531a4bb 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/index.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/index.ts @@ -21,7 +21,10 @@ export * from "./notificationChannels"; export * from "./policySets"; export * from "./policies"; export * from "./schedules"; +export * from "./labSecrets"; export * from "./serviceRunners"; +export * from "./sharedGalleries"; +export * from "./sharedImages"; export * from "./users"; export * from "./disks"; export * from "./environments"; @@ -31,3 +34,4 @@ export * from "./serviceFabricSchedules"; export * from "./virtualMachines"; export * from "./virtualMachineSchedules"; export * from "./virtualNetworks"; +export * from "./bastionHosts"; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labSecrets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labSecrets.ts new file mode 100644 index 000000000000..bfdde6a9b91c --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labSecrets.ts @@ -0,0 +1,127 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + LabSecret, + LabSecretsListOptionalParams, + LabSecretsGetOptionalParams, + LabSecretsGetResponse, + LabSecretsCreateOrUpdateOptionalParams, + LabSecretsCreateOrUpdateResponse, + LabSecretsDeleteOptionalParams, + SecretFragment, + LabSecretsUpdateOptionalParams, + LabSecretsUpdateResponse +} from "../models"; + +/// +/** Interface representing a LabSecrets. */ +export interface LabSecrets { + /** + * List lab secrets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + options?: LabSecretsListOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get lab secret. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsGetOptionalParams + ): Promise; + /** + * Create or replace an existing Lab Secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param labSecret A shared secret in a lab. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + labName: string, + name: string, + labSecret: LabSecret, + options?: LabSecretsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + LabSecretsCreateOrUpdateResponse + > + >; + /** + * Create or replace an existing Lab Secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param labSecret A shared secret in a lab. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + labName: string, + name: string, + labSecret: LabSecret, + options?: LabSecretsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete lab secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete lab secret. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + labName: string, + name: string, + options?: LabSecretsDeleteOptionalParams + ): Promise; + /** + * Allows modifying tags of lab secrets. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the lab secret. + * @param secret Allows modifying tags of lab secrets. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + name: string, + secret: SecretFragment, + options?: LabSecretsUpdateOptionalParams + ): Promise; +} diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labs.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labs.ts index c70b88a30aea..2efe9f9fe869 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labs.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/labs.ts @@ -12,8 +12,6 @@ import { Lab, LabsListBySubscriptionOptionalParams, LabsListByResourceGroupOptionalParams, - LabVhd, - LabsListVhdsOptionalParams, LabsGetOptionalParams, LabsGetResponse, LabsCreateOrUpdateOptionalParams, @@ -25,13 +23,16 @@ import { LabsClaimAnyVmOptionalParams, LabVirtualMachineCreationParameter, LabsCreateEnvironmentOptionalParams, + LabsEnsureCurrentUserProfileOptionalParams, ExportResourceUsageParameters, LabsExportResourceUsageOptionalParams, GenerateUploadUriParameter, LabsGenerateUploadUriOptionalParams, LabsGenerateUploadUriResponse, ImportLabVirtualMachineRequest, - LabsImportVirtualMachineOptionalParams + LabsImportVirtualMachineOptionalParams, + LabsListVhdsOptionalParams, + LabsListVhdsResponse } from "../models"; /// @@ -46,27 +47,16 @@ export interface Labs { ): PagedAsyncIterableIterator; /** * List labs in a resource group. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param options The options parameters. */ listByResourceGroup( resourceGroupName: string, options?: LabsListByResourceGroupOptionalParams ): PagedAsyncIterableIterator; - /** - * List disk images available for custom image creation. - * @param resourceGroupName The name of the resource group. - * @param name The name of the lab. - * @param options The options parameters. - */ - listVhds( - resourceGroupName: string, - name: string, - options?: LabsListVhdsOptionalParams - ): PagedAsyncIterableIterator; /** * Get lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -77,7 +67,7 @@ export interface Labs { ): Promise; /** * Create or replace an existing lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param lab A lab. * @param options The options parameters. @@ -95,7 +85,7 @@ export interface Labs { >; /** * Create or replace an existing lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param lab A lab. * @param options The options parameters. @@ -108,7 +98,7 @@ export interface Labs { ): Promise; /** * Delete lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -119,7 +109,7 @@ export interface Labs { ): Promise, void>>; /** * Delete lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -130,9 +120,9 @@ export interface Labs { ): Promise; /** * Allows modifying tags of labs. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. - * @param lab A lab. + * @param lab Allows modifying tags of labs. All other properties will be ignored. * @param options The options parameters. */ update( @@ -143,7 +133,7 @@ export interface Labs { ): Promise; /** * Claim a random claimable virtual machine in the lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -154,7 +144,7 @@ export interface Labs { ): Promise, void>>; /** * Claim a random claimable virtual machine in the lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param options The options parameters. */ @@ -165,7 +155,7 @@ export interface Labs { ): Promise; /** * Create virtual machines in a lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param labVirtualMachineCreationParameter Properties for creating a virtual machine. * @param options The options parameters. @@ -178,7 +168,7 @@ export interface Labs { ): Promise, void>>; /** * Create virtual machines in a lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param labVirtualMachineCreationParameter Properties for creating a virtual machine. * @param options The options parameters. @@ -189,9 +179,20 @@ export interface Labs { labVirtualMachineCreationParameter: LabVirtualMachineCreationParameter, options?: LabsCreateEnvironmentOptionalParams ): Promise; + /** + * Ensure the current user has a valid profile in the lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the lab. + * @param options The options parameters. + */ + ensureCurrentUserProfile( + resourceGroupName: string, + name: string, + options?: LabsEnsureCurrentUserProfileOptionalParams + ): Promise; /** * Exports the lab resource usage into a storage account This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param exportResourceUsageParameters The parameters of the export operation. * @param options The options parameters. @@ -204,7 +205,7 @@ export interface Labs { ): Promise, void>>; /** * Exports the lab resource usage into a storage account This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param exportResourceUsageParameters The parameters of the export operation. * @param options The options parameters. @@ -217,7 +218,7 @@ export interface Labs { ): Promise; /** * Generate a URI for uploading custom disk images to a Lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param generateUploadUriParameter Properties for generating an upload URI. * @param options The options parameters. @@ -230,7 +231,7 @@ export interface Labs { ): Promise; /** * Import a virtual machine into a different lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param importLabVirtualMachineRequest This represents the payload required to import a virtual * machine from a different lab into the current one @@ -244,7 +245,7 @@ export interface Labs { ): Promise, void>>; /** * Import a virtual machine into a different lab. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param name The name of the lab. * @param importLabVirtualMachineRequest This represents the payload required to import a virtual * machine from a different lab into the current one @@ -256,4 +257,15 @@ export interface Labs { importLabVirtualMachineRequest: ImportLabVirtualMachineRequest, options?: LabsImportVirtualMachineOptionalParams ): Promise; + /** + * List disk images available for custom image creation. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param name The name of the lab. + * @param options The options parameters. + */ + listVhds( + resourceGroupName: string, + name: string, + options?: LabsListVhdsOptionalParams + ): Promise; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/notificationChannels.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/notificationChannels.ts index d2773a4b643b..e1e827d818d8 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/notificationChannels.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/notificationChannels.ts @@ -27,7 +27,7 @@ import { export interface NotificationChannels { /** * List notification channels in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -38,7 +38,7 @@ export interface NotificationChannels { ): PagedAsyncIterableIterator; /** * Get notification channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param options The options parameters. @@ -50,8 +50,8 @@ export interface NotificationChannels { options?: NotificationChannelsGetOptionalParams ): Promise; /** - * Create or replace an existing notification channel. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Notification Channel. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param notificationChannel A notification. @@ -66,7 +66,7 @@ export interface NotificationChannels { ): Promise; /** * Delete notification channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param options The options parameters. @@ -79,10 +79,11 @@ export interface NotificationChannels { ): Promise; /** * Allows modifying tags of notification channels. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. - * @param notificationChannel A notification. + * @param notificationChannel Allows modifying tags of notification channels. All other properties will + * be ignored. * @param options The options parameters. */ update( @@ -94,7 +95,7 @@ export interface NotificationChannels { ): Promise; /** * Send notification to provided channel. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the notification channel. * @param notifyParameters Properties for generating a Notification. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/operations.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/operations.ts index 73260fa8ecec..c535e474d399 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/operations.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/operations.ts @@ -11,13 +11,13 @@ import { OperationsGetOptionalParams, OperationsGetResponse } from "../models"; /** Interface representing a Operations. */ export interface Operations { /** - * Get operation. - * @param locationName The name of the location. - * @param name The name of the operation. + * Get operation + * @param location The name of Azure region. + * @param name Name of the operation id * @param options The options parameters. */ get( - locationName: string, + location: string, name: string, options?: OperationsGetOptionalParams ): Promise; diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policies.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policies.ts index b2a8f951cc8d..8896cc59df83 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policies.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policies.ts @@ -25,7 +25,7 @@ import { export interface Policies { /** * List policies in a given policy set. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param options The options parameters. @@ -38,7 +38,7 @@ export interface Policies { ): PagedAsyncIterableIterator; /** * Get policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -53,7 +53,7 @@ export interface Policies { ): Promise; /** * Create or replace an existing policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -70,7 +70,7 @@ export interface Policies { ): Promise; /** * Delete policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. @@ -85,11 +85,11 @@ export interface Policies { ): Promise; /** * Allows modifying tags of policies. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param policySetName The name of the policy set. * @param name The name of the policy. - * @param policy A Policy. + * @param policy Allows modifying tags of policies. All other properties will be ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policySets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policySets.ts index 462c1c6b83dd..8685eee84e91 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policySets.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/policySets.ts @@ -6,17 +6,32 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { + PolicySet, + PolicySetsListOptionalParams, EvaluatePoliciesRequest, PolicySetsEvaluatePoliciesOptionalParams, PolicySetsEvaluatePoliciesResponse } from "../models"; +/// /** Interface representing a PolicySets. */ export interface PolicySets { + /** + * List policy sets in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + options?: PolicySetsListOptionalParams + ): PagedAsyncIterableIterator; /** * Evaluates lab policy. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the policy set. * @param evaluatePoliciesRequest Request body for evaluating a policy set. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/providerOperations.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/providerOperations.ts index 4bb22430293c..ffc5420f58b2 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/providerOperations.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/providerOperations.ts @@ -7,10 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { - OperationMetadata, - ProviderOperationsListOptionalParams -} from "../models"; +import { Operation, ProviderOperationsListOptionalParams } from "../models"; /// /** Interface representing a ProviderOperations. */ @@ -21,5 +18,5 @@ export interface ProviderOperations { */ list( options?: ProviderOperationsListOptionalParams - ): PagedAsyncIterableIterator; + ): PagedAsyncIterableIterator; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/schedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/schedules.ts index d014aaa2d61f..a5fcb19f9cfa 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/schedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/schedules.ts @@ -11,7 +11,6 @@ import { PollerLike, PollOperationState } from "@azure/core-lro"; import { Schedule, SchedulesListOptionalParams, - SchedulesListApplicableOptionalParams, SchedulesGetOptionalParams, SchedulesGetResponse, SchedulesCreateOrUpdateOptionalParams, @@ -20,7 +19,9 @@ import { ScheduleFragment, SchedulesUpdateOptionalParams, SchedulesUpdateResponse, - SchedulesExecuteOptionalParams + SchedulesExecuteOptionalParams, + SchedulesListApplicableOptionalParams, + SchedulesListApplicableResponse } from "../models"; /// @@ -28,7 +29,7 @@ import { export interface Schedules { /** * List schedules in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -37,22 +38,9 @@ export interface Schedules { labName: string, options?: SchedulesListOptionalParams ): PagedAsyncIterableIterator; - /** - * Lists all applicable schedules - * @param resourceGroupName The name of the resource group. - * @param labName The name of the lab. - * @param name The name of the schedule. - * @param options The options parameters. - */ - listApplicable( - resourceGroupName: string, - labName: string, - name: string, - options?: SchedulesListApplicableOptionalParams - ): PagedAsyncIterableIterator; /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -65,7 +53,7 @@ export interface Schedules { ): Promise; /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param schedule A schedule. @@ -80,7 +68,7 @@ export interface Schedules { ): Promise; /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -93,10 +81,10 @@ export interface Schedules { ): Promise; /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -108,7 +96,7 @@ export interface Schedules { ): Promise; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -121,7 +109,7 @@ export interface Schedules { ): Promise, void>>; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the schedule. * @param options The options parameters. @@ -132,4 +120,17 @@ export interface Schedules { name: string, options?: SchedulesExecuteOptionalParams ): Promise; + /** + * Lists all applicable schedules + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the schedule. + * @param options The options parameters. + */ + listApplicable( + resourceGroupName: string, + labName: string, + name: string, + options?: SchedulesListApplicableOptionalParams + ): Promise; } diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/secrets.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/secrets.ts index d5a77e7a531e..1c256442898a 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/secrets.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/secrets.ts @@ -26,7 +26,7 @@ import { export interface Secrets { /** * List secrets in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -39,7 +39,7 @@ export interface Secrets { ): PagedAsyncIterableIterator; /** * Get secret. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -54,7 +54,7 @@ export interface Secrets { ): Promise; /** * Create or replace an existing secret. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -76,7 +76,7 @@ export interface Secrets { >; /** * Create or replace an existing secret. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -93,7 +93,7 @@ export interface Secrets { ): Promise; /** * Delete secret. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. @@ -108,11 +108,11 @@ export interface Secrets { ): Promise; /** * Allows modifying tags of secrets. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the secret. - * @param secret A secret. + * @param secret Allows modifying tags of secrets. All other properties will be ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabricSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabricSchedules.ts index 0401264b3760..5a9f13c8685e 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabricSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabricSchedules.ts @@ -27,7 +27,7 @@ import { export interface ServiceFabricSchedules { /** * List schedules in a given service fabric. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -42,7 +42,7 @@ export interface ServiceFabricSchedules { ): PagedAsyncIterableIterator; /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -59,7 +59,7 @@ export interface ServiceFabricSchedules { ): Promise; /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -78,7 +78,7 @@ export interface ServiceFabricSchedules { ): Promise; /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -95,12 +95,12 @@ export interface ServiceFabricSchedules { ): Promise; /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -114,7 +114,7 @@ export interface ServiceFabricSchedules { ): Promise; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. @@ -131,7 +131,7 @@ export interface ServiceFabricSchedules { ): Promise, void>>; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param serviceFabricName The name of the service fabric. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabrics.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabrics.ts index 1ee6ffdc9c1e..7cd26f910fb5 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabrics.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceFabrics.ts @@ -30,7 +30,7 @@ import { export interface ServiceFabrics { /** * List service fabrics in a given user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param options The options parameters. @@ -43,7 +43,7 @@ export interface ServiceFabrics { ): PagedAsyncIterableIterator; /** * Get service fabric. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -57,8 +57,8 @@ export interface ServiceFabrics { options?: ServiceFabricsGetOptionalParams ): Promise; /** - * Create or replace an existing service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service Fabric. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -79,8 +79,8 @@ export interface ServiceFabrics { > >; /** - * Create or replace an existing service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service Fabric. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -97,7 +97,7 @@ export interface ServiceFabrics { ): Promise; /** * Delete service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -112,7 +112,7 @@ export interface ServiceFabrics { ): Promise, void>>; /** * Delete service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -127,11 +127,11 @@ export interface ServiceFabrics { ): Promise; /** * Allows modifying tags of service fabrics. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. - * @param serviceFabric A Service Fabric. + * @param serviceFabric Allows modifying tags of service fabrics. All other properties will be ignored. * @param options The options parameters. */ update( @@ -144,7 +144,7 @@ export interface ServiceFabrics { ): Promise; /** * Lists the applicable start/stop schedules, if any. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -159,7 +159,7 @@ export interface ServiceFabrics { ): Promise; /** * Start a service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -174,7 +174,7 @@ export interface ServiceFabrics { ): Promise, void>>; /** * Start a service fabric. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -189,7 +189,7 @@ export interface ServiceFabrics { ): Promise; /** * Stop a service fabric This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. @@ -204,7 +204,7 @@ export interface ServiceFabrics { ): Promise, void>>; /** * Stop a service fabric This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param userName The name of the user profile. * @param name The name of the service fabric. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceRunners.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceRunners.ts index dd50fac2b9e7..ea7b8ce4c717 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceRunners.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/serviceRunners.ts @@ -6,20 +6,35 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; import { + ServiceRunner, + ServiceRunnersListOptionalParams, ServiceRunnersGetOptionalParams, ServiceRunnersGetResponse, - ServiceRunner, ServiceRunnersCreateOrUpdateOptionalParams, ServiceRunnersCreateOrUpdateResponse, ServiceRunnersDeleteOptionalParams } from "../models"; +/// /** Interface representing a ServiceRunners. */ export interface ServiceRunners { + /** + * List service runners in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + options?: ServiceRunnersListOptionalParams + ): PagedAsyncIterableIterator; /** * Get service runner. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param options The options parameters. @@ -31,14 +46,34 @@ export interface ServiceRunners { options?: ServiceRunnersGetOptionalParams ): Promise; /** - * Create or replace an existing service runner. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the service runner. + * @param serviceRunner A container for a managed identity to execute DevTest lab services. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + labName: string, + name: string, + serviceRunner: ServiceRunner, + options?: ServiceRunnersCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ServiceRunnersCreateOrUpdateResponse + > + >; + /** + * Create or replace an existing Service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param serviceRunner A container for a managed identity to execute DevTest lab services. * @param options The options parameters. */ - createOrUpdate( + beginCreateOrUpdateAndWait( resourceGroupName: string, labName: string, name: string, @@ -46,13 +81,26 @@ export interface ServiceRunners { options?: ServiceRunnersCreateOrUpdateOptionalParams ): Promise; /** - * Delete service runner. - * @param resourceGroupName The name of the resource group. + * Delete service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the service runner. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + labName: string, + name: string, + options?: ServiceRunnersDeleteOptionalParams + ): Promise, void>>; + /** + * Delete service runner. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the service runner. * @param options The options parameters. */ - delete( + beginDeleteAndWait( resourceGroupName: string, labName: string, name: string, diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedGalleries.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedGalleries.ts new file mode 100644 index 000000000000..ee7581264d3a --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedGalleries.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + SharedGallery, + SharedGalleriesListOptionalParams, + SharedGalleriesGetOptionalParams, + SharedGalleriesGetResponse, + SharedGalleriesCreateOrUpdateOptionalParams, + SharedGalleriesCreateOrUpdateResponse, + SharedGalleriesDeleteOptionalParams, + SharedGalleryFragment, + SharedGalleriesUpdateOptionalParams, + SharedGalleriesUpdateResponse +} from "../models"; + +/// +/** Interface representing a SharedGalleries. */ +export interface SharedGalleries { + /** + * List shared galleries in a given lab. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + options?: SharedGalleriesListOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + name: string, + options?: SharedGalleriesGetOptionalParams + ): Promise; + /** + * Create or replace an existing Shared Gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param sharedGallery Properties of a shared gallery + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + labName: string, + name: string, + sharedGallery: SharedGallery, + options?: SharedGalleriesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param options The options parameters. + */ + delete( + resourceGroupName: string, + labName: string, + name: string, + options?: SharedGalleriesDeleteOptionalParams + ): Promise; + /** + * Allows modifying tags of shared galleries. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the shared gallery. + * @param sharedGallery Allows modifying tags of shared galleries. All other properties will be + * ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + name: string, + sharedGallery: SharedGalleryFragment, + options?: SharedGalleriesUpdateOptionalParams + ): Promise; +} diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedImages.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedImages.ts new file mode 100644 index 000000000000..e5c786ddd03e --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/sharedImages.ts @@ -0,0 +1,103 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + SharedImage, + SharedImagesListOptionalParams, + SharedImagesGetOptionalParams, + SharedImagesGetResponse, + SharedImagesCreateOrUpdateOptionalParams, + SharedImagesCreateOrUpdateResponse, + SharedImagesDeleteOptionalParams, + SharedImageFragment, + SharedImagesUpdateOptionalParams, + SharedImagesUpdateResponse +} from "../models"; + +/// +/** Interface representing a SharedImages. */ +export interface SharedImages { + /** + * List shared images in a given shared gallery. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + options?: SharedImagesListOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get shared image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + options?: SharedImagesGetOptionalParams + ): Promise; + /** + * Create or replace an existing Shared Image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param sharedImage Properties of a shared image + * @param options The options parameters. + */ + createOrUpdate( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + sharedImage: SharedImage, + options?: SharedImagesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete shared image. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param options The options parameters. + */ + delete( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + options?: SharedImagesDeleteOptionalParams + ): Promise; + /** + * Allows modifying tags of shared images. All other properties will be ignored. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param sharedGalleryName The name of the shared gallery. + * @param name The name of the shared image. + * @param sharedImage Allows modifying tags of shared images. All other properties will be ignored. + * @param options The options parameters. + */ + update( + resourceGroupName: string, + labName: string, + sharedGalleryName: string, + name: string, + sharedImage: SharedImageFragment, + options?: SharedImagesUpdateOptionalParams + ): Promise; +} diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/users.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/users.ts index eb56b674d528..9d5e5742dd7f 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/users.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/users.ts @@ -26,7 +26,7 @@ import { export interface Users { /** * List user profiles in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -37,7 +37,7 @@ export interface Users { ): PagedAsyncIterableIterator; /** * Get user profile. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -50,7 +50,7 @@ export interface Users { ): Promise; /** * Create or replace an existing user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param user Profile of a lab user. @@ -70,7 +70,7 @@ export interface Users { >; /** * Create or replace an existing user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param user Profile of a lab user. @@ -85,7 +85,7 @@ export interface Users { ): Promise; /** * Delete user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -98,7 +98,7 @@ export interface Users { ): Promise, void>>; /** * Delete user profile. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. * @param options The options parameters. @@ -111,10 +111,10 @@ export interface Users { ): Promise; /** * Allows modifying tags of user profiles. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the user profile. - * @param user Profile of a lab user. + * @param user Allows modifying tags of user profiles. All other properties will be ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachineSchedules.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachineSchedules.ts index 60a11b9ede54..2c5186fa8d9a 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachineSchedules.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachineSchedules.ts @@ -27,7 +27,7 @@ import { export interface VirtualMachineSchedules { /** * List schedules in a given virtual machine. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param options The options parameters. @@ -40,7 +40,7 @@ export interface VirtualMachineSchedules { ): PagedAsyncIterableIterator; /** * Get schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -55,7 +55,7 @@ export interface VirtualMachineSchedules { ): Promise; /** * Create or replace an existing schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -72,7 +72,7 @@ export interface VirtualMachineSchedules { ): Promise; /** * Delete schedule. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -87,11 +87,11 @@ export interface VirtualMachineSchedules { ): Promise; /** * Allows modifying tags of schedules. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. - * @param schedule A schedule. + * @param schedule Allows modifying tags of schedules. All other properties will be ignored. * @param options The options parameters. */ update( @@ -104,7 +104,7 @@ export interface VirtualMachineSchedules { ): Promise; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. @@ -119,7 +119,7 @@ export interface VirtualMachineSchedules { ): Promise, void>>; /** * Execute a schedule. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param virtualMachineName The name of the virtual machine. * @param name The name of the schedule. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachines.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachines.ts index 9acd7897af4b..ad3e6d1ebc9b 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachines.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualMachines.ts @@ -9,14 +9,14 @@ import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PollerLike, PollOperationState } from "@azure/core-lro"; import { - LabVirtualMachine, + VirtualMachine, VirtualMachinesListOptionalParams, VirtualMachinesGetOptionalParams, VirtualMachinesGetResponse, VirtualMachinesCreateOrUpdateOptionalParams, VirtualMachinesCreateOrUpdateResponse, VirtualMachinesDeleteOptionalParams, - LabVirtualMachineFragment, + VirtualMachineFragment, VirtualMachinesUpdateOptionalParams, VirtualMachinesUpdateResponse, DataDiskProperties, @@ -24,6 +24,7 @@ import { ApplyArtifactsRequest, VirtualMachinesApplyArtifactsOptionalParams, VirtualMachinesClaimOptionalParams, + VirtualMachinesClearArtifactResultsOptionalParams, DetachDataDiskProperties, VirtualMachinesDetachDataDiskOptionalParams, VirtualMachinesGetRdpFileContentsOptionalParams, @@ -45,7 +46,7 @@ import { export interface VirtualMachines { /** * List virtual machines in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -53,10 +54,10 @@ export interface VirtualMachines { resourceGroupName: string, labName: string, options?: VirtualMachinesListOptionalParams - ): PagedAsyncIterableIterator; + ): PagedAsyncIterableIterator; /** * Get virtual machine. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -68,18 +69,18 @@ export interface VirtualMachines { options?: VirtualMachinesGetOptionalParams ): Promise; /** - * Create or replace an existing virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Virtual machine. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine A virtual machine. * @param options The options parameters. */ beginCreateOrUpdate( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachine, + virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams ): Promise< PollerLike< @@ -88,23 +89,23 @@ export interface VirtualMachines { > >; /** - * Create or replace an existing virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * Create or replace an existing Virtual machine. This operation can take a while to complete. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine A virtual machine. * @param options The options parameters. */ beginCreateOrUpdateAndWait( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachine, + virtualMachine: VirtualMachine, options?: VirtualMachinesCreateOrUpdateOptionalParams ): Promise; /** * Delete virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -117,7 +118,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Delete virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -130,22 +131,23 @@ export interface VirtualMachines { ): Promise; /** * Allows modifying tags of virtual machines. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. - * @param labVirtualMachine A virtual machine. + * @param virtualMachine Allows modifying tags of virtual machines. All other properties will be + * ignored. * @param options The options parameters. */ update( resourceGroupName: string, labName: string, name: string, - labVirtualMachine: LabVirtualMachineFragment, + virtualMachine: VirtualMachineFragment, options?: VirtualMachinesUpdateOptionalParams ): Promise; /** * Attach a new or existing data disk to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param dataDiskProperties Request body for adding a new or existing data disk to a virtual machine. @@ -160,7 +162,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Attach a new or existing data disk to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param dataDiskProperties Request body for adding a new or existing data disk to a virtual machine. @@ -175,7 +177,7 @@ export interface VirtualMachines { ): Promise; /** * Apply artifacts to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param applyArtifactsRequest Request body for applying artifacts to a virtual machine. @@ -190,7 +192,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Apply artifacts to virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param applyArtifactsRequest Request body for applying artifacts to a virtual machine. @@ -205,7 +207,7 @@ export interface VirtualMachines { ): Promise; /** * Take ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -218,7 +220,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Take ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -229,9 +231,22 @@ export interface VirtualMachines { name: string, options?: VirtualMachinesClaimOptionalParams ): Promise; + /** + * Clears the artifact results of the virtual machine. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param labName The name of the lab. + * @param name The name of the virtual machine. + * @param options The options parameters. + */ + clearArtifactResults( + resourceGroupName: string, + labName: string, + name: string, + options?: VirtualMachinesClearArtifactResultsOptionalParams + ): Promise; /** * Detach the specified disk from the virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param detachDataDiskProperties Request body for detaching data disk from a virtual machine. @@ -246,7 +261,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Detach the specified disk from the virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param detachDataDiskProperties Request body for detaching data disk from a virtual machine. @@ -261,7 +276,7 @@ export interface VirtualMachines { ): Promise; /** * Gets a string that represents the contents of the RDP file for the virtual machine - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -274,7 +289,7 @@ export interface VirtualMachines { ): Promise; /** * Lists the applicable start/stop schedules, if any. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -287,7 +302,7 @@ export interface VirtualMachines { ): Promise; /** * Redeploy a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -300,7 +315,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Redeploy a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -313,7 +328,7 @@ export interface VirtualMachines { ): Promise; /** * Resize Virtual Machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param resizeLabVirtualMachineProperties Request body for resizing a virtual machine. @@ -328,7 +343,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Resize Virtual Machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param resizeLabVirtualMachineProperties Request body for resizing a virtual machine. @@ -343,7 +358,7 @@ export interface VirtualMachines { ): Promise; /** * Restart a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -356,7 +371,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Restart a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -369,7 +384,7 @@ export interface VirtualMachines { ): Promise; /** * Start a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -382,7 +397,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Start a virtual machine. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -395,7 +410,7 @@ export interface VirtualMachines { ): Promise; /** * Stop a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -408,7 +423,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Stop a virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -422,7 +437,7 @@ export interface VirtualMachines { /** * Transfers all data disks attached to the virtual machine to be owned by the current user. This * operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -436,7 +451,7 @@ export interface VirtualMachines { /** * Transfers all data disks attached to the virtual machine to be owned by the current user. This * operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -449,7 +464,7 @@ export interface VirtualMachines { ): Promise; /** * Release ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. @@ -462,7 +477,7 @@ export interface VirtualMachines { ): Promise, void>>; /** * Release ownership of an existing virtual machine This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual machine. * @param options The options parameters. diff --git a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualNetworks.ts b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualNetworks.ts index ef1e193405bc..8d4b8e8dfc33 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualNetworks.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/operationsInterfaces/virtualNetworks.ts @@ -26,7 +26,7 @@ import { export interface VirtualNetworks { /** * List virtual networks in a given lab. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param options The options parameters. */ @@ -37,7 +37,7 @@ export interface VirtualNetworks { ): PagedAsyncIterableIterator; /** * Get virtual network. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -50,7 +50,7 @@ export interface VirtualNetworks { ): Promise; /** * Create or replace an existing virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param virtualNetwork A virtual network. @@ -70,7 +70,7 @@ export interface VirtualNetworks { >; /** * Create or replace an existing virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param virtualNetwork A virtual network. @@ -85,7 +85,7 @@ export interface VirtualNetworks { ): Promise; /** * Delete virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -98,7 +98,7 @@ export interface VirtualNetworks { ): Promise, void>>; /** * Delete virtual network. This operation can take a while to complete. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. * @param options The options parameters. @@ -111,10 +111,11 @@ export interface VirtualNetworks { ): Promise; /** * Allows modifying tags of virtual networks. All other properties will be ignored. - * @param resourceGroupName The name of the resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param labName The name of the lab. * @param name The name of the virtual network. - * @param virtualNetwork A virtual network. + * @param virtualNetwork Allows modifying tags of virtual networks. All other properties will be + * ignored. * @param options The options parameters. */ update( diff --git a/sdk/devtestlabs/arm-devtestlabs/test/sampleTest.ts b/sdk/devtestlabs/arm-devtestlabs/test/sampleTest.ts new file mode 100644 index 000000000000..7ed89b043e1b --- /dev/null +++ b/sdk/devtestlabs/arm-devtestlabs/test/sampleTest.ts @@ -0,0 +1,48 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + env, + record, + RecorderEnvironmentSetup, + Recorder +} from "@azure-tools/test-recorder"; +import * as assert from "assert"; + +const recorderEnvSetup: RecorderEnvironmentSetup = { + replaceableVariables: { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" + }, + customizationsOnRecordings: [ + (recording: any): any => + recording.replace( + /"access_token":"[^"]*"/g, + `"access_token":"access_token"` + ) + ], + queryParametersToSkip: [] +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function() { + recorder = record(this, recorderEnvSetup); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +});