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/dev-box/how-to-configure-customization-tasks.md
+16-28Lines changed: 16 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,8 +6,9 @@ ms.author: rosemalcolm
6
6
ms.service: dev-box
7
7
ms.custom:
8
8
- ignite-2024
9
+
- ai-usage: ai-assisted
9
10
ms.topic: how-to
10
-
ms.date: 11/05/2024
11
+
ms.date: 02/06/2026
11
12
12
13
#customer intent: As a Dev Center Admin or Project Admin, I want to create additional tasks in a catalog so that I can create a specific customization in a customization or image definition file.
13
14
---
@@ -16,19 +17,6 @@ ms.date: 11/05/2024
16
17
17
18
When you create tasks for Microsoft Dev Box customizations, you can define specific actions for your dev boxes to help ensure a consistent and efficient development environment. Creating new tasks in a catalog allows you to define reusable components tailored to your development teams and add guardrails around the configurations that are possible. This article guides you through creating a catalog for customization tasks, adding tasks, and attaching the catalog to a dev center or project.
18
19
19
-
## Prerequisites
20
-
21
-
To complete the steps in this article, you must have:
22
-
23
-
- A dev center configured with a dev box project.
24
-
- An existing catalog in GitHub or Azure Repos.
25
-
26
-
## Permissions required to configure customizations
A task performs a specific action, like installing software. Each task consists of one or more PowerShell scripts, along with a task.yaml file that provides parameters and defines how the scripts run. You can also include a PowerShell command in the task.yaml file.
33
21
34
22
You can store a collection of curated tasks in a catalog attached to your dev center, with each task in a separate folder. Dev Box supports using a GitHub repository or an Azure Repos repository as a catalog. Dev Box scans a specified folder of the catalog recursively to find task definitions.
@@ -43,6 +31,15 @@ Microsoft provides a quickstart catalog to help you get started with customizati
43
31
- Configure applications like installing Visual Studio extensions.
44
32
- Run PowerShell scripts.
45
33
34
+
## Prerequisites
35
+
36
+
To complete the steps in this article, you must have:
37
+
38
+
- A dev center configured with a dev box project.
39
+
- An existing catalog in GitHub or Azure Repos.
40
+
41
+
For permissions required to configure customizations, see [Permissions for customizations](concept-what-are-dev-box-customizations.md#permissions-for-customizations).
42
+
46
43
## Create tasks in a catalog
47
44
48
45
Tasks, such as installing software or running scripts, are organized into a catalog. You create and manage tasks in a catalog, define new tasks, and attach your catalog to a dev center. With Microsoft's quickstart catalog, you can get started with common tasks like installing software, deploying DSC, cloning repositories, and configuring applications.
@@ -57,27 +54,18 @@ To create and manage tasks for Dev Box team customizations, follow these steps:
57
54
58
55
1. Attach your repository to your dev center as a catalog.
59
56
60
-
1. Create a configuration file for those tasks by following the steps in [Write a customization file](./how-to-write-customization-file.md).
57
+
1. Create a configuration file for those tasks by following the steps in [Configure team customizations](how-to-configure-team-customizations.md).
61
58
62
59
### Use secrets from an Azure key vault
63
60
64
-
You can use secrets from your Azure key vault in your YAML configurations to clone private repositories, or with any custom task you author that requires an access token.
65
-
66
-
Your dev center needs access to your key vault. DevCenter doesn't support service tags, so if your key vault is kept private, you must allow trusted Microsoft services to bypass the firewall.
67
-
68
-
To configure your key vault secrets for use in your YAML configurations:
69
-
70
-
1. Ensure that your dev center project's managed identity has the Key Vault Reader role and Key Vault Secrets User role on your key vault.
71
-
72
-
1. Grant the Key Vault Secrets User role for the key vault secret to each user or user group that should be able to consume the secret during the customization of a dev box. The user or group granted the role must include the managed identity for the dev center, your own user account, and any user or group that needs the secret during the customization of a dev box.
73
-
74
-
For more information on using key vault secrets in a customization file, see [Clone a private repository by using a customization file](how-to-customizations-connect-resource-repository.md#use-key-vault-secrets-in-customization-files).
61
+
You can use secrets from your Azure key vault in your YAML configurations to clone private repositories or run tasks that require an access token. For detailed configuration steps and examples, see [Connect to Azure resources or clone private repositories](how-to-customizations-connect-resource-repository.md).
75
62
76
63
## Attach a catalog
77
64
78
-
You can attach a catalog to a project to make tasks accessible to the developer team. To attach a catalog to a project, follow the steps in [Add and configure a catalog from GitHub or Azure Repos](../deployment-environments/how-to-configure-catalog.md).
65
+
You can attach a catalog to a project to make tasks accessible to the developer team. To attach a catalog to a project, follow the steps in [Add and manage catalogs in Microsoft Dev Box](how-to-configure-catalog.md).
79
66
80
67
## Related content
81
68
82
69
-[Microsoft Dev Box customizations](concept-what-are-dev-box-customizations.md)
83
-
-[Write a customization file for a dev box](./how-to-write-customization-file.md)
70
+
-[Configure team customizations](how-to-configure-team-customizations.md)
Copy file name to clipboardExpand all lines: articles/dev-box/how-to-configure-dev-center-imaging.md
+13-95Lines changed: 13 additions & 95 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,8 +7,9 @@ ms.reviewer: rosemalcolm
7
7
ms.service: dev-box
8
8
ms.custom:
9
9
- ignite-2024
10
+
- ai-usage: ai-assisted
10
11
ms.topic: how-to
11
-
ms.date: 11/11/2025
12
+
ms.date: 02/06/2026
12
13
13
14
#customer intent: As a Dev Center Admin or Project Admin, I want to configure dev box pools to use image definition files so that my development teams can create customized dev boxes.
14
15
---
@@ -25,53 +26,11 @@ In this article, you learn how to configure dev center imaging for your developm
25
26
26
27
To complete the steps in this article, you need:
27
28
28
-
- A team customization file that you want to use to create a dev box. If you don't have a customization file, see [Configure team customizations](how-to-configure-team-customizations.md).
29
+
- A dev center with a project and dev box pool. If you don't have one, see [Configure Microsoft Dev Box](quickstart-configure-dev-box-service.md).
30
+
- A catalog attached to your project with image definitions. If you don't have a catalog, see [Add and manage catalogs](how-to-configure-catalog.md).
31
+
- A team customization file (image definition) in your catalog. If you don't have one, see [Configure team customizations](how-to-configure-team-customizations.md).
29
32
30
-
## Permissions required to configure customizations
31
-
32
-
To perform the required actions for creating and applying customizations to a dev box, you need the following permissions:
33
-
34
-
| Action | Permission/Role |
35
-
| --- | --- |
36
-
| Enable project-level catalogs for a dev center. | Platform engineer with write access on the subscription. |
37
-
| Enable catalog sync settings for a project. | Platform engineer with write access on the subscription. |
38
-
| Attach a catalog to a project. | Project Admin or Contributor permissions on the project. |
39
-
| Add tasks to a catalog. | Permission to add to the repository that hosts the catalog. |
40
-
41
-
To manage a dev box pool, you need the following permissions:
42
-
43
-
| Action | Permission |
44
-
|---|---|
45
-
| Create, delete, or update a dev box pool. | - Owner or Contributor permissions on an Azure subscription or a specific resource group. </br>- DevCenter Owner permissions on the dev center. </br>- DevCenter Project Admin permissions for the project. |
46
-
47
-
## Enable project-level catalogs
48
-
49
-
To attach a catalog to a project, you must enable project-level catalogs. For more information, see [Add and manage catalogs in Microsoft Dev Box](how-to-configure-catalog.md).
50
-
51
-
## Configure catalog sync settings for the project
52
-
53
-
1. Sign in to the [Azure portal](https://portal.azure.com).
54
-
1. In the search box, enter **projects**. In the list of results, select **Projects**.
55
-
1. Open the Dev Box project for which you want to configure catalog sync settings.
56
-
1. Select **Catalogs**.
57
-
1. Select **Sync settings**.
58
-
59
-
:::image type="content" source="./media/how-to-configure-dev-center-imaging/customizations-project-sync-settings-small.png" alt-text="Screenshot of the Catalogs pane in the Azure portal, with the button for sync settings highlighted." lightbox="./media/how-to-configure-dev-center-imaging/customizations-project-sync-settings.png":::
60
-
61
-
1. On the **Sync settings** pane, select **Image definitions**, then select **Save**.
62
-
63
-
:::image type="content" source="./media/how-to-configure-dev-center-imaging/customizations-project-sync-image-definitions.png" alt-text="Screenshot of the pane for sync settings in the Azure portal, with the checkbox for image definitions highlighted." lightbox="./media/how-to-configure-dev-center-imaging/customizations-project-sync-image-definitions.png":::
64
-
65
-
## Attach a catalog that contains the definition file
66
-
67
-
Before you can use a customization file as an image definition, attach a catalog that contains the definition file to your project. The catalog can be from GitHub or Azure Repos. For more information, see [Add and configure a catalog from GitHub or Azure Repos](../dev-box/how-to-configure-catalog.md).
68
-
69
-
> [!NOTE]
70
-
> Image definitions are only supported at the project level. You must attach catalogs containing image definitions to a project, not to a dev center.
71
-
72
-
The **Image definitions** pane lists the image definitions that your project can access.
73
-
74
-
:::image type="content" source="media/how-to-configure-dev-center-imaging/team-customizations-image-definitions-small.png" alt-text="Screenshot of the Azure portal pane that lists accessible image definitions for a project." lightbox="media/how-to-configure-dev-center-imaging/team-customizations-image-definitions.png":::
33
+
For permissions required to configure customizations, see [Permissions for customizations](concept-what-are-dev-box-customizations.md#permissions-for-customizations).
75
34
76
35
## Build a reusable image
77
36
@@ -168,65 +127,24 @@ During the image build process, Dev Box creates a temporary storage account in y
168
127
> [!IMPORTANT]
169
128
> When an image is built from an image definition, a dev box is created to apply all the customizations and generate an image. By default, if no custom network is configured at the image definition level, the dev box is connected to a virtual network that Microsoft manages. Use the [network configuration](./reference-dev-box-customizations.md#networkconnection) property in image definitions for tasks that need access to on-premises or private resources to ensure that image generation is successful.
170
129
171
-
## Configure a dev box pool to use an image definition
172
-
173
-
To make customizations available to your development teams, configure a dev box pool to use an image definition. Store the customization file (imagedefinition.yaml) in a repository linked to a catalog in your project. When you specify the image definition for the pool, the customizations are applied to new dev boxes.
174
-
175
-
### Create a dev box pool
176
-
177
-
In Microsoft Dev Box, a dev box pool is a collection of dev boxes that you manage together. You must have at least one dev box pool before users can create a dev box.
178
-
179
-
The following steps show you how to create a dev box pool in a project.
180
-
181
-
If you don't have an available dev center and project, follow the steps in [Quickstart: Configure Microsoft Dev Box](quickstart-configure-dev-box-service.md) to create them.
182
-
183
-
1. Sign in to the [Azure portal](https://portal.azure.com).
184
-
185
-
1. In the search box, enter **projects**. In the list of results, select **Projects**.
186
-
187
-
1. Open the project where you want to create the dev box pool.
188
-
189
-
:::image type="content" source="./media/quickstart-configure-dev-box-service/select-project.png" alt-text="Screenshot that shows the list of existing projects." lightbox="./media/quickstart-configure-dev-box-service/select-project.png":::
190
130
191
-
1. Select **Dev box pools**, then select **Create**.
192
131
193
-
:::image type="content" source="./media/quickstart-configure-dev-box-service/create-pool.png" alt-text="Screenshot of an empty list of dev box pools within a project, along with selections to start creating a pool." lightbox="./media/quickstart-configure-dev-box-service/create-pool.png":::
194
-
195
-
1. On the **Create a dev box pool** pane, on the **Basics** tab, enter the following values:
196
-
197
-
| Setting | Value |
198
-
|---|---|
199
-
|**Name**| Enter a name for the pool. The pool name is visible to developers to select when they're creating dev boxes. The name must be unique within a project. |
200
-
|**Definition**| Select an **Image definition**. |
201
-
|**Compute**| Select the virtual machine size for the dev boxes in this pool. |
202
-
|**Storage**| Select the storage size for the dev boxes in this pool. |
203
-
|**Hibernation**| Shows whether hibernation is supported or not. |
204
-
|**Region**||
205
-
|**Network connection**| 1. Select **Deploy to a Microsoft hosted network**. </br>2. Select your desired deployment region for the dev boxes. Choose a region close to your expected dev box users for the optimal user experience. |
206
-
|**Licensing**| Select this checkbox to confirm that your organization has Azure Hybrid Benefit licenses that you want to apply to the dev boxes in this pool. |
132
+
## Configure a dev box pool to use an image definition
207
133
208
-
:::image type="content" source="./media/how-to-configure-dev-center-imaging/dev-box-pool-create-basics-hibernation-image.png" alt-text="Screenshot of the Basics pane for creating a dev box pool." lightbox="./media/how-to-configure-dev-center-imaging/dev-box-pool-create-basics-hibernation-image.png":::
134
+
To use an image definition, you must configure a devboxpool to reference it. When developers create dev boxes from the pool, the customizations from the image definition are applied automatically.
209
135
210
-
1. Select **Create**.
136
+
For detailed steps on creating a dev box pool with an image definition, see [Configure a dev box pool to use an image definition](how-to-configure-team-customizations.md#configure-a-dev-box-pool-to-use-an-image-definition).
211
137
212
-
####Hibernation support for dev boxes
138
+
### Hibernation support
213
139
214
140
Dev Box supports hibernation when both these conditions are met:
215
141
- The source image defined in the image definition supports hibernation.
216
142
- The compute resources of the dev box pool support hibernation.
217
143
218
-
If either the image or the pool doesn't support hibernation, the feature isn't available for dev boxes in that pool. If hibernation isn't supported, verify that the base image specified in your image definition is created with hibernation support and that the pool uses that image definition.
219
-
220
-
For more information about Dev Box support for hibernation, see [Configure hibernation in Microsoft Dev Box](how-to-configure-dev-box-hibernation.md).
221
-
222
-
### Create a dev box by using the developer portal
223
-
224
-
To verify that customizations are applied correctly, create a dev box in the Microsoft Dev Box developer portal. Follow the steps in [Quickstart: Create and connect to a dev box by using the Microsoft Dev Box developer portal](quickstart-create-dev-box.md), then connect to the newly created dev box and verify that the customizations work as expected.
225
-
226
-
You can make adjustments to the image definition and create a new dev box to test the changes. When the customizations are correct, you can build a reusable image from the image definition.
144
+
For more information, see [Configure hibernation in Microsoft Dev Box](how-to-configure-dev-box-hibernation.md).
227
145
228
146
## Related content
229
147
230
148
-[Microsoft Dev Box customizations](concept-what-are-dev-box-customizations.md)
231
-
-[Write a customization file for a dev box](./how-to-write-customization-file.md)
232
-
-[Add and configure a catalog from GitHub or Azure Repos](../deployment-environments/how-to-configure-catalog.md)
149
+
-[Configure team customizations](how-to-configure-team-customizations.md)
150
+
-[Add and configure a catalog from GitHub or Azure Repos](how-to-configure-catalog.md)
Copy file name to clipboardExpand all lines: articles/dev-box/how-to-configure-team-customizations.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -206,6 +206,9 @@ Set up your project to sync image definitions from the catalog. This setting let
206
206
207
207
To use an image definition file, attach the catalog containing the file to your project. This makes the image definition available for selection when configuring your dev box pools.
208
208
209
+
> [!NOTE]
210
+
> Image definitions are only supported at the project level. You must attach catalogs containing image definitions to a project, not to a dev center.
211
+
209
212
The **Image definitions** pane shows the image definitions your project can use.
210
213
211
214
:::image type="content" source="media/how-to-configure-team-customizations/team-customizations-image-definitions-small.png" alt-text="Screenshot of the Azure portal pane showing image definitions available for a project.":::
0 commit comments