YAML 스키마 정의 인덱스
pipeline
파이프라인은 CI/CD 프로세스를 설명하는 하나 이상의 단계입니다.
extends
템플릿을 사용하여 파이프라인을 확장합니다.
jobs
작업 목록은 스테이지의 작업을 구성하는 작업을 지정합니다.
jobs.deployment
배포 작업은 특별한 유형의 작업입니다. 환경에 대해 순차적으로 실행하는 단계의 컬렉션입니다.
jobs.deployment.environment
키워드는 environment 파이프라인의 배포 작업의 대상이 되는 환경 또는 해당 리소스를 지정합니다.
jobs.deployment.strategy
배포 전략을 사용하면 업데이트가 제공되는 방법을 구성할 수 있습니다.
jobs.deployment.strategy.canary
카나리아 배포 전략은 서버의 작은 하위 집합에 대한 변경 내용을 롤아웃합니다.
jobs.deployment.strategy.rolling
롤링 배포는 이전 버전의 애플리케이션 인스턴스를 각 반복의 고정된 가상 머신 집합(롤링 세트)에 있는 새 버전의 애플리케이션 인스턴스로 바꿉니다.
jobs.deployment.strategy.runOnce
runOnce 배포 전략은 각 단계를 한 번 실행하여 변경 내용을 롤아웃합니다.
jobs.job
작업은에이전트 또는 서버에서 실행하는 단계의 컬렉션입니다.
jobs.job.container
컨테이너 작업을 사용하면 에이전트 호스트 대신 컨테이너에서 작업을 실행할 수 있습니다.
jobs.job.strategy
및 parallel 키워드는 matrix 작업을 복제하기 위한 상호 배타적 전략을 지정합니다.
jobs.template
한 개 파일에 일련의 작업을 정의하고 다른 파일에서 여러 번 사용할 수 있습니다. 작업 템플릿 작업에 대한 자세한 내용은 템플릿을 참조하세요.
parameters
매개 변수 목록은 파이프라인에 전달되는 런타임 매개 변수를 지정합니다.
parameters.name
매개 변수는 파이프라인에 전달된 값을 나타냅니다.
풀
키워드는 pool 파이프라인 작업에 사용할 풀 을 지정합니다. 사양에는 pool 작업의 실행 전략에 대한 정보도 있습니다.
홍보
끌어오기 요청 트리거는 끌어오기 요청 빌드를 실행하는 분기를 지정합니다.
resources
리소스는 파이프라인에서 사용하는 빌드, 리포지토리, 파이프라인 및 기타 리소스를 지정합니다.
resources.builds
파이프라인에서 참조하는 빌드 리소스 목록입니다.
resources.builds.build
아티팩트를 생성하는 외부 CI 빌드 시스템이 있는 경우 빌드 리소스와 함께 아티팩트를 사용할 수 있습니다.
resources.containers
파이프라인에서 참조하는 컨테이너 리소스 목록입니다.
resources.containers.container
컨테이너 리소스는 컨테이너 이미지를 참조합니다.
resources.packages
파이프라인에서 참조하는 패키지 리소스 목록입니다.
resources.packages.package
YAML 파이프라인에서 NuGet 및 npm GitHub 패키지를 리소스로 사용할 수 있습니다. When specifying package resources, set the package as NuGet or npm.
resources.pipelines
파이프라인에서 참조하는 파이프라인 리소스 목록입니다.
resources.pipelines.pipeline
아티팩트를 생성하는 Azure Pipeline이 있는 경우 파이프라인은 파이프라인 리소스를 정의하여 아티팩트를 사용할 수 있습니다. Azure DevOps Server 2020 이상에서는 파이프라인 리소스를 사용하여 파이프라인 완료 트리거를 사용하도록 설정할 수도 있습니다.
resources.repositories
파이프라인에서 참조하는 리포지토리 리소스 목록입니다.
resources.repositories.repository
키워드를 repository 사용하면 외부 리포지토리를 지정할 수 있습니다.
resources.webhooks
파이프라인에서 참조하는 웹후크 리소스 목록입니다.
resources.webhooks.webhook
웹후크 리소스를 사용하면 파이프라인을 외부 서비스와 통합하여 워크플로를 자동화할 수 있습니다.
resources.webhooks.webhook.filters
웹후크 이벤트에 대한 트리거를 사용자 지정하는 데 사용되는 필터입니다.
resources.webhooks.webhook.filters.path
웹후크 필터는 웹후크 이벤트에 대한 트리거를 사용자 지정하는 데 사용됩니다.
schedules
일정 목록은 파이프라인에 대한 예약된 트리거를 지정합니다.
schedules.cron
예약된 트리거는 분기가 빌드되는 일정을 지정합니다.
단계
단계는 관련 작업의 컬렉션입니다.
stage.stage
단계는 관련 작업의 컬렉션입니다. 기본적으로 단계는 순차적으로 실행됩니다. 속성을 통해 dependsOn 달리 지정하지 않는 한 각 단계는 이전 단계가 완료된 후에만 시작됩니다.
stages.template
한 개 파일에 일련의 단계를 정의하고 다른 파일에서 여러 번 사용할 수 있습니다.
steps
단계는 작업을 구성하는 작업의 선형 시퀀스입니다.
steps.bash
이 단계에서는 bash Windows, macOS 및 Linux의 Bash에서 스크립트를 실행합니다.
steps.checkout
파이프라인이 소스 코드를 체크 아웃하는 방법을 구성하는 데 사용합니다 checkout .
steps.download
이 단계에서는 download 현재 실행과 연결된 아티팩트 또는 파이프라인 리소스로 연결된 다른 Azure Pipeline에서 다운로드합니다.
steps.downloadBuild
이 단계에서는 downloadBuild 빌드 아티팩트 다운로드합니다.
steps.getPackage
이 단계에서는 getPackage Azure Artifacts 또는 Azure DevOps Server 패키지 관리 피드에서 패키지를 다운로드합니다.
steps.powershell
이 단계에서는 powershell Windows PowerShell 스크립트를 실행합니다.
steps.publish
키워드는 publish 파일 또는 폴더를 다른 작업 및 파이프라인에서 사용할 수 있는 파이프라인 아티팩트로 게시(업로드)합니다.
steps.pwsh
이 단계에서는 pwsh Windows, macOS 및 Linux의 PowerShell Core에서 스크립트를 실행합니다.
steps.reviewApp
단계 다운로드는 reviewApp 배포 단계 공급자에서 동적으로 리소스를 만듭니다.
steps.script
이 단계에서는 script 다른 플랫폼의 Windows 및 Bash에서 cmd.exe 사용하여 스크립트를 실행합니다.
steps.task
단계에서 task 작업을 실행합니다.
steps.template
한 개 파일에 일련의 단계를 정의하고 다른 파일에서 여러 번 사용할 수 있습니다.
대상
태스크는 에이전트 호스트 또는 컨테이너인 실행 컨텍스트에서 실행됩니다.
target.settableVariables
한 단계로 설정할 수 있는 변수입니다.
trigger
푸시 트리거는 연속 통합 빌드를 실행하는 분기를 지정합니다.
variables
파이프라인에서 사용할 변수를 정의합니다.
variables.group
변수 그룹의 변수를 참조합니다.
variables.name
전체 구문을 사용하여 변수를 정의합니다.
variables.template
한 개 파일에 변수 집합을 정의하고 다른 파일에서 여러 번 사용할 수 있습니다.
YAML 스키마 설명서 규칙
YAML 스키마 참조는 Azure Pipelines YAML 파이프라인에 대한 자세한 참조 가이드입니다. 여기에는 지원되는 모든 YAML 기능의 카탈로그와 사용 가능한 옵션이 포함됩니다.
YAML 스키마 참조에 사용되는 구문 규칙은 다음과 같습니다.
왼쪽 : 에는 파이프라인 정의에 사용되는 리터럴 키워드가 있습니다.
:의 오른쪽은 데이터 형식입니다. 데이터 형식은 문자열 과 같은 기본 형식이거나 이 참조의 다른 곳에서 정의된 풍부한 구조체에 대한 참조일 수 있습니다.
표기법 [데이터 형식] 은 언급된 정의 형식의 배열을 나타냅니다. 예를 들어 [ string ] 문자열 배열입니다.
표기법 {데이터 형식데이터 형식}:은 한 데이터 형식과 다른 데이터 형식의 매핑을 나타냅니다. 예를 들어 { string: string } 문자열을 문자열에 매핑하는 경우입니다.
기호 | 는 키워드에 사용할 수 있는 여러 데이터 형식이 있음을 나타냅니다. 예를 들어 job | template 작업 정의 또는 템플릿 참조가 허용됨을 의미합니다.
YAML schema definition index
pipeline
A pipeline is one or more stages that describe a CI/CD process.
extends
Extends a pipeline using a template.
jobs
The jobs list specifies the jobs that make up the work of a stage.
jobs.deployment
A deployment job is a special type of job. It's a collection of steps to run sequentially against the environment.
jobs.deployment.environment
The environment keyword specifies the environment or its resource that is targeted by a deployment job of the pipeline.
jobs.deployment.strategy
A deployment strategy enables you to configure how the update is delivered.
jobs.deployment.strategy.canary
Canary deployment strategy rolls out changes to a small subset of servers.
jobs.deployment.strategy.rolling
A rolling deployment replaces instances of the previous version of an application with instances of the new version of the application on a fixed set of virtual machines (rolling set) in each iteration.
jobs.deployment.strategy.runOnce
The runOnce deployment strategy rolls out changes by executing each of its steps one time.
jobs.job
A job is a collection of steps run by an agent or on a server.
jobs.job.container
Container jobs allow you to run jobs on a container instead of the agent host.
jobs.job.strategy
The matrix and parallel keywords specify mutually exclusive strategies for duplicating a job.
jobs.template
You can define a set of jobs in one file and use it multiple times in other files. See templates for more about working with job templates.
parameters
The parameters list specifies the runtime parameters passed to a pipeline.
parameters.name
A parameter represents a value passed to a pipeline.
pool
The pool keyword specifies which pool to use for a job of the pipeline. A pool specification also holds information about the job's strategy for running.
pr
A pull request trigger specifies which branches cause a pull request build to run.
resources
Resources specifies builds, repositories, pipelines, and other resources used by the pipeline.
resources.builds
List of build resources referenced by the pipeline.
resources.builds.build
If you have an external CI build system that produces artifacts, you can consume artifacts with a build resource.
resources.containers
List of container resources referenced by the pipeline.
resources.containers.container
A container resource references a container image.
resources.packages
List of package resources referenced by the pipeline.
resources.packages.package
You can consume NuGet and npm GitHub packages as a resource in YAML pipelines. When specifying package resources, set the package as NuGet or npm.
resources.pipelines
List of pipeline resources referenced by the pipeline.
resources.pipelines.pipeline
If you have an Azure Pipeline that produces artifacts, your pipeline can consume the artifacts by defining a pipeline resource. In Azure DevOps Server 2020 and higher, you can also enable pipeline completion triggers using a pipeline resource.
resources.repositories
List of repository resources referenced by the pipeline.
resources.repositories.repository
The repository keyword lets you specify an external repository.
resources.webhooks
List of webhook resources referenced by the pipeline.
resources.webhooks.webhook
A webhook resource enables you to integrate your pipeline with an external service to automate the workflow.
resources.webhooks.webhook.filters
Filters used to customize the triggers for a webhook event.
resources.webhooks.webhook.filters.path
A webhook filter is used to customize the triggers for a webhook event.
schedules
The schedules list specifies the scheduled triggers for the pipeline.
schedules.cron
A scheduled trigger specifies a schedule on which branches are built.
stages
Stages are a collection of related jobs.
stages.stage
Stages are a collection of related jobs. By default, stages run sequentially. Each stage starts only after the preceding stage is complete unless otherwise specified via the dependsOn property.
stages.template
You can define a set of stages in one file and use it multiple times in other files.
steps
Steps are a linear sequence of operations that make up a job.
steps.bash
The bash step runs a script in Bash on Windows, macOS, and Linux.
steps.checkout
Use checkout to configure how the pipeline checks out source code.
steps.download
The download step downloads artifacts associated with the current run or from another Azure Pipeline that is associated as a pipeline resource.
steps.downloadBuild
The downloadBuild step downloads build artifacts.
steps.getPackage
The getPackage step downloads a package from a package management feed in Azure Artifacts or Azure DevOps Server.
steps.powershell
The powershell step runs a script in Windows PowerShell.
steps.publish
The publish keyword publishes (uploads) a file or folder as a pipeline artifact that other jobs and pipelines can consume.
steps.pwsh
The pwsh step runs a script in PowerShell Core on Windows, macOS, and Linux.
steps.reviewApp
The reviewApp step downloads creates a resource dynamically under a deploy phase provider.
steps.script
The script step runs a script using cmd.exe on Windows and Bash on other platforms.
steps.task
A task step runs a task.
steps.template
You can define a set of steps in one file and use it multiple times in another file.
target
Tasks run in an execution context, which is either the agent host or a container.
target.settableVariables
Variables that can be set by a step.
trigger
A push trigger specifies which branches cause a continuous integration build to run.
variables
Define variables to use in your pipeline.
variables.group
Reference variables from a variable group.
variables.name
Define variables using the full syntax.
variables.template
You can define a set of variables in one file and use it multiple times in other files.