Параметры извлечения из Конфигурация приложений с помощью Azure Pipelines

Задача Конфигурация приложений Azure извлекает пары "ключ-значение" из хранилища конфигурации приложений и задает их в качестве переменных конвейера Azure, которые могут использоваться последующими задачами. Эта задача дополняет задачу Отправка Конфигурации приложений Azure, которая передает пары "ключ-значение" из файла конфигурации в хранилище конфигурации приложений. Дополнительные сведения см. в статье Отправка параметров в Конфигурацию приложения с помощью Azure Pipelines.

Необходимые компоненты

Создание подключения службы

Подключение службы обеспечивает получение доступа к ресурсам в подписке Azure из проекта Azure DevOps.

  1. В Azure DevOps перейдите к проекту с целевым конвейером. В левом нижнем углу выберите Параметры проекта.

  2. В разделе Конвейеры выберите Подключения к службе. В правом верхнем углу выберите Новое подключение службы.

  3. В разделе Новое подключение службы выберите Azure Resource Manager.

    Screenshot shows selecting Azure Resource Manager from the New service connection dropdown list.

  4. В диалоговом окне Метод проверки подлинности выберите Субъект-служба (автоматически), чтобы создать новую субъект-службу или выберите Субъект-служба (вручную), чтобы использовать существующую субъект-службу.

  5. Введите подписку, группу ресурсов и имя подключения к службе.

Если вы создали новую субъект-службу, найдите имя субъект-службы, назначенной для подключения к службе. На следующем шаге мы добавим новое назначение роли этому субъекту-службе.

  1. Перейдите в раздел Параметры проекта>Подключения службы.

  2. Выберите новое подключение к службе.

  3. Выберите Управление субъектом-службой.

  4. Запишите значение, указанное в поле Отображаемое имя.

    Screenshot shows the service principal display name.

Добавление назначения роли

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

  1. Перейдите к целевому хранилищу Конфигураций приложений.

  2. В меню слева выберите Управление доступом (IAM).

  3. В области справа выберите Добавить назначения ролей.

    Screenshot shows the Add role assignments button.

  4. Для роли выберите средство чтения данных Конфигурация приложений. Эта роль позволяет задаче считывать сведения из хранилища Конфигураций приложений.

  5. Выберите субъект-службу, связанный с подключением службы, созданным в предыдущем разделе.

    Screenshot shows the Add role assignment dialog.

  6. Выберите Проверить + назначить.

  7. Если хранилище содержит ссылки на Key Vault, перейдите к соответствующим Key Vault и назначьте роль Пользователь секретов Key Vault субъекту-службе, созданному на предыдущем шаге. В меню Key Vault выберите Политики доступа и убедитесь, что в качестве модели разрешений выбрано Управление доступом на основе ролей Azure.

Использование в сборках

В этом разделе рассматривается использование задачи Конфигурации приложения Azure в конвейере сборки Azure DevOps.

  1. Перейдите на страницу конвейера сборки, щелкнув Pipelines>Pipelines. Документацию по конвейеру сборки см. в статье Создание первого конвейера.
    • Если создается новый конвейер сборки, на последнем шаге процесса на вкладке Просмотр выберите Показать помощника в правой части конвейера. Screenshot shows the Show assistant button for a new pipeline.
    • Если вы используете существующий конвейер сборки, нажмите кнопку Изменить в правом верхнем углу. Screenshot shows the Edit button for an existing pipeline.
  2. Найдите задачу Конфигурация приложений Azure. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  3. Настройте необходимые параметры для задачи, чтобы извлечь пары "ключ-значение" из хранилища конфигураций приложений. Описание параметров доступно в разделе Параметры ниже и в подсказках рядом с каждым параметром.
    • Присвойте параметру Подписка Azure имя подключения службы, созданного на предыдущем шаге.
    • Задайте для конечной точки Конфигурация приложений конечную точку хранилища Конфигурация приложений.
    • Для остальных параметров оставьте значения по умолчанию. Screenshot shows the app configuration task parameters.
  4. Сохраните сборку и добавьте ее в очередь. В журнале сборки отобразятся все ошибки, возникшие во время выполнения задачи.

Использование в выпусках

В этом разделе рассматривается использование задачи Конфигурации приложения Azure в конвейере выпуска Azure DevOps.

  1. Перейдите на страницу конвейера выпуска, выбрав пункт Конвейеры>Выпуски. Документацию по конвейеру выпуска см. в разделе Конвейеры выпуска.
  2. Выберите существующий конвейер выпуска. Если у вас его нет, щелкните Новый конвейер, чтобы создать новый.
  3. Нажмите кнопку Изменить в правом верхнем углу, чтобы изменить конвейер выпуска.
  4. В раскрывающемся списке Задачи выберите Этап, в который необходимо добавить задачу. Дополнительные сведения об этапах см. здесь. Screenshot shows the selected stage in the Tasks dropdown.
  5. Щелкните + рядом с заданием, к которому нужно добавить новую задачу. Screenshot shows the plus button next to the job.
  6. Найдите задачу Конфигурация приложений Azure. Screenshot shows the Add Task dialog with Azure App Configuration in the search box.
  7. Настройте необходимые параметры в задаче, чтобы извлечь пары "ключ-значение" из хранилища Конфигураций приложений. Описание параметров доступно в разделе Параметры ниже и в подсказках рядом с каждым параметром.
    • Присвойте параметру Подписка Azure имя подключения службы, созданного на предыдущем шаге.
    • Задайте для конечной точки Конфигурация приложений конечную точку хранилища Конфигурация приложений.
    • Для остальных параметров оставьте значения по умолчанию.
  8. Сохраните выпуск и добавьте его в очередь. В журнале выпусков отобразятся все ошибки, обнаруженные во время выполнения задачи.

Параметры

В задаче Конфигурации приложения Azure используются следующие параметры.

  • Подписка Azure: раскрывающийся список, содержащий доступные подключения служб Azure. Чтобы обновить список доступных подключений служб Azure, нажмите кнопку Обновить подписку Azure справа от текстового поля.
  • Конфигурация приложений Конечная точка: раскрывающийся список, который загружает доступные конфигурации хранит конечные точки в выбранной подписке. Чтобы обновить и обновить список доступных конечных точек хранилища конфигураций, нажмите кнопку "Обновить Конфигурация приложений конечную точку" справа от текстового поля.
  • Режим выбора: указывает, как выбраны ключ-значения из хранилища конфигурации. Режим выбора по умолчанию позволяет использовать фильтры ключей и меток. Режим выбора моментального снимка позволяет выбрать значения ключей из моментального снимка. Значение по умолчанию — Default.
  • Фильтр ключей: этот фильтр можно использовать для выбора пар "ключ-значение", запрашиваемых из Конфигурации приложения Azure. Символ "*" позволяет выбрать все пары "ключ-значение". Дополнительные сведения см. в разделе "Запрос ключей-значений".
  • Метка: указывает, какую метку следует использовать при выборе пар "ключ-значение" из хранилища Конфигураций приложений. Если метка не указана, будут извлечены пары "ключ-значение" без метки. Следующие символы не допускаются: , *.
  • Имя моментального снимка: указывает моментальный снимок, из которого необходимо получить значения ключей в Конфигурация приложений Azure.
  • Усечение префикса ключа: указывает один или несколько префиксов, которые должны быть обрезаны в ключах Конфигурации приложения перед их установкой в качестве переменных. Несколько префиксов можно разделить символом новой строки.
  • Отключить предупреждение для переопределенных ключей: значение по умолчанию не проверка. Указывает, следует ли отображать предупреждения при переопределении существующих ключей. Включите этот параметр, если ожидается, что значения ключей, загруженные из Конфигурация приложений, имеют перекрывающиеся ключи с тем, что существует в переменных конвейера.

Использование пар "ключ-значение" в последующих задачах

Пары "ключ-значение", полученные из Конфигурации приложения, устанавливаются в виде переменных конвейера, которые доступны как переменные среды. Ключом переменной среды — это ключ из пары "ключ-значение", который извлекается из Конфигурации приложения после усечения префикса, если он указан.

Например, если в последующей задаче выполняется сценарий PowerShell, он может использовать пару "ключ-значение" с ключом "myBuildSetting" следующим образом:

echo "$env:myBuildSetting"

Значение будет отображено в консоли.

Примечание.

Ссылки Azure Key Vault в Конфигурации приложения будут разрешены и установлены как секретные переменные. В конвейерах Azure секретные переменные скрываются из журнала. Они не передаются в задачи в виде переменных среды и вместо этого должны передаваться в качестве входных данных.

Устранение неполадок

При возникновении непредвиденной ошибки можно включить журналы отладки, задав для переменной конвейера system.debug значение true.

Вопросы и ответы

Как создать конфигурацию из нескольких ключей и меток?

Иногда может потребоваться, чтобы конфигурация состояла из нескольких меток, например "по умолчанию" и "разработка". Для реализации этого сценария можно использовать несколько задач Конфигурации приложения в одном конвейере. Пары "ключ-значение", полученные задачей на более позднем этапе, переопределят все значения, полученные на предыдущих этапах. В приведенном выше примере задача может использоваться для выбора пары "ключ-значение" с меткой по умолчанию, а вторая задача может выбрать пару "ключ-значение" с меткой "dev". Ключи с меткой "dev" будут переопределять те же ключи с меткой по умолчанию.