@@ -58,39 +58,53 @@ directive:
5858 # 1. Remove the unexpanded parameter set
5959 # 2. For New-* cmdlets, ViaIdentity is not required, so CreateViaIdentityExpanded is removed as well
6060 - where :
61- variant : ^Create$|^CreateViaIdentity$|^CreateViaIdentityExpanded$
61+ variant : ^( Create)(?!.*?(Expanded|JsonFilePath|JsonString))
6262 remove : true
63- # Remove the set-* cmdlet
6463 - where :
65- verb : Set
64+ variant : ^CreateViaIdentityExpanded$
6665 remove : true
67-
68- # To remove non-expanded update variants:
66+ # Remove the set-* cmdlet
6967 - where :
70- variant : ^Update(?!.*?Expanded)
68+ verb : Set
7169 remove : true
7270
73- # 1. Field 'identity' is required => IdentityType and IdentityUserAssignedIdentity are required
74- # 2. Hide IdentityType as only 'UserAssigned' is valid value so far
75- # 3. Wrap UserAssignedIdentity with UserAssignedIdentityId to simplify customer's input
76- # 4. Field 'properties' is required => Source, Customize and Distribute are required
77- # Rename IdentityUserAssignedIdentity to UserAssignedIdentity
78- - where :
79- parameter-name : IdentityUserAssignedIdentity
80- set :
81- parameter-name : UserAssignedIdentity
82-
8371 # Rename *-AzImageBuildVirtualMachineImage(.*) -> *-AzImageBuild(.*)
8472 - where :
8573 subject : (.*)Image(.*)
8674 set :
8775 subject : $2
8876
77+ # Add required for template
78+ # - from: swagger-document
79+ # where: $.definitions.ImageTemplate
80+ # transform: $['required'] = ["identity","properties"]
81+ # - from: swagger-document
82+ # where: $.definitions.ImageTemplateProperties
83+ # transform: $['required'] = ["source","distribute","customize"]
84+ # Customize New-AzImageBuilderTemplate, remove parameter EnableSystemAssignedIdentity
8985 - where :
9086 subject : Template
9187 variant : ^CreateExpanded$
9288 hide : true
9389
90+ # To remove update for Trigger since there is no properties
91+ - where :
92+ subject : Trigger
93+ verb : Update
94+ remove : true
95+ # Remove Update [Update template not support](https://learn.microsoft.com/en-us/azure/virtual-machines/linux/image-builder-troubleshoot#update-or-upgrade-of-image-templates-is-currently-not-supported)
96+ - where :
97+ subject : Template
98+ verb : Update
99+ remove : true
100+
101+ # Rename JsonTemplatePath -> JsonFilePath and keep JsonTemplatePath as alias in New-AzImageBuildTemplate
102+ - where :
103+ subject : Template
104+ parameter-name : JsonFilePath
105+ set :
106+ alias : JsonTemplatePath
107+
94108 # Rename ImageTemplateName -> Name and keep ImageTemplateName as alias in *-AzImageBuildTemplate
95109 - where :
96110 subject : Template
@@ -148,35 +162,32 @@ directive:
148162 - ResourceGroupName
149163
150164 # Generate models and combine them as 1 cmdlet
151- # - model-cmdlet:
152- # ########### ImageTemplateCustomizer ############
153- # # Combine as 1 cmdlet named New-AzImageBuilderTemplateCustomizerObject
154- # - ImageTemplateCustomizer
155- # - ImageTemplateShellCustomizer
156- # - ImageTemplateRestartCustomizer
157- # - ImageTemplateWindowsUpdateCustomizer
158- # - ImageTemplatePowerShellCustomizer
159- # - ImageTemplateFileCustomizer
160- # ########## ImageTemplateDistributor ###########
161- # # Combine as 1 cmdlet named New-AzImageBuilderTemplateDistributorObject
162- # - ImageTemplateDistributor
163- # - ImageTemplateManagedImageDistributor
164- # - ImageTemplateSharedImageDistributor
165- # - ImageTemplateVhdDistributor
166- # ############# ImageTemplateSource ##############
167- # # Combine as 1 cmdlet named New-AzImageBuilderTemplateSourceObject
168- # - ImageTemplateSource
169- # # Note: publisher, offer, sku and version are required
170- # - ImageTemplatePlatformImageSource
171- # - ImageTemplateManagedImageSource
172- # - ImageTemplateSharedImageVersionSource
173- # ########## ImageTemplateInVMValidator ###########
174- # # Combine as 1 cmdlet named New-AzImageBuilderTemplateValidatorObject
175- # - ImageTemplateInVMValidator
176- # - ImageTemplateShellValidator
177- # - ImageTemplatePowerShellValidator
178- # ########## AzImageBuilderTemplateDistributorVersioning ###########
179- # - DistributeVersioner
180- # - DistributeVersionerLatest
181- # - DistributeVersionerSource
165+ - model-cmdlet :
166+ # ########## ImageTemplateCustomizer ############
167+ # Combine as 1 cmdlet named New-AzImageBuilderTemplateCustomizerObject
168+ # - model-name: ImageTemplateShellCustomizer
169+ # - model-name: ImageTemplateRestartCustomizer
170+ # - model-name: ImageTemplateWindowsUpdateCustomizer
171+ # - model-name: ImageTemplatePowerShellCustomizer
172+ # - model-name: ImageTemplateFileCustomizer
173+ # ######### ImageTemplateDistributor ###########
174+ # Combine as 1 cmdlet named New-AzImageBuilderTemplateDistributorObject
175+ # - model-name: ImageTemplateManagedImageDistributor
176+ # - model-name: ImageTemplateSharedImageDistributor
177+ # - model-name: ImageTemplateVhdDistributor
178+ # ############ ImageTemplateSource ##############
179+ # Combine as 1 cmdlet named New-AzImageBuilderTemplateSourceObject
180+ # Note: publisher, offer, sku and version are required
181+ # - model-name: ImageTemplatePlatformImageSource
182+ # - model-name: ImageTemplateManagedImageSource
183+ # - model-name: ImageTemplateSharedImageVersionSource
184+ # ######### ImageTemplateInVMValidator ###########
185+ # Combine as 1 cmdlet named New-AzImageBuilderTemplateValidatorObject
186+ # - model-name: ImageTemplateShellValidator
187+ # - model-name: ImageTemplatePowerShellValidator
188+ # ######### AzImageBuilderTemplateDistributorVersioning parent model name: DistributeVersioner ###########
189+ - model-name : DistributeVersionerLatest
190+ cmdlet-name : New-AzImageBuilderTemplateDistributeVersionerLatestObject
191+ - model-name : DistributeVersionerSource
192+ cmdlet-name : New-AzImageBuilderTemplateDistributeVersionerSourceObject
182193` ` `
0 commit comments