From efabf415d3ce385e7807678ed5c1a788577713e8 Mon Sep 17 00:00:00 2001 From: Ken Ross Date: Mon, 28 Apr 2025 09:19:25 +0100 Subject: [PATCH 1/5] Assign default name to QueueService Updated QueueService to use `default` for the name property value as per the spec https://learn.microsoft.com/en-us/azure/templates/microsoft.storage/storageaccounts/queueservices?pivots=deployment-language-bicep --- .../src/Generated/QueueService.cs | 14 ++++++-------- .../src/QueueService.cs | 16 ++++++++++++++++ .../src/Specifications/StorageSpecification.cs | 1 + 3 files changed, 23 insertions(+), 8 deletions(-) create mode 100644 sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs diff --git a/sdk/provisioning/Azure.Provisioning.Storage/src/Generated/QueueService.cs b/sdk/provisioning/Azure.Provisioning.Storage/src/Generated/QueueService.cs index 968f8e6d5687..12ebe6cbadb8 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/src/Generated/QueueService.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/src/Generated/QueueService.cs @@ -18,13 +18,6 @@ namespace Azure.Provisioning.Storage; /// public partial class QueueService : ProvisionableResource { - /// - /// Gets the Name. - /// - public BicepValue Name - { - get { Initialize(); return _name!; } - } private BicepValue? _name; /// @@ -66,6 +59,11 @@ public StorageAccount? Parent } private ResourceReference? _parent; + /// + /// Get the default value for the Name property. + /// + private partial BicepValue GetNameDefaultValue(); + /// /// Creates a new QueueService. /// @@ -86,7 +84,7 @@ public QueueService(string bicepIdentifier, string? resourceVersion = default) /// protected override void DefineProvisionableProperties() { - _name = DefineProperty("Name", ["name"], isOutput: true); + _name = DefineProperty("Name", ["name"], defaultValue: GetNameDefaultValue()); _corsRules = DefineListProperty("CorsRules", ["properties", "cors", "corsRules"]); _id = DefineProperty("Id", ["id"], isOutput: true); _systemData = DefineModelProperty("SystemData", ["systemData"], isOutput: true); diff --git a/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs b/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs new file mode 100644 index 000000000000..c320a394caaf --- /dev/null +++ b/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +using Azure.Provisioning.Expressions; + +namespace Azure.Provisioning.Storage; + +// Customize the generated FileService resource. +public partial class QueueService +{ + /// + /// Get the default value for the Name property. + /// + private partial BicepValue GetNameDefaultValue() => + new StringLiteralExpression("default"); +} diff --git a/sdk/provisioning/Generator/src/Specifications/StorageSpecification.cs b/sdk/provisioning/Generator/src/Specifications/StorageSpecification.cs index 917bdc01eb23..0715bfd43f59 100644 --- a/sdk/provisioning/Generator/src/Specifications/StorageSpecification.cs +++ b/sdk/provisioning/Generator/src/Specifications/StorageSpecification.cs @@ -34,6 +34,7 @@ protected override void Customize() CustomizeProperty("Name", p => { p.GenerateDefaultValue = true; p.HideAccessors = true; p.IsReadOnly = false; }); // must be `default` AddNameRequirements(min: 3, max: 63, lower: true, digits: true, hyphen: true); AddNameRequirements(min: 3, max: 63, lower: true, upper: true, digits: true); + CustomizeProperty("Name", p => { p.GenerateDefaultValue = true; p.HideAccessors = true; p.IsReadOnly = false; }); // must be `default` // Roles Roles.Add(new Role("StorageAccountBackupContributor", "e5e2a7ff-d759-4cd2-bb51-3152d37e2eb1", "Lets you perform backup and restore operations using Azure Backup on the storage account.")); From d65be5e16e94e3314149f08eae9971bedd763eb3 Mon Sep 17 00:00:00 2001 From: Ken Ross Date: Mon, 28 Apr 2025 17:42:17 +0100 Subject: [PATCH 2/5] Updated API for Azure.Provisioning.Storage (via Export-API.ps1) --- .../api/Azure.Provisioning.Storage.net8.0.cs | 1 - .../api/Azure.Provisioning.Storage.netstandard2.0.cs | 1 - 2 files changed, 2 deletions(-) diff --git a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs index 050de2f683d2..42ccee21cccb 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs @@ -781,7 +781,6 @@ public partial class QueueService : Azure.Provisioning.Primitives.ProvisionableR public QueueService(string bicepIdentifier, string? resourceVersion = null) : base (default(string), default(Azure.Core.ResourceType), default(string)) { } public Azure.Provisioning.BicepList CorsRules { get { throw null; } set { } } public Azure.Provisioning.BicepValue Id { get { throw null; } } - public Azure.Provisioning.BicepValue Name { get { throw null; } } public Azure.Provisioning.Storage.StorageAccount? Parent { get { throw null; } set { } } public Azure.Provisioning.Resources.SystemData SystemData { get { throw null; } } protected override void DefineProvisionableProperties() { } diff --git a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs index 050de2f683d2..42ccee21cccb 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs @@ -781,7 +781,6 @@ public partial class QueueService : Azure.Provisioning.Primitives.ProvisionableR public QueueService(string bicepIdentifier, string? resourceVersion = null) : base (default(string), default(Azure.Core.ResourceType), default(string)) { } public Azure.Provisioning.BicepList CorsRules { get { throw null; } set { } } public Azure.Provisioning.BicepValue Id { get { throw null; } } - public Azure.Provisioning.BicepValue Name { get { throw null; } } public Azure.Provisioning.Storage.StorageAccount? Parent { get { throw null; } set { } } public Azure.Provisioning.Resources.SystemData SystemData { get { throw null; } } protected override void DefineProvisionableProperties() { } From 1cb408969e2b138b8e6934fb8c7f94a8d0b1b4df Mon Sep 17 00:00:00 2001 From: Arcturus Zhang Date: Thu, 8 May 2025 11:22:00 +0800 Subject: [PATCH 3/5] add back the missing api --- .../api/Azure.Provisioning.Storage.net8.0.cs | 1 + .../api/Azure.Provisioning.Storage.netstandard2.0.cs | 1 + .../Azure.Provisioning.Storage/src/QueueService.cs | 8 ++++++++ 3 files changed, 10 insertions(+) diff --git a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs index 42ccee21cccb..050de2f683d2 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.net8.0.cs @@ -781,6 +781,7 @@ public partial class QueueService : Azure.Provisioning.Primitives.ProvisionableR public QueueService(string bicepIdentifier, string? resourceVersion = null) : base (default(string), default(Azure.Core.ResourceType), default(string)) { } public Azure.Provisioning.BicepList CorsRules { get { throw null; } set { } } public Azure.Provisioning.BicepValue Id { get { throw null; } } + public Azure.Provisioning.BicepValue Name { get { throw null; } } public Azure.Provisioning.Storage.StorageAccount? Parent { get { throw null; } set { } } public Azure.Provisioning.Resources.SystemData SystemData { get { throw null; } } protected override void DefineProvisionableProperties() { } diff --git a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs index 42ccee21cccb..050de2f683d2 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/api/Azure.Provisioning.Storage.netstandard2.0.cs @@ -781,6 +781,7 @@ public partial class QueueService : Azure.Provisioning.Primitives.ProvisionableR public QueueService(string bicepIdentifier, string? resourceVersion = null) : base (default(string), default(Azure.Core.ResourceType), default(string)) { } public Azure.Provisioning.BicepList CorsRules { get { throw null; } set { } } public Azure.Provisioning.BicepValue Id { get { throw null; } } + public Azure.Provisioning.BicepValue Name { get { throw null; } } public Azure.Provisioning.Storage.StorageAccount? Parent { get { throw null; } set { } } public Azure.Provisioning.Resources.SystemData SystemData { get { throw null; } } protected override void DefineProvisionableProperties() { } diff --git a/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs b/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs index c320a394caaf..7faf1c4e9dcc 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs +++ b/sdk/provisioning/Azure.Provisioning.Storage/src/QueueService.cs @@ -13,4 +13,12 @@ public partial class QueueService /// private partial BicepValue GetNameDefaultValue() => new StringLiteralExpression("default"); + + /// + /// Gets the Name. + /// + public BicepValue Name + { + get { Initialize(); return _name!; } + } } From 15ca1fd4397b89326e1c1ccfe211967d919bc0c2 Mon Sep 17 00:00:00 2001 From: Arcturus Zhang Date: Thu, 8 May 2025 11:23:09 +0800 Subject: [PATCH 4/5] add changelog --- sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md b/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md index 9b1e0f0922fb..4a36a4a7d41f 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md +++ b/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md @@ -8,6 +8,8 @@ ### Bugs Fixed +- Fixed the `Name` of `QueueService` should always be `default`. (https://github.com/Azure/azure-sdk-for-net/issues/49898) + ### Other Changes ## 1.0.0 (2024-10-25) From 2b8b2043d8f3e4e1778ca17c0ed4965f9deedb7d Mon Sep 17 00:00:00 2001 From: Arcturus Zhang Date: Fri, 9 May 2025 15:41:12 +0800 Subject: [PATCH 5/5] update version to 1.0.1 --- sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md | 8 +------- .../src/Azure.Provisioning.Storage.csproj | 2 +- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md b/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md index 4a36a4a7d41f..767d710b3c67 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md +++ b/sdk/provisioning/Azure.Provisioning.Storage/CHANGELOG.md @@ -1,17 +1,11 @@ # Release History -## 1.1.0-beta.1 (Unreleased) - -### Features Added - -### Breaking Changes +## 1.0.1 (2025-05-15) ### Bugs Fixed - Fixed the `Name` of `QueueService` should always be `default`. (https://github.com/Azure/azure-sdk-for-net/issues/49898) -### Other Changes - ## 1.0.0 (2024-10-25) ### Features Added diff --git a/sdk/provisioning/Azure.Provisioning.Storage/src/Azure.Provisioning.Storage.csproj b/sdk/provisioning/Azure.Provisioning.Storage/src/Azure.Provisioning.Storage.csproj index d87bdeadd533..7da2ace4c32d 100644 --- a/sdk/provisioning/Azure.Provisioning.Storage/src/Azure.Provisioning.Storage.csproj +++ b/sdk/provisioning/Azure.Provisioning.Storage/src/Azure.Provisioning.Storage.csproj @@ -2,7 +2,7 @@ Azure.Provisioning.Storage simplifies declarative resource provisioning in .NET for Azure Storage. - 1.1.0-beta.1 + 1.0.1 1.0.0 $(RequiredTargetFrameworks)