Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Благодаря этому обновлению мы улучшаем безопасность потоков переменными, доступными только для чтения. Кроме того, теперь можно определить выходные переменные в задачах в любом хуке жизненного цикла задания развертывания и использовать их в последующих шагах и заданиях на одном этапе.
Дополнительные сведения см. в списке компонентов ниже.
Функции
Общие сведения:
Azure Pipelines.
Замечание
Установка .NET 4.6.2 или более поздней версии требуется для правильной работы задач VSTest с агентами сборки.
- Переменные только для чтения
- Поддержка выходных переменных в задании развертывания
- Избегайте отката критических изменений
- Удаление старых образов в хостинг пулах Azure Pipelines
General
Restrict organization creation via Azure AD tenant policy (Ограничение создания организаций с помощью политики клиента Azure AD)
Администраторы Azure DevOps теперь могут использовать новую политику Azure AD. Эта политика позволит ограничить создание новых организаций Azure DevOps, подключенных к Azure Active Directory вашей компании. Дополнительные сведения о политике см. здесь.
Azure Pipelines (система конвейеров Azure)
Переменные только для чтения
Системные переменные были задокументированы как неизменяемые, но на практике они могут быть перезаписаны задачей, и последующие задачи автоматически используют новое значение. В этом обновлении мы усиливаем безопасность переменных конвейера, чтобы сделать системные переменные и переменные, определенные во время очереди, доступными только для чтения. Кроме того, можно сделать переменную YAML доступной только для чтения, помечая ее следующим образом.
variables:
- name: myVar
value: myValue
readonly: true
Поддержка выходных переменных в задании развертывания
Теперь можно определить выходные переменные в перехватчиках жизненного цикла задания развертывания и использовать их в других последующих шагах и заданиях на том же этапе.
При выполнении стратегий развертывания можно получить доступ к выходным переменным между заданиями с помощью следующего синтаксиса.
- Для стратегии runOnce :
$[dependencies.<job-name>.outputs['<lifecycle-hookname>.<step-name>.<variable-name>']] - Для канарной стратегии:
$[dependencies.<job-name>.outputs['<lifecycle-hookname>_<increment-value>.<step-name>.<variable-name>']] - Для последовательной стратегии:
$[dependencies.<job-name>.outputs['<lifecycle-hookname>_<resource-name>.<step-name>.<variable-name>']]
// Set an output variable in a lifecycle hook of a deployment job executing canary strategy
- deployment: A
pool:
vmImage: 'ubuntu-latest'
environment: staging
strategy:
canary:
increments: [10,20] # creates multiple jobs, one for each increment. Output variable can be referenced with this.
deploy:
steps:
- script: echo "##vso[task.setvariable variable=myOutputVar;isOutput=true]this is the deployment variable value"
name: setvarStep
- script: echo $(setvarStep.myOutputVar)
name: echovar
// Map the variable from the job
- job: B
dependsOn: A
pool:
vmImage: 'ubuntu-latest'
variables:
myVarFromDeploymentJob: $[ dependencies.A.outputs['deploy_10.setvarStep.myOutputVar'] ]
steps:
- script: "echo $(myVarFromDeploymentJob)"
name: echovar
Дополнительные сведения о настройке переменной вывода для нескольких заданий
Avoid rollback of critical changes (Предотвращение отката критических изменений)
В классических конвейерах выпуска обычно используются плановые развертывания для регулярных обновлений. Но если у вас есть критическое исправление, вы можете начать развертывание вручную вне сети. При этом старые выпуски продолжают оставаться запланированными. Это создало проблему, так как развертывание вручную будет отменено при возобновлении развертываний по расписанию. Многие из вас сообщили об этой проблеме, и теперь мы исправили ее. Вместе с исправлением все ранее запланированные развертывания в этой среде будут отменены, когда вы вручную начнёте новое развертывание. Это применимо только при выборе опции очереди как "Развернуть последнюю и отменить остальные".
Удаление старых изображений в пулах, размещенных в Azure Pipelines
23 марта 2020 г. мы удалим следующие образы из размещенных пулов Azure Pipelines.
- Windows Server 2012 R2 с Visual Studio 2015 (vs2015-win2012r2)
- Mac OS High Sierra 10.13 (macOS-10.13)
- Windows Server Core 1803 (win1803)
Удаляя эти образы, мы сможем более эффективно развертывать новые версии.
Дополнительные сведения об удалении этих образов см. в записи блога об удалении старых образов в размещенных пулах Azure Pipelines .
Дальнейшие шаги
Замечание
Эти функции будут развернуты в течение следующих двух-трех недель.
Перейдите к Azure DevOps и посмотрите.
Как предоставить отзыв
Мы хотели бы услышать то, что вы думаете об этих функциях. Используйте меню справки, чтобы сообщить о проблеме или указать предложение.
Вы также можете получить советы и ответы на ваши вопросы от сообщества на Stack Overflow.
Спасибо,
Vijay Machiraju