Поделиться через


Настройка настроек команды

Функция настройки Microsoft Dev Box помогает упростить настройку облачных сред разработки. Начало работы разработчиков с новым проектом или с новой командой зачастую является сложным и трудоемким. С помощью настроек можно настроить готовые рабочие станции с приложениями, инструментами, репозиториями, библиотеками кода, пакетами и скриптами сборки. В этой статье описывается процесс создания, тестирования и редактирования файла определения изображения для поля разработки с помощью Visual Studio Code.

В Dev Box можно использовать два способа использования настроек. Настройки группы создают общую конфигурацию для команды разработчиков. Настройки пользователей создают личную конфигурацию для отдельного разработчика. В следующей таблице перечислены различия между двумя типами настроек.

Функция Настройки команды Настройки пользователей
Настроить на Пул виртуальных машин для разработки Поле разработки
Настройки применяются к Все поля разработки в пуле Отдельное поле разработки
Простой общий доступ Да нет
Имя файла настроек Imagedefinition.yaml myfilename.yaml или Workload.yaml
Получено из Каталог Загружено или из личного репозитория
Поддерживает секреты хранилища ключей Да Да

Предпосылки

Разрешения, необходимые для настройки настроек

Действие Разрешение или роль
Включите каталоги уровня проекта для центра разработки. Инженер платформы с правом записи в рамках подписки.
Включите параметры синхронизации каталога для проекта. Инженер платформы с правом записи в рамках подписки.
Присоедините каталог к проекту. Разрешения администратора проекта или участника Центра разработки для проекта.
Создайте файл определения изображения. Не указано. Любой пользователь может создать файл определения изображения.
Добавление задач в каталог. Разрешение на добавление в репозиторий, на котором размещен каталог.

Выбор источника для задач настройки

Вы можете создавать задачи Dev Box из задач, встроенных на платформу, или использовать пользовательские задачи, хранящиеся в каталоге. Выберите источник, который лучше всего соответствует вашим потребностям настройки и требованиям проекта.

  • Используйте встроенные задачи WinGet и PowerShell. Центры разработки Dev Box изначально поддерживают задачи PowerShell и WinGet. Вы можете приступить к работе с этими встроенными задачами. Если настройки требуют только PowerShell и WinGet, создайте файл настроек. Дополнительные сведения см. в разделе "Создание файла определения изображения".

    Задача, встроенная в WinGet, не является исполняемым файлом WinGet. Встроенная задача WinGet основана на командлете PowerShell WinGet.

  • Используйте каталог для определения пользовательских задач. Вы можете создать собственные пользовательские задачи. Чтобы сделать пользовательские задачи доступными для всей организации, подключите каталог, содержащий пользовательские определения задач в центре разработки. Dev Box поддерживает каталоги Azure Repos и GitHub. Так как задачи определены только в центре разработки, хранят задачи и определения изображений в отдельных репозиториях.

    Дополнительные сведения о том, как определить пользовательские задачи, см. в разделе "Настройка задач" для настроек Dev Box.

Создание определений изображений на уровне проекта

Проекты помогут эффективно управлять ресурсами Dev Box. Назначив каждой команде разработчиков свой собственный проект, вы можете эффективно упорядочивать ресурсы. Вы можете создать несколько определений изображений в репозитории каталога, каждая из которых содержит собственную папку, чтобы нацелиться на разные команды разработчиков в проекте.

Назначение разрешений администраторам проекта

Чтобы присоединить каталог к проекту, необходимо иметь разрешение администратора проекта или участника проекта. Сведения о назначении разрешения администратора проекта см. в статье Предоставление административного доступа к проектам Dev Box.

Включение каталогов на уровне проекта

Чтобы добавить каталог в проект, необходимо включить каталоги уровня проекта на уровне центра разработки. Чтобы разрешить использование каталогов уровня проекта на уровне центра разработки:

  1. Перейдите в центр разработки в портале Azure.

  2. В меню слева в разделе "Параметры" выберите параметры центра разработки.

  3. В разделе "Каталоги уровня проекта" выберите "Включить каталоги для каждого проекта" и нажмите кнопку "Применить".

    Снимок экрана: страница параметров центра разработки с открытой областью каталогов уровня проекта и выбранным параметром

Дополнительные сведения о добавлении каталогов в проекты см. в разделе "Добавление и настройка каталога" из GitHub или Azure Repos.

Создание файла определения изображения

Вы можете создавать и тестировать файлы определения изображений с помощью Visual Studio Code. Помимо использования встроенных задач, вы можете использовать расширение Dev Box в Visual Studio Code для обнаружения пользовательских задач, доступных в центре разработки.

  1. Создайте поле разработки (или используйте существующее поле разработки) для тестирования.

  2. В тестовом окне разработки установите Visual Studio Code и установите расширение Dev Box.

  3. Скачайте пример файла определения образа YAML из репозитория примеров. Откройте его в Visual Studio Code.

  4. Найдите задачи, доступные в каталоге, с помощью палитры команд. Выберите Вид>Палитра команд>Dev Box: Список доступных задач для этой Dev Box.

    Снимок экрана: палитра команд Visual Studio Code с выбранным параметром Dev Box: список доступных задач для этого поля разработки.

  5. Проверьте настройку в Visual Studio Code с помощью палитры команд. Выберите Просмотр>Палитра команд>Ящик разработчика: применить задачи настройки.

    Снимок экрана, показывающий палитру команд Visual Studio Code с выбранным параметром Dev Box:

  6. Файл определения образа запускается и применяет указанные задачи к тестовой среде разработки. Проверьте изменения и проверьте терминал Visual Studio Code для любых ошибок или предупреждений, созданных во время выполнения задачи.

  7. После успешного запуска файла определения изображения отправьте его в каталог.

Системные задачи и задачи пользователей

В файле определения образа можно использовать как системные, так и пользовательские задачи. Раздел задач файла определения изображения разделен на следующие разделы. Оба раздела используют одни и те же параметры на основе определений задач в каталоге.

  • Системные задачи: эти задачи выполняются как LocalSystem во время этапа подготовки поля разработки. Обычно они используются для конфигураций на уровне системы, таких как установка программного обеспечения или настройка параметров системы, требующих прав администратора.
  • Задачи пользователей: эти задачи выполняются от имени пользователя после первого входа пользователя в поле разработки. Обычно они используются для конфигураций на уровне пользователя, таких как установка приложений для конкретных пользователей или настройка параметров пользователя в контексте пользователя. Например, пользователи часто предпочитают устанавливать Python и Visual Studio Code в контексте пользователя вместо systemwide. Поместите задачи WinGet в раздел userTasks, чтобы повысить эффективность, если они не работают в рамках задач.

Стандартные пользователи, которые настраивают настройки пользователей, могут использовать только задачи пользователей. Они не могут использовать системные задачи.

Настройка поля разработки с помощью существующих файлов конфигурации требуемого состояния

Желаемая конфигурация состояния (DSC) — это платформа управления в PowerShell, которая позволяет управлять средой разработки с помощью конфигурации в виде кода. DSC можно использовать для определения требуемого состояния поля разработки, включая установку программного обеспечения, конфигурации и параметры.

Вы также можете использовать файлы конфигурации DSC для настройки поля разработки с помощью встроенной задачи WinGet.

В следующем примере показан файл определения образа поля разработки, вызывающий существующий файл WinGet DSC:

tasks:
    - name: winget
      parameters:
          configure: "projectConfiguration.dsc.yaml"

Дополнительные сведения см. в статье о конфигурации WinGet.

Настройка параметров синхронизации каталога для проекта

Настройте проект для синхронизации определений изображений из каталога. С помощью этого параметра можно использовать определения изображений в каталоге для создания пулов полей разработки.

  1. Войдите на портал Azure.

  2. В поле поиска введите projects. В списке результатов выберите Проекты.

  3. Откройте проект Dev Box, для которого необходимо настроить параметры синхронизации каталога.

  4. Выберите каталоги.

  5. Выберите параметры синхронизации.

    Снимок экрана, на котором показана панель каталогов на портале Azure с выделенной кнопкой настроек синхронизации.

  6. На панели параметров синхронизации выберите определения изображений и нажмите кнопку "Сохранить".

    Снимок экрана: панель параметров синхронизации на портале Azure с выделенным флажком для определений изображений.

Присоединение каталога, содержащего файл определения

Прежде чем использовать файл настройки в качестве определения образа, необходимо присоединить каталог, содержащий файл определения, в центр разработки или проект. Каталог может быть из GitHub или Azure Repos.

В области определений изображений перечислены определения изображений, к которым может получить доступ проект.

Снимок экрана: панель портала Azure, в которую перечислены определения доступных изображений для проекта.

Дополнительные сведения о присоединении каталогов см. в статье "Добавление и настройка каталога" из GitHub или Azure Repos.

Настройка пула полей разработки для использования определения образа

Сделайте настройки доступными для команд разработчиков, настроив пул средств разработки для использования файла настройки (imagedefinition.yaml). Сохраните файл настройки в репозитории, связанном с каталогом в центре разработки или проекте. Укажите этот файл в качестве определения образа для пула, а настройки применяются к новым полям разработки.

Ниже показано, как создать пул полей разработки и указать определение образа:

  1. Войдите на портал Azure.

  2. В поле поиска введите projects. В списке результатов выберите Проекты.

  3. Откройте проект Dev Box, с которым вы хотите связать новый пул средств разработки.

  4. Выберите пулы полей разработки и нажмите кнопку "Создать".

  5. В области «Создание пула рабочих сред разработки» введите следующие значения:

    Настройки Ценность
    Имя Введите имя пула. Имя пула отображается разработчикам для выбора при создании коробок разработки. Он должен быть уникальным в проекте.
    Определение В этом поле перечислены определения изображений из доступных каталогов и определений полей разработки. Выберите файл определения изображения.
    Сетевое подключение Выберите Развернуть в сети, управляемой Microsoft или используйте существующее сетевое подключение.
    Включить единый вход в систему Выберите «Да», чтобы включить единый вход для разработческих боксов в этом пуле. Единый вход должен быть настроен для организации. Дополнительные сведения см. в разделе "Включить единый вход" для полей разработки.
    Привилегии создателя среды разработки Выберите локальный администратор или стандартный пользователь.
    Включение автоматической остановки Да — значение по умолчанию. Выберите "Нет ", чтобы отключить расписание автостопирования. После создания пула можно настроить расписание автоматической остановки.
    Время остановки Выберите время для выключения всех серверов разработки в пуле.
    Часовой пояс Выберите часовой пояс, в который находится время остановки.
    Лицензирование Выберите этот флажок, чтобы подтвердить, что у вашей организации есть лицензии Azure Hybrid Benefit, которые вы хотите применить к ящикам для разработки в этом пуле.

    Снимок экрана: панель создания пула полей разработки.

  6. Нажмите кнопку "Создать".

  7. Убедитесь, что новый пул рабочих сред разработки появился в списке. Возможно, вам нужно обновить экран.

Создание поля разработки с помощью портала разработчика

Чтобы убедиться, что настройки из файла определения образа применяются, создайте поле разработки на портале разработчика Dev Box. Следуйте инструкциям в руководстве Quickstart: Создание и подключение к контейнеру разработки с помощью портала разработчика Dev Box. Затем подключитесь к созданному поле разработки и убедитесь, что настройки работают должным образом.

Вы можете внести изменения в файл настройки и создать новое поле разработки для тестирования изменений. Если вы уверены, что настройки правильны, вы можете создать повторно используемый образ.

Следующий шаг

Теперь, когда у вас есть файл определения изображения, отправьте его в каталог и вложите каталог в проект. Файл определения образа используется для настройки и создания полей разработки для команд разработчиков.