You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/marketplace/azure-container-plan-technical-configuration-kubernetes.md
+5-2Lines changed: 5 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ For more, see [Prepare Azure Kubernetes technical assets](azure-container-techni
17
17
18
18
## Setting cluster extension type name
19
19
20
-
Cluster extensions enable an Azure Resource Manager driven experience for your application. The following limitations apply when setting the cluster extension type name value:
20
+
[Cluster extensions][cluster-extensions] enable an Azure Resource Manager driven experience for your application. The following limitations apply when setting the cluster extension type name value:
21
21
22
22
- You must provide the cluster extension type name in the format of 'PublisherName.ApplicationName'.
23
23
@@ -41,4 +41,7 @@ Select *Add CNAB Bundle* to select the payload reference like so:
41
41
## Next steps
42
42
43
43
- To **Co-sell with Microsoft** (optional), select it in the left-nav menu. For details, see [Co-sell partner engagement](/partner-center/co-sell-overview?context=/azure/marketplace/context/context).
44
-
- If you're not setting up either of these or you've finished, it's time to [Review and publish your offer](review-publish-offer.md).
44
+
- If you're not setting up either of these or you've finished, it's time to [Review and publish your offer](review-publish-offer.md).
Copy file name to clipboardExpand all lines: articles/marketplace/azure-container-technical-assets-kubernetes.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,6 +27,7 @@ In addition to your solution domain, your engineering team should have knowledge
27
27
- Working knowledge of [JSON](https://www.json.org/)
28
28
- Working knowledge of [Helm](https://www.helm.sh)
29
29
- Working knowledge of [createUiDefinition][createuidefinition]
30
+
- Working knowledge of [Azure Resource Manager (ARM) templates][arm-template-overview]
30
31
31
32
## Prerequisites
32
33
@@ -66,8 +67,13 @@ As part of the publishing process, Microsoft will deep copy your CNAB from your
66
67
67
68
Microsoft has created a first-party application responsible for handling this process with an `id` of `32597670-3e15-4def-8851-614ff48c1efa`. To begin, create a service principal based off of the application:
68
69
70
+
69
71
# [Linux](#tab/linux)
70
72
73
+
> [!NOTE]
74
+
> If your account doesn't have permission to create a service principal, `az ad sp create` will return an error message containing "Insufficient privileges to complete the operation". Contact your Azure Active Directory admin to create a service principal.
75
+
76
+
71
77
```azurecli-interactive
72
78
az login
73
79
az ad sp create --id 32597670-3e15-4def-8851-614ff48c1efa
@@ -90,7 +96,9 @@ Your output should look similar to the following:
90
96
...
91
97
```
92
98
93
-
Finally, create a role assignment to grant the service principal the ability to pull from your registry using the values you obtained earlier:
99
+
Next, create a role assignment to grant the service principal the ability to pull from your registry using the values you obtained earlier:
100
+
101
+
[!INCLUDE [Azure role assignment prerequisites](../../includes/role-based-access-control/prerequisites-role-assignments.md)]
94
102
95
103
```azurecli-interactive
96
104
az role assignment create --assignee <sp-id> --scope <registry-id> --role acrpull
@@ -110,6 +118,9 @@ az provider show -n Microsoft.PartnerCenterIngestion --subscription <subscriptio
110
118
111
119
# [Windows](#tab/windows)
112
120
121
+
> [!NOTE]
122
+
> If your account doesn't have permission to create a service principal, `New-AzADServicePrincipal` will return an error message containing "Insufficient privileges to complete the operation". Contact your Azure Active Directory admin to create a service principal.
@@ -178,20 +191,28 @@ Ensure the Helm chart adheres to the following rules:
178
191
179
192
- All image names and references are parameterized and represented in `values.yaml` as global.azure.images references. Update `deployment.yaml` to point these images. This ensures the image block can be updated and referenced by Azure Marketplace's ACR.
180
193
181
-
:::image type="content" source="./media/azure-container/billing-identifier.png" alt-text="A screenshot of a properly formatted values.yaml file is shown. It resembles the sample values.yaml file linked from this article.":::
194
+
:::image type="content" source="./media/azure-container/image-references.png" alt-text="A screenshot of a properly formatted deployment.yaml file is shown. The parameterized image references are shown, resembling the content in the sample deployment.yaml file linked in this article.":::
182
195
183
196
- If you have any subcharts, extract the content under charts and update each of your dependent image references to point to the images included in the main chart's `values.yaml`.
184
197
185
198
- Images must use digests instead of tags. This ensures CNAB building is deterministic.
199
+
200
+
:::image type="content" source="./media/azure-container/billing-identifier.png" alt-text="A screenshot of a properly formatted values.yaml file is shown. The images are using digests. The content resembles the sample values.yaml file linked in this article.":::
186
201
187
202
### Make updates based on your billing model
188
203
189
204
After reviewing the billing models available, select one appropriate for your use case and complete the following steps:
190
205
191
206
- Add a billing identifier label and cpu cores request to your `deployment.yaml` file.
192
207
208
+
:::image type="content" source="./media/azure-container/billing-identifier-label.png" alt-text="A screenshot of a properly formatted billing identifier label in a deployment.yaml file. The content resembles the sample depoyment.yaml file linked in this article":::
209
+
210
+
:::image type="content" source="./media/azure-container/resources.png" alt-text="A screenshot of CPU resource requests in a deployment.yaml file. The content resembles the sample depoyment.yaml file linked in this article.":::
211
+
193
212
- Add a billing identifier value for `global.azure.billingidentifier` in `values.yaml`.
194
213
214
+
:::image type="content" source="./media/azure-container/billing-identifier-value.png" alt-text="A screenshot of a properly formatted values.yaml file, showing the global > azure > billingIdentifier field.":::
215
+
195
216
Note that at deployment time, the cluster extensions feature will replace the billing identifier value with the extension type name you provide while setting up plan details.
196
217
197
218
For examples configured to deploy the [Azure Voting App][azure-voting-app], see the following:
@@ -316,7 +337,7 @@ For an example of how to integrate `container-package-app` into an Azure Pipelin
0 commit comments