Skip to content

Commit 36f957a

Browse files
author
RoseHJM
committed
MDB - customizations concepts updates - it2
1 parent 820cdc2 commit 36f957a

File tree

1 file changed

+56
-56
lines changed

1 file changed

+56
-56
lines changed

articles/dev-box/concept-what-are-team-customizations.md

Lines changed: 56 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,18 @@ ms.date: 05/09/2025
1717
[!INCLUDE [note-build-2025](includes/note-build-2025.md)]
1818

1919

20-
Starting developers on a new project or team is often complex and time consuming. The Microsoft Dev Box customizations feature helps you streamline the setup of the developer environment. With customizations, you can configure ready-to-code workstations with the necessary applications, tools, repositories, code libraries, packages, and build scripts.
20+
Getting developers started on a new project or team is often complex and time consuming. The Microsoft Dev Box customizations feature helps you streamline the setup of the developer environment. With customizations, you can configure ready-to-code workstations with the necessary applications, tools, repositories, code libraries, packages, and build scripts.
2121

2222
Dev Box customizations let you:
2323
- Install the necessary tools and applications.
2424
- Enforce organizational security policies.
2525
- Ensure consistency across dev boxes.
2626

27-
Microsoft Dev Box offers two ways to use customizations. Team customizations are used to create a shared configuration for a team of developers. User customizations are used to create a personal configuration for an individual developer. The following table summarizes the differences between the two types of customizations.
27+
Microsoft Dev Box offers two ways to use customizations.
28+
29+
- *Team customizations* create a standard shared configuration for a team of developers in place of creating multiple standard or *golden* images for your teams.
30+
31+
- *User customizations* enable developers to create a configuration for their personal preferences. User customizations enable developers to store their configuration in a file and run it when they create a dev box, providing consistency across all their dev boxes.
2832

2933
| Feature | Team customizations | User customizations |
3034
|-----------------------------|---------------------------|---------------------------|
@@ -37,24 +41,25 @@ Microsoft Dev Box offers two ways to use customizations. Team customizations are
3741

3842
## What is a customization file?
3943

40-
Dev Box customizations use a YAML-formatted file to specify a list of tasks to apply from the dev center or a catalog when developers are creating a dev box. These tasks identify the catalog task and provide parameters like the name of the software to install. Developers create their own customization files or use shared ones.
41-
You can use secrets from your Azure key vault in your customization file to clone private repositories, or with any custom task you author that requires an access token.
44+
Dev Box customizations use a YAML-formatted file to specify a list of tasks to apply from the dev center or a catalog when developers are creating a dev box. These tasks identify the catalog task and provide parameters like the name of the software to install. Developers can create their own customization files or use a shared customization file.
45+
46+
You can use secrets from your Azure key vault in your customization file to clone private repositories, or with any custom task you author that requires an access token.
4247

4348
## What are tasks?
4449

45-
Dev Box customization tasks are wrappers for PowerShell scripts. You use them to define reusable components that your teams can use in their customizations.
46-
WinGet and PowerShell tasks are available through the platform, and new ones can be added through a catalog.
47-
Tasks run in either a system context or a user context after sign-in.
48-
Team customizations are defined by project admins and can use both custom and built-in tasks.
49-
User customizations can only use system tasks if the user is an administrator, or if the tasks are custom tasks preapproved by through a catalog.
50-
When you're creating tasks, determine which of them need to run in a system context and which of them can run in a user context (after sign-in).
51-
When creating tasks, determine which need to run in a system context and which run in a user context after sign-in.
50+
Dev Box customization tasks are wrappers for PowerShell scripts. You use them to define reusable components that your teams can use in their customizations. WinGet and PowerShell tasks are available through the platform, and new ones can be added through a catalog. Tasks can either be run in a system context, or a user context after login.
51+
- Team customizations are defined by project admins and can use both custom and built-in tasks.
52+
- User customizations can only use system tasks if the user is an administrator, or if the tasks are custom tasks pre-approved by through a catalog. Standard dev box users cannot run the built-in PowerShell and WinGet tasks in a system context, ensuring that there is no escalation of privilege.
53+
54+
When you're creating tasks, determine which need to run in a system context and which of them can run in a user context (after sign-in).
5255

5356
## Differences between team customizations and user customizations
5457

55-
Individual developers can upload a customization file when creating their dev box to control the development environment. Developers should use user customizations only for personal settings and apps. Tasks specified in the user customization file run only in the user context, after sign-in.
56-
Developers use user customizations only for personal settings and apps.
57-
Sharing common YAML files among developer teams is inefficient, leads to errors, and violates compliance policies. Dev Box team customizations allow developer team leads and IT admins to preconfigure customization files, eliminating the need for developers to find and upload these files when creating a dev box.
58+
Dev Box team customizations allow developer team leads and IT admins to preconfigure customization files for dev box pools, eliminating the need for developers to go through manual setup.
59+
60+
Microsoft recommends using team customizations to secure and standardize dev box deployments across a team. Sharing common YAML files among developer teams can be inefficient and lead to errors, as well as violate compliance policies.
61+
62+
In addition to team customizations, individual developers can upload a customization file when creating their dev box to control the development environment. Developers should use individual customizations only for personal settings and apps.
5863

5964
## How do customizations work?
6065
Team customization and user customizations are both YAML-based files that specify a list of tasks to apply when creating a dev box. Select the appropriate tab to learn more about how each type of customization works.
@@ -75,32 +80,28 @@ When you configure Dev Box team customizations for your organization, careful pl
7580

7681
To set up your Dev Box service to support team customizations, follow these steps:
7782

78-
1. **Configure your dev center**:
79-
1. Enable project-level catalogs.
80-
1. Assign permissions for project admins.
81-
82-
1. **Decide whether to use a catalog with custom reusable components**:
83-
1. **Built-in**:
84-
1. Use PowerShell or WinGet statements.
85-
1. **Catalog**:
86-
1. Host in Azure Repos or GitHub.
87-
1. Add tasks.
88-
1. Attach to a dev center.
89-
90-
1. **Create a customization file**:
91-
1. Create a YAML file named `imagedefinition.yaml`.
92-
93-
1. **Specify an image in a dev box pool**:
94-
1. Create or modify a dev box pool and specify `imagedefinition.yaml` as the image definition.
95-
96-
1. **Choose how you'll use the image definition**:
97-
1. Build the image each time you create a dev box.
98-
1. Optimize the image for team customizations.
99-
100-
1. **Create a dev box**:
101-
1. Use the developer portal to create your dev box from the configured pool.
102-
103-
For more information, see [Write an image definition file for Dev Box team customizations](how-to-write-image-definition-file.md).
83+
1. **Configure your dev center:**
84+
1. Enable project-level catalogs.
85+
1. Assign permissions for project admins.
86+
1. **Decide whether to use a catalog with custom reusable components:**
87+
- Built-in (provided by the platform):
88+
1. Use PowerShell or WinGet built-in tasks (starts with ~/). We recommend starting with the built-in tasks.
89+
- Your own catalog:
90+
1. Host in Azure Repos or GitHub.
91+
1. Add tasks.
92+
1. Attach to a dev center.
93+
1. **Create a customization file:**
94+
1. Create a customization file called imagedefinition.yaml.
95+
1. **Specify an image in a dev box pool:**
96+
1. Create or modify a dev box pool and specify imagedefinition.yaml as the image definition.
97+
1. **Choose how you'll use the image definition:**
98+
- Run the tasks in the image definition at the time of every dev box creation
99+
- Optimize your image definition into a custom image.
100+
1. **Create dev box:**
101+
1. Create your dev box from the configured pool by using the developer portal.
102+
103+
To learn more about team customization and writing image definitions, see [Write an image definition file for Dev Box team customizations](how-to-write-image-definition-file.md).
104+
Then, to learn how to optimize your image definition into a custom image, see [Configure imaging for Dev Box team customizations](how-to-configure-customization-imaging.md).
104105

105106
# [User customizations](#tab/user-customizations)
106107
### How do user customizations work?
@@ -112,22 +113,21 @@ Individual developers can attach a YAML-based customization file when creating t
112113

113114
To set up your Dev Box service to support user customizations, follow these steps:
114115

115-
1. **Use a PowerShell and WinGet tasks**:
116-
1. Platform supports PowerShell and WinGet.
117-
1. No catalog required.
118-
1. No further configuration required.
119-
120-
1. **Create a customization file**:
121-
1. Create a YAML-based customization file.
122-
123-
1. **Create a dev box**:
124-
1. Use the developer portal to create your dev box from the configured pool.
125-
1. Upload and validate your customization file during the dev box creation process.
126-
127-
1. **Dev box creation**:
128-
1. The dev box is created with the specified customizations.
129-
130-
For more information, see [Write a user customization file for a dev box](how-to-write-user-customization-file.md).
116+
1. **Decide whether to use a catalog with custom reusable components:**
117+
1. Built-in (provided by the platform):
118+
1. Use PowerShell or WinGet built-in tasks (starts with ~/). We recommend starting with the built-in tasks.
119+
1. Your own catalog:
120+
1. Host in Azure Repos or GitHub.
121+
1. Add tasks.
122+
1. Attach to a dev center.
123+
1. **Create a customization file:**
124+
1. Create a customization file.
125+
1. **Create dev box:**
126+
1. Create your dev box from the configured pool by using the developer portal.
127+
1. Upload and validate your customization file as you create your dev box.
128+
1. Dev box is created with customizations.
129+
130+
To learn more about user customizations, see [Write a user customization file for a dev box](how-to-write-user-customization-file.md).
131131

132132
---
133133

0 commit comments

Comments
 (0)