From 3e481ff69188d8f9ac76908d8118dc3ecd304c18 Mon Sep 17 00:00:00 2001 From: larisaborodina Date: Wed, 6 Oct 2021 13:15:59 -0700 Subject: [PATCH 1/5] All Configuration related commandlet should take parameter name as Name and not ConfigurationName --- .../Get-AzsContainerRegistryConfiguration.md | 34 +++++++-------- ...emove-AzsContainerRegistryConfiguration.md | 34 +++++++-------- .../Set-AzsContainerRegistryConfiguration.md | 41 +++++++++---------- src/Azs.ContainerRegistry.Admin/readme.md | 13 ++++-- ...zsContainerRegistryConfiguration.Tests.ps1 | 4 +- ...zsContainerRegistryConfiguration.Tests.ps1 | 4 +- 6 files changed, 68 insertions(+), 62 deletions(-) diff --git a/src/Azs.ContainerRegistry.Admin/docs/Get-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Get-AzsContainerRegistryConfiguration.md index 27e67418..c9a21130 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Get-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Get-AzsContainerRegistryConfiguration.md @@ -20,8 +20,8 @@ Get-AzsContainerRegistryConfiguration [-Location ] [-SubscriptionId [-Location ] - [-SubscriptionId ] [-DefaultProfile ] [] +Get-AzsContainerRegistryConfiguration -Name [-Location ] [-SubscriptionId ] + [-DefaultProfile ] [] ``` ### GetViaIdentity @@ -51,21 +51,6 @@ Returns the specified configuration details. ## PARAMETERS -### -ConfigurationName -The name of the configuration. - -```yaml -Type: System.String -Parameter Sets: Get -Aliases: - -Required: True -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -DefaultProfile The credentials, account, tenant, and subscription used for communication with Azure. @@ -112,6 +97,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Name +The name of the configuration. + +```yaml +Type: System.String +Parameter Sets: Get +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -SubscriptionId The ID of the target subscription. diff --git a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md index 28c12f0f..3bd74932 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md @@ -14,8 +14,8 @@ Delete an existing container registry configuration ### Delete (Default) ``` -Remove-AzsContainerRegistryConfiguration -ConfigurationName [-Location ] - [-SubscriptionId ] [-DefaultProfile ] [-PassThru] [-Confirm] [-WhatIf] [] +Remove-AzsContainerRegistryConfiguration -Name [-Location ] [-SubscriptionId ] + [-DefaultProfile ] [-PassThru] [-Confirm] [-WhatIf] [] ``` ### DeleteViaIdentity @@ -39,21 +39,6 @@ Delete an existing container registry configuration. ## PARAMETERS -### -ConfigurationName -The name of the configuration. - -```yaml -Type: System.String -Parameter Sets: Delete -Aliases: - -Required: True -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -DefaultProfile The credentials, account, tenant, and subscription used for communication with Azure. @@ -100,6 +85,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Name +The name of the configuration. + +```yaml +Type: System.String +Parameter Sets: Delete +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -PassThru Returns true when the command succeeds diff --git a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md index 64a624e8..658efe90 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md @@ -14,16 +14,15 @@ Configure container registry overall configuration properties. ### PutExpanded (Default) ``` -Set-AzsContainerRegistryConfiguration -ConfigurationName [-Location ] - [-SubscriptionId ] [-MaximumCapacityInGiB ] [-DefaultProfile ] [-Confirm] [-WhatIf] - [] +Set-AzsContainerRegistryConfiguration -Name [-Location ] [-SubscriptionId ] + [-MaximumCapacityInGiB ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] ``` ### Put ``` -Set-AzsContainerRegistryConfiguration -ConfigurationName - -ConfigurationObject [-Location ] [-SubscriptionId ] - [-DefaultProfile ] [-Confirm] [-WhatIf] [] +Set-AzsContainerRegistryConfiguration -Name -ConfigurationObject + [-Location ] [-SubscriptionId ] [-DefaultProfile ] [-Confirm] [-WhatIf] + [] ``` ## DESCRIPTION @@ -47,21 +46,6 @@ Configure container registry overall configuration properties. ## PARAMETERS -### -ConfigurationName -The name of the configuration. - -```yaml -Type: System.String -Parameter Sets: (All) -Aliases: - -Required: True -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -ConfigurationObject Container registry configuration property. To construct, see NOTES section for CONFIGURATIONOBJECT properties and create a hash table. @@ -123,6 +107,21 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -Name +The name of the configuration. + +```yaml +Type: System.String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -SubscriptionId The ID of the target subscription. diff --git a/src/Azs.ContainerRegistry.Admin/readme.md b/src/Azs.ContainerRegistry.Admin/readme.md index 749479ca..40115c31 100644 --- a/src/Azs.ContainerRegistry.Admin/readme.md +++ b/src/Azs.ContainerRegistry.Admin/readme.md @@ -95,7 +95,14 @@ directive: set: default: script: '20' - + + # Rename cmdlet parameter name in ContainerRegistryConfiguration + - where: + subject: ContainerRegistryConfiguration + parameter-name: ConfigurationName + set: + parameter-name: Name + # Rename cmdlet parameter name in ContainerRegistrySetup - where: subject: ContainerRegistrySetup @@ -109,7 +116,7 @@ directive: property-name: NumberOfRegistry set: property-name: NumberOfRegistries - + # Hide the auto-generated New-AzsContainerRegistryQuota and expose it through customized one - where: verb: New @@ -121,7 +128,7 @@ directive: verb: Set subject: Quota hide: true - + # Add release notes - from: Azs.ContainerRegistry.Admin.nuspec where: $ diff --git a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 index 553780be..bd84aa6e 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 @@ -17,10 +17,10 @@ Describe 'Remove-AzsContainerRegistryConfiguration' { $maxCapacityInGib = (Get-AzsContainerRegistryConfiguration ).MaximumCapacityInGib $targetCapacityInGib = 0 - Remove-AzsContainerRegistryConfiguration -ConfigurationName default + Remove-AzsContainerRegistryConfiguration -Name default $result = Get-AzsContainerRegistryConfiguration $result | Should Not Be $null $result.MaximumCapacityInGib | Should Be $targetCapacityInGib - Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -ConfigurationName default + Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -Name default } } diff --git a/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 index 42aeb4ff..fd190f30 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 @@ -17,9 +17,9 @@ Describe 'Set-AzsContainerRegistryConfiguration' { $maxCapacityInGib = (Get-AzsContainerRegistryConfiguration ).MaximumCapacityInGib $targetCapacityInGib = $originalDays + 1 - $result = Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $targetCapacityInGib -ConfigurationName default + $result = Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $targetCapacityInGib -Name default $result | Should Not Be $null $result.MaximumCapacityInGib | Should Be $targetCapacityInGib - Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -ConfigurationName default + Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -Name default } } From 443dfbdfc40b0a7fcb8a7a049750599376e7cafd Mon Sep 17 00:00:00 2001 From: larisaborodina Date: Wed, 6 Oct 2021 17:34:48 -0700 Subject: [PATCH 2/5] Set-AzsContainerRegistryConfiguration should not make ConfigurationName as mandatory it should internally used default as value --- .../Start-AzsContainerRegistrySetup.ps1 | 214 ++++++++++++++++++ ...emove-AzsContainerRegistryConfiguration.md | 8 +- .../Set-AzsContainerRegistryConfiguration.md | 14 +- .../docs/Start-AzsContainerRegistrySetup.md | 46 ++-- ...emove-AzsContainerRegistryConfiguration.md | 2 +- .../Set-AzsContainerRegistryConfiguration.md | 2 +- .../Start-AzsContainerRegistrySetup.md | 6 +- src/Azs.ContainerRegistry.Admin/readme.md | 22 +- ...zsContainerRegistryConfiguration.Tests.ps1 | 4 +- ...zsContainerRegistryConfiguration.Tests.ps1 | 4 +- .../Start-AzsContainerRegistrySetup.Tests.ps1 | 2 +- 11 files changed, 280 insertions(+), 44 deletions(-) create mode 100644 src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 diff --git a/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 b/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 new file mode 100644 index 00000000..4ff5a8b5 --- /dev/null +++ b/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 @@ -0,0 +1,214 @@ + +# ---------------------------------------------------------------------------------- +# +# Copyright Microsoft Corporation +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# http://www.apache.org/licenses/LICENSE-2.0 +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ---------------------------------------------------------------------------------- + +<# +.Synopsis +Invokes container registry certificate uploading and service deployment. +.Description +Invokes container registry certificate uploading and service deployment. +.Example +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json + +{ + "Id": "/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Setup/locations/redmond/setup/value", + "Name": "redmond/value", + "StatusUri": "https://containerregistrysetup.ascu.azs:4335/providers/Microsoft.ContainerRegistry.Setup/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Setup/locations/redmond/setup?api-version=2019-11-01-preview", + "Type": "Microsoft.ContainerRegistry.Setup/locations/setup" +} +.Example +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json + +Start-AzsContainerRegistrySetup : Container registry deployment is still running. It is not allowed to repeat deployment at this stage. +At line:1 char:1 ++ Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile ... ++ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + CategoryInfo : InvalidOperation: ({ SubscriptionI...SetupProperty }:<>f__AnonymousType7`3) [Start-AzsContai...p_StartExpanded], Exception + + FullyQualifiedErrorId : AcrDeploymentStillRunning,Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Cmdlets.StartAzsContainerRegistrySetup_StartExpanded + +.Inputs +Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.Api20191101Preview.IContainerRegistrySetupProperty +.Inputs +Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.IContainerRegistryAdminIdentity +.Outputs +Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.Api20191101Preview.IContainerRegistrySetup +.Notes +COMPLEX PARAMETER PROPERTIES + +To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. + +INPUTOBJECT : Identity Parameter + [CapacityName ]: The name of the capacity parameter. + [ConfigurationName ]: The name of the configuration. + [Id ]: Resource identity path + [Location ]: The name of Azure region. + [QuotaName ]: The name of the container registry quota. + [SubscriptionId ]: The ID of the target subscription. + +STARTSETUPREQUEST : Container registry setup properties. + [Password ]: Ssl certificate password. + [SslCertBase64 ]: Ssl certificate in base64 format. +.Link +https://docs.microsoft.com/en-us/powershell/module/azs.containerregistry.admin/start-azscontainerregistrysetup +#> +function Start-AzsContainerRegistrySetup { +[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.Api20191101Preview.IContainerRegistrySetup])] +[CmdletBinding(DefaultParameterSetName='StartExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')] +param( + [Parameter(ParameterSetName='Start')] + [Parameter(ParameterSetName='StartExpanded')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Path')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Runtime.DefaultInfo(Script='(Get-AzLocation)[0].Location')] + [System.String] + # The name of Azure region. + ${Location}, + + [Parameter(ParameterSetName='Start')] + [Parameter(ParameterSetName='StartExpanded')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Path')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')] + [System.String] + # The ID of the target subscription. + ${SubscriptionId}, + + [Parameter(ParameterSetName='StartViaIdentity', Mandatory, ValueFromPipeline)] + [Parameter(ParameterSetName='StartViaIdentityExpanded', Mandatory, ValueFromPipeline)] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Path')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.IContainerRegistryAdminIdentity] + # Identity Parameter + # To construct, see NOTES section for INPUTOBJECT properties and create a hash table. + ${InputObject}, + + [Parameter(ParameterSetName='Start', Mandatory, ValueFromPipeline)] + [Parameter(ParameterSetName='StartViaIdentity', Mandatory, ValueFromPipeline)] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Body')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.Api20191101Preview.IContainerRegistrySetupProperty] + # Container registry setup properties. + # To construct, see NOTES section for STARTSETUPREQUEST properties and create a hash table. + ${StartSetupRequest}, + + [Parameter(ParameterSetName='StartExpanded')] + [Parameter(ParameterSetName='StartViaIdentityExpanded')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Body')] + [System.String] + # Input File for Certificate (Ssl certificate in base64 format.) + ${CertificateInputFile}, + + [Parameter(ParameterSetName='StartExpanded')] + [Parameter(ParameterSetName='StartViaIdentityExpanded')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Body')] + [System.Security.SecureString] + # Ssl certificate password. + ${Password}, + + [Parameter()] + [Alias('AzureRMContext', 'AzureCredential')] + [ValidateNotNull()] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Azure')] + [System.Management.Automation.PSObject] + # The credentials, account, tenant, and subscription used for communication with Azure. + ${DefaultProfile}, + + [Parameter(DontShow)] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [System.Management.Automation.SwitchParameter] + # Wait for .NET debugger to attach + ${Break}, + + [Parameter(DontShow)] + [ValidateNotNull()] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Runtime.SendAsyncStep[]] + # SendAsync Pipeline Steps to be appended to the front of the pipeline + ${HttpPipelineAppend}, + + [Parameter(DontShow)] + [ValidateNotNull()] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Runtime.SendAsyncStep[]] + # SendAsync Pipeline Steps to be prepended to the front of the pipeline + ${HttpPipelinePrepend}, + + [Parameter(DontShow)] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [System.Uri] + # The URI for the proxy server to use + ${Proxy}, + + [Parameter(DontShow)] + [ValidateNotNull()] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [System.Management.Automation.PSCredential] + # Credentials for a proxy server to use for the remote call + ${ProxyCredential}, + + [Parameter(DontShow)] + [Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Category('Runtime')] + [System.Management.Automation.SwitchParameter] + # Use the default credentials for the proxy + ${ProxyUseDefaultCredentials} +) + +begin { + try { + $outBuffer = $null + if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) { + $PSBoundParameters['OutBuffer'] = 1 + } + $parameterSet = $PSCmdlet.ParameterSetName + $mapping = @{ + Start = 'Azs.ContainerRegistry.Admin.private\Start-AzsContainerRegistrySetup_Start'; + StartExpanded = 'Azs.ContainerRegistry.Admin.private\Start-AzsContainerRegistrySetup_StartExpanded'; + StartViaIdentity = 'Azs.ContainerRegistry.Admin.private\Start-AzsContainerRegistrySetup_StartViaIdentity'; + StartViaIdentityExpanded = 'Azs.ContainerRegistry.Admin.private\Start-AzsContainerRegistrySetup_StartViaIdentityExpanded'; + } + if (('Start', 'StartExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('Location')) { + $PSBoundParameters['Location'] = (Get-AzLocation)[0].Location + } + if (('Start', 'StartExpanded') -contains $parameterSet -and -not $PSBoundParameters.ContainsKey('SubscriptionId')) { + $PSBoundParameters['SubscriptionId'] = (Get-AzContext).Subscription.Id + } + $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet) + $scriptCmd = {& $wrappedCmd @PSBoundParameters} + $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin) + $steppablePipeline.Begin($PSCmdlet) + } catch { + throw + } +} + +process { + + if ($PSBoundParameters.ContainsKey(('CertificateInputFile'))) + { + if (!(Test-Path -Path $CertificateInputFile -PathType Leaf)) + { + throw "The specified ssl cert $CertificateInputFile does not exist." + } + + if ([IO.Path]::GetExtension($CertificateInputFile) -ne ".pfx" ) + { + throw "The specified file $CertificateInputFile is not cert with private key." + } + } +} + +end { + try { + $steppablePipeline.End() + } catch { + throw + } +} +} diff --git a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md index 3bd74932..fd55234c 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md @@ -14,7 +14,7 @@ Delete an existing container registry configuration ### Delete (Default) ``` -Remove-AzsContainerRegistryConfiguration -Name [-Location ] [-SubscriptionId ] +Remove-AzsContainerRegistryConfiguration [-Location ] [-Name ] [-SubscriptionId ] [-DefaultProfile ] [-PassThru] [-Confirm] [-WhatIf] [] ``` @@ -31,7 +31,7 @@ Delete an existing container registry configuration ### Example 1: Remove Azs ContainerRegistry Configuration ```powershell -PS C:\> Remove-AzsContainerRegistryConfiguration -ConfigurationName default +PS C:\> Remove-AzsContainerRegistryConfiguration ``` @@ -93,9 +93,9 @@ Type: System.String Parameter Sets: Delete Aliases: -Required: True +Required: False Position: Named -Default value: None +Default value: Write-Output "default" Accept pipeline input: False Accept wildcard characters: False ``` diff --git a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md index 658efe90..e1e975c9 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md @@ -14,15 +14,15 @@ Configure container registry overall configuration properties. ### PutExpanded (Default) ``` -Set-AzsContainerRegistryConfiguration -Name [-Location ] [-SubscriptionId ] +Set-AzsContainerRegistryConfiguration [-Location ] [-Name ] [-SubscriptionId ] [-MaximumCapacityInGiB ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] ``` ### Put ``` -Set-AzsContainerRegistryConfiguration -Name -ConfigurationObject - [-Location ] [-SubscriptionId ] [-DefaultProfile ] [-Confirm] [-WhatIf] - [] +Set-AzsContainerRegistryConfiguration -ConfigurationObject + [-Location ] [-Name ] [-SubscriptionId ] [-DefaultProfile ] [-Confirm] + [-WhatIf] [] ``` ## DESCRIPTION @@ -32,7 +32,7 @@ Configure container registry overall configuration properties. ### Example 1: Set Azs ContainerRegistry Configuration ```powershell -PS C:\> Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib 30 -ConfigurationName default | ConvertTo-Json +PS C:\> Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib 30 | ConvertTo-Json { "Id": "/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/Default", @@ -115,9 +115,9 @@ Type: System.String Parameter Sets: (All) Aliases: -Required: True +Required: False Position: Named -Default value: None +Default value: Write-Output "default" Accept pipeline input: False Accept wildcard characters: False ``` diff --git a/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md b/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md index ff12d24c..5026bbdd 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md @@ -14,8 +14,9 @@ Invokes container registry certificate uploading and service deployment. ### StartExpanded (Default) ``` -Start-AzsContainerRegistrySetup [-Location ] [-SubscriptionId ] [-Password ] - [-SslCertInputFile ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] +Start-AzsContainerRegistrySetup [-Location ] [-SubscriptionId ] + [-CertificateInputFile ] [-Password ] [-DefaultProfile ] [-Confirm] [-WhatIf] + [] ``` ### Start @@ -33,8 +34,9 @@ Start-AzsContainerRegistrySetup -InputObject ### StartViaIdentityExpanded ``` -Start-AzsContainerRegistrySetup -InputObject [-Password ] - [-SslCertInputFile ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] +Start-AzsContainerRegistrySetup -InputObject + [-CertificateInputFile ] [-Password ] [-DefaultProfile ] [-Confirm] [-WhatIf] + [] ``` ## DESCRIPTION @@ -44,7 +46,7 @@ Invokes container registry certificate uploading and service deployment. ### Example 1: Start Azs ContainerRegistry Setup ```powershell -PS C:\> Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile $pfx_cert_path | ConvertTo-Json +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json { "Id": "/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Setup/locations/redmond/setup/value", @@ -58,11 +60,11 @@ Invokes container registry certificate uploading and service deployment. ### Example 2: Start Azs ContainerRegistry Setup when another instance of Setup is already started ```powershell -PS C:\> Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile $pfx_cert_path | ConvertTo-Json +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json Start-AzsContainerRegistrySetup : Container registry deployment is still running. It is not allowed to repeat deployment at this stage. At line:1 char:1 -+ Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile ... ++ Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: ({ SubscriptionI...SetupProperty }:<>f__AnonymousType7`3) [Start-AzsContai...p_StartExpanded], Exception + FullyQualifiedErrorId : AcrDeploymentStillRunning,Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Cmdlets.StartAzsContainerRegistrySetup_StartExpanded @@ -72,6 +74,21 @@ Returns the error if another instance of Setup is already started. ## PARAMETERS +### -CertificateInputFile +Input File for Certificate (Ssl certificate in base64 format.) + +```yaml +Type: System.String +Parameter Sets: StartExpanded, StartViaIdentityExpanded +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -DefaultProfile The credentials, account, tenant, and subscription used for communication with Azure. @@ -133,21 +150,6 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -SslCertInputFile -Input File for SslCert (Ssl certificate in base64 format.) - -```yaml -Type: System.String -Parameter Sets: StartExpanded, StartViaIdentityExpanded -Aliases: - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -StartSetupRequest Container registry setup properties. To construct, see NOTES section for STARTSETUPREQUEST properties and create a hash table. diff --git a/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md index 86bb1fa0..2d667a50 100644 --- a/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md @@ -1,6 +1,6 @@ ### Example 1: Remove Azs ContainerRegistry Configuration ```powershell -PS C:\> Remove-AzsContainerRegistryConfiguration -ConfigurationName default +PS C:\> Remove-AzsContainerRegistryConfiguration ``` diff --git a/src/Azs.ContainerRegistry.Admin/examples/Set-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/examples/Set-AzsContainerRegistryConfiguration.md index 4ffb68b4..ba435e9e 100644 --- a/src/Azs.ContainerRegistry.Admin/examples/Set-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/examples/Set-AzsContainerRegistryConfiguration.md @@ -1,6 +1,6 @@ ### Example 1: Set Azs ContainerRegistry Configuration ```powershell -PS C:\> Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib 30 -ConfigurationName default | ConvertTo-Json +PS C:\> Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib 30 | ConvertTo-Json { "Id": "/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/Default", diff --git a/src/Azs.ContainerRegistry.Admin/examples/Start-AzsContainerRegistrySetup.md b/src/Azs.ContainerRegistry.Admin/examples/Start-AzsContainerRegistrySetup.md index 6e5cf40c..fe9cca7d 100644 --- a/src/Azs.ContainerRegistry.Admin/examples/Start-AzsContainerRegistrySetup.md +++ b/src/Azs.ContainerRegistry.Admin/examples/Start-AzsContainerRegistrySetup.md @@ -1,6 +1,6 @@ ### Example 1: Start Azs ContainerRegistry Setup ```powershell -PS C:\> Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile $pfx_cert_path | ConvertTo-Json +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json { "Id": "/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Setup/locations/redmond/setup/value", @@ -14,11 +14,11 @@ Invokes container registry certificate uploading and service deployment. ### Example 2: Start Azs ContainerRegistry Setup when another instance of Setup is already started ```powershell -PS C:\> Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile $pfx_cert_path | ConvertTo-Json +PS C:\> Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path | ConvertTo-Json Start-AzsContainerRegistrySetup : Container registry deployment is still running. It is not allowed to repeat deployment at this stage. At line:1 char:1 -+ Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile ... ++ Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: ({ SubscriptionI...SetupProperty }:<>f__AnonymousType7`3) [Start-AzsContai...p_StartExpanded], Exception + FullyQualifiedErrorId : AcrDeploymentStillRunning,Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Cmdlets.StartAzsContainerRegistrySetup_StartExpanded diff --git a/src/Azs.ContainerRegistry.Admin/readme.md b/src/Azs.ContainerRegistry.Admin/readme.md index 40115c31..35129596 100644 --- a/src/Azs.ContainerRegistry.Admin/readme.md +++ b/src/Azs.ContainerRegistry.Admin/readme.md @@ -102,13 +102,27 @@ directive: parameter-name: ConfigurationName set: parameter-name: Name + - where: + verb: Remove + subject: ContainerRegistryConfiguration + parameter-name: Name + set: + default: + script: Write-Output "default" + - where: + verb: Set + subject: ContainerRegistryConfiguration + parameter-name: Name + set: + default: + script: Write-Output "default" # Rename cmdlet parameter name in ContainerRegistrySetup - where: subject: ContainerRegistrySetup parameter-name: SslCertBase64 set: - parameter-name: SslCert + parameter-name: Certificate # Rename model property names - where: @@ -128,6 +142,12 @@ directive: verb: Set subject: Quota hide: true + + # Hide the auto-generated Start-AzsContainerRegistrySetup and expose it through customized one + - where: + verb: Start + subject: ContainerRegistrySetup + hide: true # Add release notes - from: Azs.ContainerRegistry.Admin.nuspec diff --git a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 index bd84aa6e..0fab8b0e 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 @@ -17,10 +17,10 @@ Describe 'Remove-AzsContainerRegistryConfiguration' { $maxCapacityInGib = (Get-AzsContainerRegistryConfiguration ).MaximumCapacityInGib $targetCapacityInGib = 0 - Remove-AzsContainerRegistryConfiguration -Name default + Remove-AzsContainerRegistryConfiguration $result = Get-AzsContainerRegistryConfiguration $result | Should Not Be $null $result.MaximumCapacityInGib | Should Be $targetCapacityInGib - Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -Name default + Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib } } diff --git a/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 index fd190f30..6fdea608 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Set-AzsContainerRegistryConfiguration.Tests.ps1 @@ -17,9 +17,9 @@ Describe 'Set-AzsContainerRegistryConfiguration' { $maxCapacityInGib = (Get-AzsContainerRegistryConfiguration ).MaximumCapacityInGib $targetCapacityInGib = $originalDays + 1 - $result = Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $targetCapacityInGib -Name default + $result = Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $targetCapacityInGib $result | Should Not Be $null $result.MaximumCapacityInGib | Should Be $targetCapacityInGib - Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib -Name default + Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib } } diff --git a/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 index 7b536228..c8ee6142 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 @@ -15,5 +15,5 @@ Describe 'Start-AzsContainerRegistrySetup' { $password = ConvertTo-SecureString "password" -AsPlainText -Force $pfx_cert_path = Join-Path $PSScriptRoot 'SSL.pem' - { Start-AzsContainerRegistrySetup -Password $password -SslCertInputFile $pfx_cert_path } | Should Not Throw + { Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path } | Should Not Throw } From f4a8756987bf10667869f99d0f892a2e68ffa8a0 Mon Sep 17 00:00:00 2001 From: larisaborodina Date: Wed, 6 Oct 2021 19:31:24 -0700 Subject: [PATCH 3/5] Follow up review comments. --- .../custom/Start-AzsContainerRegistrySetup.ps1 | 1 + src/Azs.ContainerRegistry.Admin/readme.md | 3 +++ .../test/Start-AzsContainerRegistrySetup.Tests.ps1 | 2 +- src/Azs.ContainerRegistry.Admin/test/{ssl.pem => ssl.pfx} | 0 4 files changed, 5 insertions(+), 1 deletion(-) rename src/Azs.ContainerRegistry.Admin/test/{ssl.pem => ssl.pfx} (100%) diff --git a/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 b/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 index 4ff5a8b5..31991a5f 100644 --- a/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 +++ b/src/Azs.ContainerRegistry.Admin/custom/Start-AzsContainerRegistrySetup.ps1 @@ -190,6 +190,7 @@ begin { process { + # Basic validation should be present in powershell for PFX file if ($PSBoundParameters.ContainsKey(('CertificateInputFile'))) { if (!(Test-Path -Path $CertificateInputFile -PathType Leaf)) diff --git a/src/Azs.ContainerRegistry.Admin/readme.md b/src/Azs.ContainerRegistry.Admin/readme.md index 35129596..d3d61b4b 100644 --- a/src/Azs.ContainerRegistry.Admin/readme.md +++ b/src/Azs.ContainerRegistry.Admin/readme.md @@ -132,18 +132,21 @@ directive: property-name: NumberOfRegistries # Hide the auto-generated New-AzsContainerRegistryQuota and expose it through customized one + # The customization makes the Quota parameters optional and add default values in case if parameter skiped - where: verb: New subject: Quota hide: true # Hide the auto-generated Set-AzsContainerRegistryQuota and expose it through customized one + # The customization makes the Quota parameters optional and add existed values in case if parameter skiped - where: verb: Set subject: Quota hide: true # Hide the auto-generated Start-AzsContainerRegistrySetup and expose it through customized one + # The customization adds basic validation for PFX file - where: verb: Start subject: ContainerRegistrySetup diff --git a/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 index c8ee6142..59c9221c 100644 --- a/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 +++ b/src/Azs.ContainerRegistry.Admin/test/Start-AzsContainerRegistrySetup.Tests.ps1 @@ -13,7 +13,7 @@ while(-not $mockingPath) { Describe 'Start-AzsContainerRegistrySetup' { $password = ConvertTo-SecureString "password" -AsPlainText -Force - $pfx_cert_path = Join-Path $PSScriptRoot 'SSL.pem' + $pfx_cert_path = Join-Path $PSScriptRoot 'SSL.pfx' { Start-AzsContainerRegistrySetup -Password $password -CertificateInputFile $pfx_cert_path } | Should Not Throw } diff --git a/src/Azs.ContainerRegistry.Admin/test/ssl.pem b/src/Azs.ContainerRegistry.Admin/test/ssl.pfx similarity index 100% rename from src/Azs.ContainerRegistry.Admin/test/ssl.pem rename to src/Azs.ContainerRegistry.Admin/test/ssl.pfx From ad212760841a88483b42f5f60f14cce3062c2872 Mon Sep 17 00:00:00 2001 From: larisaborodina Date: Thu, 7 Oct 2021 18:39:55 -0700 Subject: [PATCH 4/5] Set-AzsContainerRegistryConfiguration should not make ConfigurationName as mandatory it should internally used default as value --- .../docs/Azs.ContainerRegistry.Admin.md | 5 +- ...emove-AzsContainerRegistryConfiguration.md | 193 ------------------ .../docs/Start-AzsContainerRegistrySetup.md | 4 +- ...emove-AzsContainerRegistryConfiguration.md | 7 - src/Azs.ContainerRegistry.Admin/readme.md | 14 +- ...tainerRegistryConfiguration.Recording.json | 160 --------------- ...zsContainerRegistryConfiguration.Tests.ps1 | 26 --- 7 files changed, 13 insertions(+), 396 deletions(-) delete mode 100644 src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md delete mode 100644 src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md delete mode 100644 src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Recording.json delete mode 100644 src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 diff --git a/src/Azs.ContainerRegistry.Admin/docs/Azs.ContainerRegistry.Admin.md b/src/Azs.ContainerRegistry.Admin/docs/Azs.ContainerRegistry.Admin.md index 09e5ebf1..aba908d8 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Azs.ContainerRegistry.Admin.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Azs.ContainerRegistry.Admin.md @@ -1,6 +1,6 @@ --- Module Name: Azs.ContainerRegistry.Admin -Module Guid: 900db1dd-8338-4e8f-a01c-81ab98484955 +Module Guid: b0f249b1-a0b6-42a8-837c-d20801583692 Download Help Link: https://docs.microsoft.com/en-us/powershell/module/azs.containerregistry.admin Help Version: 1.0.0.0 Locale: en-US @@ -29,9 +29,6 @@ Returns the status of the container registry setup. ### [New-AzsContainerRegistryQuota](New-AzsContainerRegistryQuota.md) Create or update an existing container registry quota. -### [Remove-AzsContainerRegistryConfiguration](Remove-AzsContainerRegistryConfiguration.md) -Delete an existing container registry configuration - ### [Remove-AzsContainerRegistryQuota](Remove-AzsContainerRegistryQuota.md) Delete an existing container registry quota diff --git a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md deleted file mode 100644 index fd55234c..00000000 --- a/src/Azs.ContainerRegistry.Admin/docs/Remove-AzsContainerRegistryConfiguration.md +++ /dev/null @@ -1,193 +0,0 @@ ---- -external help file: -Module Name: Azs.ContainerRegistry.Admin -online version: https://docs.microsoft.com/en-us/powershell/module/azs.containerregistry.admin/remove-azscontainerregistryconfiguration -schema: 2.0.0 ---- - -# Remove-AzsContainerRegistryConfiguration - -## SYNOPSIS -Delete an existing container registry configuration - -## SYNTAX - -### Delete (Default) -``` -Remove-AzsContainerRegistryConfiguration [-Location ] [-Name ] [-SubscriptionId ] - [-DefaultProfile ] [-PassThru] [-Confirm] [-WhatIf] [] -``` - -### DeleteViaIdentity -``` -Remove-AzsContainerRegistryConfiguration -InputObject - [-DefaultProfile ] [-PassThru] [-Confirm] [-WhatIf] [] -``` - -## DESCRIPTION -Delete an existing container registry configuration - -## EXAMPLES - -### Example 1: Remove Azs ContainerRegistry Configuration -```powershell -PS C:\> Remove-AzsContainerRegistryConfiguration - -``` - -Delete an existing container registry configuration. - -## PARAMETERS - -### -DefaultProfile -The credentials, account, tenant, and subscription used for communication with Azure. - -```yaml -Type: System.Management.Automation.PSObject -Parameter Sets: (All) -Aliases: AzureRMContext, AzureCredential - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -InputObject -Identity Parameter -To construct, see NOTES section for INPUTOBJECT properties and create a hash table. - -```yaml -Type: Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.IContainerRegistryAdminIdentity -Parameter Sets: DeleteViaIdentity -Aliases: - -Required: True -Position: Named -Default value: None -Accept pipeline input: True (ByValue) -Accept wildcard characters: False -``` - -### -Location -The name of Azure region. - -```yaml -Type: System.String -Parameter Sets: Delete -Aliases: - -Required: False -Position: Named -Default value: (Get-AzLocation)[0].Location -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -Name -The name of the configuration. - -```yaml -Type: System.String -Parameter Sets: Delete -Aliases: - -Required: False -Position: Named -Default value: Write-Output "default" -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -PassThru -Returns true when the command succeeds - -```yaml -Type: System.Management.Automation.SwitchParameter -Parameter Sets: (All) -Aliases: - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -SubscriptionId -The ID of the target subscription. - -```yaml -Type: System.String -Parameter Sets: Delete -Aliases: - -Required: False -Position: Named -Default value: (Get-AzContext).Subscription.Id -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -Confirm -Prompts you for confirmation before running the cmdlet. - -```yaml -Type: System.Management.Automation.SwitchParameter -Parameter Sets: (All) -Aliases: cf - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - -### -WhatIf -Shows what would happen if the cmdlet runs. -The cmdlet is not run. - -```yaml -Type: System.Management.Automation.SwitchParameter -Parameter Sets: (All) -Aliases: wi - -Required: False -Position: Named -Default value: None -Accept pipeline input: False -Accept wildcard characters: False -``` - -### CommonParameters -This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). - -## INPUTS - -### Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistryAdmin.Models.IContainerRegistryAdminIdentity - -## OUTPUTS - -### System.Boolean - -## NOTES - -ALIASES - -COMPLEX PARAMETER PROPERTIES - -To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables. - - -INPUTOBJECT : Identity Parameter - - `[CapacityName ]`: The name of the capacity parameter. - - `[ConfigurationName ]`: The name of the configuration. - - `[Id ]`: Resource identity path - - `[Location ]`: The name of Azure region. - - `[QuotaName ]`: The name of the container registry quota. - - `[SubscriptionId ]`: The ID of the target subscription. - -## RELATED LINKS - diff --git a/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md b/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md index 5026bbdd..1b7c872c 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Start-AzsContainerRegistrySetup.md @@ -243,8 +243,8 @@ INPUTOBJECT : Identity Parameter - `[SubscriptionId ]`: The ID of the target subscription. STARTSETUPREQUEST : Container registry setup properties. - - `[Password ]`: Ssl certificate password. - - `[SslCertBase64 ]`: Ssl certificate in base64 format. + - `Password `: Ssl certificate password. + - `SslCertBase64 `: Ssl certificate in base64 format. ## RELATED LINKS diff --git a/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md deleted file mode 100644 index 2d667a50..00000000 --- a/src/Azs.ContainerRegistry.Admin/examples/Remove-AzsContainerRegistryConfiguration.md +++ /dev/null @@ -1,7 +0,0 @@ -### Example 1: Remove Azs ContainerRegistry Configuration -```powershell -PS C:\> Remove-AzsContainerRegistryConfiguration - -``` - -Delete an existing container registry configuration. \ No newline at end of file diff --git a/src/Azs.ContainerRegistry.Admin/readme.md b/src/Azs.ContainerRegistry.Admin/readme.md index d3d61b4b..f787a3e3 100644 --- a/src/Azs.ContainerRegistry.Admin/readme.md +++ b/src/Azs.ContainerRegistry.Admin/readme.md @@ -106,6 +106,7 @@ directive: verb: Remove subject: ContainerRegistryConfiguration parameter-name: Name + hide: true set: default: script: Write-Output "default" @@ -113,10 +114,15 @@ directive: verb: Set subject: ContainerRegistryConfiguration parameter-name: Name + hide: true set: default: script: Write-Output "default" - + - where: + verb: Remove + subject: ContainerRegistryConfiguration + hide: true + # Rename cmdlet parameter name in ContainerRegistrySetup - where: subject: ContainerRegistrySetup @@ -132,21 +138,21 @@ directive: property-name: NumberOfRegistries # Hide the auto-generated New-AzsContainerRegistryQuota and expose it through customized one - # The customization makes the Quota parameters optional and add default values in case if parameter skiped + # The customization makes the Quota parameters optional and add default values in case if parameter skiped - where: verb: New subject: Quota hide: true # Hide the auto-generated Set-AzsContainerRegistryQuota and expose it through customized one - # The customization makes the Quota parameters optional and add existed values in case if parameter skiped + # The customization makes the Quota parameters optional and add existed values in case if parameter skiped - where: verb: Set subject: Quota hide: true # Hide the auto-generated Start-AzsContainerRegistrySetup and expose it through customized one - # The customization adds basic validation for PFX file + # The customization adds basic validation for PFX file - where: verb: Start subject: ContainerRegistrySetup diff --git a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Recording.json b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Recording.json deleted file mode 100644 index 7efaed33..00000000 --- a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Recording.json +++ /dev/null @@ -1,160 +0,0 @@ -{ - "Remove-AzsContainerRegistryConfiguration+[NoContext]+TestRemoveContainerRegistryConfiguration+$GET+https://management.azure.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations?api-version=2019-11-01-preview+1": { - "Request": { - "Method": "GET", - "RequestUri": "https://adminmanagement.redmond.ext-n25r1308.masd.stbtest.microsoft.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations?api-version=2019-11-01-preview", - "Content": null, - "isContentBase64": false, - "Headers": { - "x-ms-unique-id": [ "13" ], - "x-ms-client-request-id": [ "ca973158-44b9-4f74-9f7b-d3493ce4bd73" ], - "CommandName": [ "Get-AzsContainerRegistryConfiguration" ], - "FullCommandName": [ "Get-AzsContainerRegistryConfiguration_List" ], - "ParameterSetName": [ "__AllParameterSets" ], - "User-Agent": [ "AzurePowershell/Az4.0.0-preview" ], - "Authorization": [ "[Filtered]" ] - }, - "ContentHeaders": { - } - }, - "Response": { - "StatusCode": 200, - "Headers": { - "Cache-Control": [ "no-cache" ], - "Pragma": [ "no-cache" ], - "x-ms-request-id": [ "780b1234-e64b-4c6f-b69e-125d779e3e52" ], - "Server": [ "Microsoft-HTTPAPI/2.0" ], - "x-ms-ratelimit-remaining-subscription-reads": [ "14901" ], - "x-ms-correlation-request-id": [ "2ec702aa-52cf-49ba-8839-9d1608be7f0a" ], - "x-ms-routing-request-id": [ "REDMOND:20210819T181227Z:2ec702aa-52cf-49ba-8839-9d1608be7f0a" ], - "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], - "X-Content-Type-Options": [ "nosniff" ], - "Date": [ "Thu, 19 Aug 2021 18:12:27 GMT" ] - }, - "ContentHeaders": { - "Content-Length": [ "290" ], - "Content-Type": [ "application/json; charset=utf-8" ], - "Expires": [ "-1" ] - }, - "Content": "{\"value\":[{\"id\":\"/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/Default\",\"name\":\"redmond/Default\",\"type\":\"Microsoft.ContainerRegistry.Admin/locations/configurations\",\"properties\":{\"maximumCapacityInGiB\":0}}]}", - "isContentBase64": false - } - }, - "Remove-AzsContainerRegistryConfiguration+[NoContext]+TestRemoveContainerRegistryConfiguration+$DELETE+https://management.azure.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/default?api-version=2019-11-01-preview+2": { - "Request": { - "Method": "DELETE", - "RequestUri": "https://adminmanagement.redmond.ext-n25r1308.masd.stbtest.microsoft.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/default?api-version=2019-11-01-preview", - "Content": null, - "isContentBase64": false, - "Headers": { - "x-ms-unique-id": [ "14" ], - "x-ms-client-request-id": [ "22d61cee-7cb7-45be-af4f-55ac32c8bc22" ], - "CommandName": [ "Remove-AzsContainerRegistryConfiguration" ], - "FullCommandName": [ "Remove-AzsContainerRegistryConfiguration_Delete" ], - "ParameterSetName": [ "__AllParameterSets" ], - "User-Agent": [ "AzurePowershell/Az4.0.0-preview" ], - "Authorization": [ "[Filtered]" ] - }, - "ContentHeaders": { - } - }, - "Response": { - "StatusCode": 200, - "Headers": { - "Cache-Control": [ "no-cache" ], - "Pragma": [ "no-cache" ], - "x-ms-request-id": [ "0df61c64-6ae1-4e33-a6bb-7a8abe68af7f" ], - "Server": [ "Microsoft-HTTPAPI/2.0" ], - "x-ms-ratelimit-remaining-subscription-deletes": [ "14998" ], - "x-ms-correlation-request-id": [ "77cda7ef-3503-4012-a9c2-bca3a1def352" ], - "x-ms-routing-request-id": [ "REDMOND:20210819T181229Z:77cda7ef-3503-4012-a9c2-bca3a1def352" ], - "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], - "X-Content-Type-Options": [ "nosniff" ], - "Date": [ "Thu, 19 Aug 2021 18:12:29 GMT" ] - }, - "ContentHeaders": { - "Expires": [ "-1" ], - "Content-Length": [ "0" ] - }, - "Content": null, - "isContentBase64": false - } - }, - "Remove-AzsContainerRegistryConfiguration+[NoContext]+TestRemoveContainerRegistryConfiguration+$GET+https://management.azure.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations?api-version=2019-11-01-preview+3": { - "Request": { - "Method": "GET", - "RequestUri": "https://adminmanagement.redmond.ext-n25r1308.masd.stbtest.microsoft.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations?api-version=2019-11-01-preview", - "Content": null, - "isContentBase64": false, - "Headers": { - "x-ms-unique-id": [ "15" ], - "x-ms-client-request-id": [ "e7f13bfb-34f0-46db-b66f-ad04cc651b8c" ], - "CommandName": [ "Get-AzsContainerRegistryConfiguration" ], - "FullCommandName": [ "Get-AzsContainerRegistryConfiguration_List" ], - "ParameterSetName": [ "__AllParameterSets" ], - "User-Agent": [ "AzurePowershell/Az4.0.0-preview" ], - "Authorization": [ "[Filtered]" ] - }, - "ContentHeaders": { - } - }, - "Response": { - "StatusCode": 200, - "Headers": { - "Cache-Control": [ "no-cache" ], - "Pragma": [ "no-cache" ], - "x-ms-request-id": [ "f56af45b-a923-4fd0-b8b7-bc35b7e97c40" ], - "Server": [ "Microsoft-HTTPAPI/2.0" ], - "x-ms-ratelimit-remaining-subscription-reads": [ "14898" ], - "x-ms-correlation-request-id": [ "ea9fcffd-5d53-4d90-973c-768716f2b188" ], - "x-ms-routing-request-id": [ "REDMOND:20210819T181230Z:ea9fcffd-5d53-4d90-973c-768716f2b188" ], - "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], - "X-Content-Type-Options": [ "nosniff" ], - "Date": [ "Thu, 19 Aug 2021 18:12:30 GMT" ] - }, - "ContentHeaders": { - "Content-Length": [ "290" ], - "Content-Type": [ "application/json; charset=utf-8" ], - "Expires": [ "-1" ] - }, - "Content": "{\"value\":[{\"id\":\"/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/Default\",\"name\":\"redmond/Default\",\"type\":\"Microsoft.ContainerRegistry.Admin/locations/configurations\",\"properties\":{\"maximumCapacityInGiB\":0}}]}", - "isContentBase64": false - } - }, - "Remove-AzsContainerRegistryConfiguration+[NoContext]+TestRemoveContainerRegistryConfiguration+$PUT+https://management.azure.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/default?api-version=2019-11-01-preview+4": { - "Request": { - "Method": "PUT", - "RequestUri": "https://management.azure.com/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/default?api-version=2019-11-01-preview", - "Content": "{\r\n \"properties\": {\r\n \"maximumCapacityInGiB\": 0\r\n }\r\n}", - "isContentBase64": false, - "Headers": { - }, - "ContentHeaders": { - "Content-Type": [ "application/json" ], - "Content-Length": [ "59" ] - } - }, - "Response": { - "StatusCode": 200, - "Headers": { - "Cache-Control": [ "no-cache" ], - "Pragma": [ "no-cache" ], - "x-ms-request-id": [ "26bb3969-7b78-4f5b-906f-4df70648cc85" ], - "Server": [ "Microsoft-HTTPAPI/2.0" ], - "x-ms-ratelimit-remaining-subscription-writes": [ "1198" ], - "x-ms-correlation-request-id": [ "5fcf1ad7-d9f4-498e-9b51-d3527a690004" ], - "x-ms-routing-request-id": [ "REDMOND:20210819T181232Z:5fcf1ad7-d9f4-498e-9b51-d3527a690004" ], - "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], - "X-Content-Type-Options": [ "nosniff" ], - "Date": [ "Thu, 19 Aug 2021 18:12:32 GMT" ] - }, - "ContentHeaders": { - "Content-Length": [ "278" ], - "Content-Type": [ "application/json; charset=utf-8" ], - "Expires": [ "-1" ] - }, - "Content": "{\"id\":\"/subscriptions/7e41090c-4aa7-40bc-856a-a993f8fbd215/providers/Microsoft.ContainerRegistry.Admin/locations/redmond/configurations/Default\",\"name\":\"redmond/Default\",\"type\":\"Microsoft.ContainerRegistry.Admin/locations/configurations\",\"properties\":{\"maximumCapacityInGiB\":0}}", - "isContentBase64": false - } - } -} \ No newline at end of file diff --git a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 b/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 deleted file mode 100644 index 0fab8b0e..00000000 --- a/src/Azs.ContainerRegistry.Admin/test/Remove-AzsContainerRegistryConfiguration.Tests.ps1 +++ /dev/null @@ -1,26 +0,0 @@ -$loadEnvPath = Join-Path $PSScriptRoot 'loadEnvJson.ps1' -if (-Not (Test-Path -Path $loadEnvPath)) { - $loadEnvPath = Join-Path $PSScriptRoot '..\loadEnvJson.ps1' -} -. ($loadEnvPath) -$TestRecordingFile = Join-Path $PSScriptRoot 'Remove-AzsContainerRegistryConfiguration.Recording.json' -$currentPath = $PSScriptRoot -while(-not $mockingPath) { - $mockingPath = Get-ChildItem -Path $currentPath -Recurse -Include 'HttpPipelineMocking.ps1' -File - $currentPath = Split-Path -Path $currentPath -Parent -} -. ($mockingPath | Select-Object -First 1).FullName - -Describe 'Remove-AzsContainerRegistryConfiguration' { - It "TestRemoveContainerRegistryConfiguration" -Skip:$('TestRemoveContainerRegistryConfiguration' -in $global:SkippedTests) { - $global:TestName = 'TestRemoveContainerRegistryConfiguration' - - $maxCapacityInGib = (Get-AzsContainerRegistryConfiguration ).MaximumCapacityInGib - $targetCapacityInGib = 0 - Remove-AzsContainerRegistryConfiguration - $result = Get-AzsContainerRegistryConfiguration - $result | Should Not Be $null - $result.MaximumCapacityInGib | Should Be $targetCapacityInGib - Set-AzsContainerRegistryConfiguration -MaximumCapacityInGib $maxCapacityInGib - } -} From a4d5e072724a1e07ee6e3de7a8a486e6dec3b7ec Mon Sep 17 00:00:00 2001 From: larisaborodina Date: Sun, 10 Oct 2021 12:20:47 -0700 Subject: [PATCH 5/5] Set-AzsContainerRegistryConfiguration should not make ConfigurationName as mandatory it should internally used default as value --- .../Set-AzsContainerRegistryConfiguration.md | 27 +++++-------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md index e1e975c9..fc00a4c3 100644 --- a/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md +++ b/src/Azs.ContainerRegistry.Admin/docs/Set-AzsContainerRegistryConfiguration.md @@ -14,15 +14,15 @@ Configure container registry overall configuration properties. ### PutExpanded (Default) ``` -Set-AzsContainerRegistryConfiguration [-Location ] [-Name ] [-SubscriptionId ] - [-MaximumCapacityInGiB ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] +Set-AzsContainerRegistryConfiguration -MaximumCapacityInGiB [-Location ] + [-SubscriptionId ] [-DefaultProfile ] [-Confirm] [-WhatIf] [] ``` ### Put ``` Set-AzsContainerRegistryConfiguration -ConfigurationObject - [-Location ] [-Name ] [-SubscriptionId ] [-DefaultProfile ] [-Confirm] - [-WhatIf] [] + [-Location ] [-SubscriptionId ] [-DefaultProfile ] [-Confirm] [-WhatIf] + [] ``` ## DESCRIPTION @@ -100,28 +100,13 @@ Type: System.Int32 Parameter Sets: PutExpanded Aliases: -Required: False +Required: True Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False ``` -### -Name -The name of the configuration. - -```yaml -Type: System.String -Parameter Sets: (All) -Aliases: - -Required: False -Position: Named -Default value: Write-Output "default" -Accept pipeline input: False -Accept wildcard characters: False -``` - ### -SubscriptionId The ID of the target subscription. @@ -189,7 +174,7 @@ To create the parameters described below, construct a hash table containing the CONFIGURATIONOBJECT : Container registry configuration property. - - `[MaximumCapacityInGiB ]`: Total storage capacity (GiB) which can used by the registry. + - `MaximumCapacityInGiB `: Total storage capacity (GiB) which can used by the registry. ## RELATED LINKS