Skip to content
This repository was archived by the owner on Feb 23, 2024. It is now read-only.

Commit 787924f

Browse files
Fix - #393 - Product Group and Policy resources should use the product name if present. (#394)
Co-authored-by: RupengLiu <rliu1211@terpmail.umd.edu>
1 parent 3e3ea99 commit 787924f

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

src/APIM_ARMTemplate/apimtemplate/Creator/TemplateCreators/PolicyTemplateCreator.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,15 @@ public PolicyTemplateResource CreateAPIPolicyTemplateResource(APIConfig api, str
7474

7575
public PolicyTemplateResource CreateProductPolicyTemplateResource(ProductConfig product, string[] dependsOn)
7676
{
77+
if (string.IsNullOrEmpty(product.name))
78+
product.name = product.displayName;
79+
7780
Uri uriResult;
7881
bool isUrl = Uri.TryCreate(product.policy, UriKind.Absolute, out uriResult) && (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);
7982
// create policy resource with properties
8083
PolicyTemplateResource policyTemplateResource = new PolicyTemplateResource()
8184
{
82-
name = $"[concat(parameters('{ParameterNames.ApimServiceName}'), '/{product.displayName}/policy')]",
85+
name = $"[concat(parameters('{ParameterNames.ApimServiceName}'), '/{product.name}/policy')]",
8386
type = ResourceTypeConstants.ProductPolicy,
8487
apiVersion = GlobalConstants.APIVersion,
8588
properties = new PolicyTemplateProperties()

src/APIM_ARMTemplate/apimtemplate/Creator/TemplateCreators/ProductGroupTemplateCreator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public List<ProductGroupsValue> CreateProductGroupTemplateResources(ProductConfi
2727
string[] groupNames = product.groups.Split(", ");
2828
foreach (string groupName in groupNames)
2929
{
30-
ProductGroupsValue productAPITemplate = this.CreateProductGroupTemplateResource(groupName, product.displayName, dependsOn);
30+
ProductGroupsValue productAPITemplate = this.CreateProductGroupTemplateResource(groupName, product.name, dependsOn);
3131
productGroupTemplates.Add(productAPITemplate);
3232
}
3333
return productGroupTemplates;

src/APIM_ARMTemplate/apimtemplate/Creator/TemplateCreators/ProductTemplateCreator.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,6 @@ public Template CreateProductTemplate(CreatorConfig creatorConfig)
2828
List<TemplateResource> resources = new List<TemplateResource>();
2929
foreach (ProductConfig product in creatorConfig.products)
3030
{
31-
if (string.IsNullOrEmpty(product.name))
32-
product.name = product.displayName;
33-
3431
// create product resource with properties
3532
ProductsTemplateResource productsTemplateResource = new ProductsTemplateResource()
3633
{
@@ -54,15 +51,15 @@ public Template CreateProductTemplate(CreatorConfig creatorConfig)
5451
// create product policy resource that depends on the product, if provided
5552
if (product.policy != null)
5653
{
57-
string[] dependsOn = new string[] { $"[resourceId('Microsoft.ApiManagement/service/products', parameters('{ParameterNames.ApimServiceName}'), '{product.displayName}')]" };
54+
string[] dependsOn = new string[] { $"[resourceId('Microsoft.ApiManagement/service/products', parameters('{ParameterNames.ApimServiceName}'), '{product.name}')]" };
5855
PolicyTemplateResource productPolicy = this.policyTemplateCreator.CreateProductPolicyTemplateResource(product, dependsOn);
5956
resources.Add(productPolicy);
6057
}
6158

6259
// create product group resources if provided
6360
if (product.groups != null)
6461
{
65-
string[] dependsOn = new string[] { $"[resourceId('Microsoft.ApiManagement/service/products', parameters('{ParameterNames.ApimServiceName}'), '{product.displayName}')]" };
62+
string[] dependsOn = new string[] { $"[resourceId('Microsoft.ApiManagement/service/products', parameters('{ParameterNames.ApimServiceName}'), '{product.name}')]" };
6663
List<ProductGroupsValue> productGroups = this.productGroupTemplateCreator.CreateProductGroupTemplateResources(product, dependsOn);
6764
resources.AddRange(productGroups);
6865
}

0 commit comments

Comments
 (0)