jobs.template definition
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.
jobs:
- template: string # Required as first property. Reference to a template for this deployment.
parameters: # Parameters used in a deployment template
string: string # Name/value pairs.
Properties that use this definition: jobs
Properties
template
string
Required as first parameter. Reference to a template for this deployment.parameters
string name/value pairs
Parameters used in a deployment template.jobs:
- template: string # Required as first property. Reference to a template for this deployment.
parameters: # Parameters used in a deployment template
string: string # Name/value pairs.
Properties that use this definition: jobs
Properties
template
string
Required as first parameter. Reference to a template for this deployment.parameters
string name/value pairs
Parameters used in a deployment template.jobs:
- template: string # Required as first property. Reference to a template for this deployment.
parameters: # Parameters used in a deployment template
string: string # Name/value pairs.
Properties that use this definition: jobs
Properties
template
string
Required as first parameter. Reference to a template for this deployment.parameters
string name/value pairs
Parameters used in a deployment template.jobs:
- template: string # Required as first property. Reference to a template for this deployment.
parameters: # Parameters used in a deployment template
string: string # Name/value pairs.
Properties that use this definition: jobs
Properties
template
string
Required as first parameter. Reference to a template for this deployment.parameters
string name/value pairs
Parameters used in a deployment template.Remarks
In the main pipeline:
- template: string # name of template to include
parameters: { string: any } # provided parameters
In the included template:
parameters: { string: any } # expected parameters
jobs: [ job ]
Examples
In this example, a single job is repeated on three platforms. The job itself is specified only once.
# File: jobs/build.yml
parameters:
name: ''
pool: ''
sign: false
jobs:
- job: ${{ parameters.name }}
pool: ${{ parameters.pool }}
steps:
- script: npm install
- script: npm test
- ${{ if eq(parameters.sign, 'true') }}:
- script: sign
# File: azure-pipelines.yml
jobs:
- template: jobs/build.yml # Template reference
parameters:
name: macOS
pool:
vmImage: macOS-latest
- template: jobs/build.yml # Template reference
parameters:
name: Linux
pool:
vmImage: ubuntu-latest
- template: jobs/build.yml # Template reference
parameters:
name: Windows
pool:
vmImage: windows-latest
sign: true # Extra step on Windows only
Feedback
Submit and view feedback for