Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
[assembly: System.Reflection.AssemblyCopyrightAttribute("Copyright © Microsoft")]
[assembly: System.Reflection.AssemblyProductAttribute("Microsoft Azure PowerShell")]
[assembly: System.Reflection.AssemblyTitleAttribute("Microsoft Azure PowerShell - ContainerRegistry")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("4.3.0")]
[assembly: System.Reflection.AssemblyVersionAttribute("4.3.0")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("4.3.1")]
[assembly: System.Reflection.AssemblyVersionAttribute("4.3.1")]
[assembly: System.Runtime.InteropServices.ComVisibleAttribute(false)]
[assembly: System.CLSCompliantAttribute(false)]
106 changes: 7 additions & 99 deletions src/ContainerRegistry/ContainerRegistry.Autorest/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,22 +54,17 @@ module-version: 0.1.0
title: ContainerRegistry
subject-prefix: $(service-name)

inlining-threshold: 100
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line should not be removed.

resourcegroup-append: true
nested-object-to-string: true

# For new modules, please avoid setting 3.x using the use-extension method and instead, use 4.x as the default option
use-extension:
"@autorest/powershell": "3.x"

directive:
# Remove cmdlet, Private link related resource should be ignored.
- where:
subject: RegistryPrivateLinkResource
hide: true
# Remove the unexpanded parameter set
- where:
variant: ^Create$|^CreateViaIdentityExpanded$|^Update$|^UpdateViaIdentity$|^CreateViaIdentity$|^ImportViaIdentity$|^ImportViaIdentityExpanded$|^CheckViaIdentity$|^CheckViaIdentityExpanded$|^PingViaIdentity$|^Check$|^RegenerateViaIdentity$|^Generate$|^GenerateViaIdentity$
variant: ^(Create|Update|Import|Check|Generate)(?!.*?(Expanded|JsonFilePath|JsonString))
remove: true
- where:
variant: ^CreateViaIdentity$|^CreateViaIdentityExpanded$|^ImportViaIdentityExpanded$|^CheckViaIdentityExpanded$
remove: true
- where:
subject: PrivateEndpointConnection
Expand Down Expand Up @@ -125,7 +120,6 @@ directive:
set:
parameter-name: Sku


- where:
parameter-name: ServiceUri
set:
Expand Down Expand Up @@ -325,93 +319,7 @@ directive:
preview-announcement:
preview-message: This is a preview version of ContainerRegistry. Let us know if you run into any issues.

- where:
verb: New|Update
subject: Registry
set:
breaking-change:
deprecated-output-properties:
- NetworkRuleSetIPRule
- PrivateEndpointConnection
- DataEndpointHostName
- IdentityType
- IdentityUserAssignedIdentity
new-output-properties:
- NetworkRuleSetIPRule
- PrivateEndpointConnection
- DataEndpointHostName
- IdentityType
- IdentityUserAssignedIdentity
change-description: (1) The types of the properties 'NetworkRuleSetIPRule', 'PrivateEndpointConnection' and 'DataEndpointHostName' will be changed from single object to 'List'. (2) IdentityType will be removed. EnableSystemAssignedIdentity will be used to enable/disable system assigned identity and UserAssignedIdentity will be used to specify user assigned identities.
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03

- where:
verb: Get|New|Update
subject: ScopeMap|Webhook
set:
breaking-change:
deprecated-output-properties:
- Action
new-output-properties:
- Action
change-description: The types of the properties 'Action' will be changed from single object to 'List'.
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03

- where:
verb: Update
subject: RegistryCredentials
variant: Regenerate
set:
breaking-change:
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03

- where:
verb: Get|New
subject: ExportPipeline|ImportPipeline
set:
breaking-change:
deprecated-output-properties:
- Option
- IdentityType
- IdentityUserAssignedIdentity
new-output-properties:
- Option
- IdentityType
- IdentityUserAssignedIdentity
change-description: (1) The types of the properties 'NetworkRuleSetIPRule', 'PrivateEndpointConnection' and 'DataEndpointHostName' will be changed from single object to 'List'. (2) IdentityType will be removed. EnableSystemAssignedIdentity will be used to enable/disable system assigned identity and UserAssignedIdentity will be used to specify user assigned identities.
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03

- where:
verb: Get|New|Update
subject: Token
set:
breaking-change:
deprecated-output-properties:
- CredentialsCertificate
- CredentialsPassword
new-output-properties:
- CredentialsCertificate
- CredentialsPassword
change-description: The types of the properties 'CredentialsCertificate' and 'CredentialsPassword' will be changed from single object to 'List'.
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03

- where:
verb: Import
subject: RegistryImage
variant: Import
set:
breaking-change:
deprecated-by-version: 9.0.0
deprecated-by-azversion: 15.0.0
change-effective-date: 2025/11/03
- model-cmdlet:
- model-name: IPRule
cmdlet-name: New-AzContainerRegistryIPRuleObject
```
Original file line number Diff line number Diff line change
Expand Up @@ -5,44 +5,6 @@
"url": "https://learn.microsoft.com/powershell/module/az.containerregistry"
},
"commands": [
{
"name": "Import-AzContainerRegistryImage",
"description": "Copies an image to this container registry from the specified container registry.",
"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/importImage",
"help": {
"learnMore": {
"url": "https://learn.microsoft.com/powershell/module/az.containerregistry/import-azcontainerregistryimage"
},
"parameterSets": [
{
"parameters": [
"-RegistryName <String>",
"-ResourceGroupName <String>",
"[-SubscriptionId <String>]"
]
}
]
},
"examples": [
{
"description": "Copies an image to this container registry from the specified container registry.",
"parameters": [
{
"name": "-RegistryName",
"value": "[Path.registryName]"
},
{
"name": "-ResourceGroupName",
"value": "[Path.resourceGroupName]"
},
{
"name": "-SubscriptionId",
"value": "[Path.subscriptionId]"
}
]
}
]
},
{
"name": "Remove-AzContainerRegistry",
"description": "Deletes a container registry.",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

namespace Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview
namespace Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models
{
public class PSContainerRegistryCredential
{
public PSContainerRegistryCredential(RegistryListCredentialsResult credentials)
{
Username = credentials?.Username;
Password = credentials?.Password?.Length > 0 ? credentials.Password[0]?.Value : string.Empty;
Password2 = credentials?.Password?.Length > 1 ? credentials.Password[1]?.Value : string.Empty;
Password = credentials?.Password?.Count > 0 ? credentials.Password[0]?.Value : string.Empty;
Password2 = credentials?.Password?.Count > 1 ? credentials.Password[1]?.Value : string.Empty;
}

public string Username { get; set; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Get-AzContainerRegistry
.Inputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IContainerRegistryIdentity
.Outputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry
.Notes
COMPLEX PARAMETER PROPERTIES

Expand Down Expand Up @@ -60,8 +60,7 @@ INPUTOBJECT <IContainerRegistryIdentity>: Identity Parameter
https://learn.microsoft.com/powershell/module/az.containerregistry/get-azcontainerregistry
#>
function Get-AzContainerRegistry {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry])]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Runtime.OutputBreakingChangeAttribute("Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry", "15.0.0", "9.0.0", "2025/11/03", ReplacementCmdletOutputType = "Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry", DeprecatedOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName"), NewOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName. This parameter will be changed from single object to 'List'."))]
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry])]
[CmdletBinding(DefaultParameterSetName='List2', PositionalBinding=$false)]
param(
[Parameter(ParameterSetName='Get', Mandatory)]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,12 @@ Lists the login credentials for the specified container registry.
$Cred.Password

.Outputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistryListCredentialsResult
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistryListCredentialsResult
.Link
https://learn.microsoft.com/powershell/module/az.containerregistry/get-azcontainerregistrycredential
#>
function Get-AzContainerRegistryCredential {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.PSContainerRegistryCredential])]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Runtime.OutputBreakingChangeAttribute("Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.PSContainerRegistryCredential", "15.0.0", "9.0.0", "2025/11/03", ReplacementCmdletOutputType = "Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.PSContainerRegistryCredential", DeprecatedOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName"), NewOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName. This parameter will be changed from single object to 'List'."))]
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.PSContainerRegistryCredential])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
[Parameter(ParameterSetName='List', Mandatory)]
Expand All @@ -49,7 +48,7 @@ param(

[Parameter(ParameterSetName='GetByRegistry', Mandatory, ValueFromPipeline)]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry]
# The Registry Object.
${Registry},

Expand Down Expand Up @@ -119,7 +118,7 @@ process {
$null = $PSBoundParameters.Add("ResourceGroupName", $ResourceGroupName)
}
$Credential = Az.ContainerRegistry.internal\Get-AzContainerRegistryCredential @PSBoundParameters
$Result = New-Object Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.PSContainerRegistryCredential($Credential)
$Result = New-Object Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.PSContainerRegistryCredential($Credential)
return $Result
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Get-AzContainerRegistryReplication -ResourceGroupName "MyResourceGroup" -Registr
.Inputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IContainerRegistryIdentity
.Outputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IReplication
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IReplication
.Notes
COMPLEX PARAMETER PROPERTIES

Expand Down Expand Up @@ -58,8 +58,7 @@ INPUTOBJECT <IContainerRegistryIdentity>: Identity Parameter
https://learn.microsoft.com/powershell/module/az.containerregistry/get-azcontainerregistryreplication
#>
function Get-AzContainerRegistryReplication {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IReplication])]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Runtime.OutputBreakingChangeAttribute("Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IReplication", "15.0.0", "9.0.0", "2025/11/03", ReplacementCmdletOutputType = "Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IReplication", DeprecatedOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName"), NewOutputProperties = ("NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName. This parameter will be changed from single object to 'List'."))]
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IReplication])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
[Parameter(ParameterSetName='Get', Mandatory)]
Expand Down Expand Up @@ -103,7 +102,7 @@ param(

[Parameter(ParameterSetName='GetByRegistry', Mandatory, ValueFromPipeline)]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry]
# The Registry Object.
${Registry},

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Get-AzContainerRegistryWebhook -ResourceGroupName "MyResourceGroup" -RegistryNa
.Inputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IContainerRegistryIdentity
.Outputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IWebhook
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IWebhook
.Notes
COMPLEX PARAMETER PROPERTIES

Expand Down Expand Up @@ -59,8 +59,7 @@ INPUTOBJECT <IContainerRegistryIdentity>: Identity Parameter
https://learn.microsoft.com/powershell/module/az.containerregistry/get-azcontainerregistrywebhook
#>
function Get-AzContainerRegistryWebhook {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IWebhook])]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Runtime.OutputBreakingChangeAttribute("Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IWebhook", "15.0.0", "9.0.0", "2025/11/03", ReplacementCmdletOutputType = "Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IWebhook", DeprecatedOutputProperties = ("Action, NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName"), NewOutputProperties = ("Action, NetworkRuleSetIPRule, PrivateEndpointConnection, DataEndpointHostName. This parameter will be changed from single object to 'List'."))]
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IWebhook])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false)]
param(
[Parameter(ParameterSetName='Get', Mandatory)]
Expand Down Expand Up @@ -104,7 +103,7 @@ param(

[Parameter(ParameterSetName='GetByRegistry', Mandatory)]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IRegistry]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IRegistry]
# The Registry Object.
${Registry},

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,12 @@ Lists recent events for the specified webhook.
Get-AzContainerRegistryWebhookEvent -ResourceGroupName lnxtest -RegistryName lnxcr -WebhookName webhook001

.Outputs
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IEvent
Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IEvent
.Link
https://learn.microsoft.com/powershell/module/az.containerregistry/get-azcontainerregistrywebhookevent
#>
function Get-AzContainerRegistryWebhookEvent {
[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IEvent])]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Runtime.OutputBreakingChangeAttribute("Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IEvent", "15.0.0", "9.0.0", "2025/11/03", ReplacementCmdletOutputType = "Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IEvent", DeprecatedOutputProperties = ("ContentTimestamp, TargetSize, TargetLength, TargetTag, TargetRepository, TargetName, TargetMediaType, TargetDigest, SourceInstanceId, SourceAddr, ActorName, RequestUseragent, RequestMethod, RequestId, RequestHost, RequestAddr, ContentId, ContentAction, TargetUrl, TargetVersion, Action"), NewOutputProperties = ("ContentTimestamp, TargetSize, TargetLength, TargetTag, TargetRepository, TargetName, TargetMediaType, TargetDigest, SourceInstanceId, SourceAddr, ActorName, RequestUseragent, RequestMethod, RequestId, RequestHost, RequestAddr, ContentId, ContentAction, TargetUrl, TargetVersion, Action. This parameter will be changed from single object to 'List'."))]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This breaking change is not expected, which is caused by removing inlining-threshold: 100

[OutputType([Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IEvent])]
[CmdletBinding(DefaultParameterSetName='List', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
[Parameter(ParameterSetName='List', Mandatory)]
Expand Down Expand Up @@ -62,7 +61,7 @@ param(

[Parameter(ParameterSetName='GetByWebhook', Mandatory, ValueFromPipeline)]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Category('Path')]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.Api202301Preview.IWebhook]
[Microsoft.Azure.PowerShell.Cmdlets.ContainerRegistry.Models.IWebhook]
# The Webhook Object.
${Webhook},

Expand Down
Loading