Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions eng/docker-tools/templates/jobs/build-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@ parameters:
matrix: {}
dockerClientOS: null
buildJobTimeout: 60
# Custom steps to set up ImageBuilder instead of pulling from MCR (e.g., bootstrap from source).
# Runs before ImageBuilder pull. If non-empty, skips the default ImageBuilder pull.
customInitSteps: []
# Custom steps that run after ImageBuilder is set up but before the build starts.
# Use for build-specific initialization (e.g., setting variables, additional setup).
customBuildInitSteps: []
publishConfig: null
versionsRepoRef: ""
noCache: false
Expand Down Expand Up @@ -36,6 +41,7 @@ jobs:
versionsRepoRef: ${{ parameters.versionsRepoRef }}
cleanupDocker: true
customInitSteps: ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
- template: /eng/docker-tools/templates/steps/set-image-info-path-var.yml@self
parameters:
publicSourceBranch: $(publicSourceBranch)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,15 @@ parameters:
- name: publishConfig
type: object
default: null
# Custom steps to set up ImageBuilder instead of pulling from MCR (e.g., bootstrap from source).
# Runs before ImageBuilder pull. If non-empty, skips the default ImageBuilder pull.
- name: customInitSteps
type: stepList
default: []
# Custom steps that run after ImageBuilder is set up but before copy-base-images runs.
- name: customCopyBaseImagesInitSteps
type: stepList
default: []
- name: additionalOptions
type: string
default: ''
Expand All @@ -28,6 +34,7 @@ jobs:
pool: ${{ parameters.pool }}
publishConfig: ${{ parameters.publishConfig }}
customInitSteps: ${{ parameters.customInitSteps }}
customCopyBaseImagesInitSteps: ${{ parameters.customCopyBaseImagesInitSteps }}
additionalOptions: ${{ parameters.additionalOptions }}
acr: ${{ parameters.publishConfig.InternalMirrorRegistry }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
7 changes: 7 additions & 0 deletions eng/docker-tools/templates/jobs/copy-base-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,15 @@ parameters:
- name: acr
type: object
default: null
# Custom steps to set up ImageBuilder instead of pulling from MCR (e.g., bootstrap from source).
# Runs before ImageBuilder pull. If non-empty, skips the default ImageBuilder pull.
- name: customInitSteps
type: stepList
default: []
# Custom steps that run after ImageBuilder is set up but before copy-base-images runs.
- name: customCopyBaseImagesInitSteps
type: stepList
default: []
- name: additionalOptions
type: string
default: ''
Expand All @@ -37,6 +43,7 @@ jobs:
publishConfig: ${{ parameters.publishConfig }}
customInitSteps: ${{ parameters.customInitSteps }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
- ${{ parameters.customCopyBaseImagesInitSteps }}
- template: /eng/docker-tools/templates/steps/copy-base-images.yml@self
parameters:
acr: ${{ parameters.acr }}
Expand Down
5 changes: 5 additions & 0 deletions eng/docker-tools/templates/jobs/generate-matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,11 @@ parameters:
internalProjectName: null
noCache: false
publishConfig: null
# Custom steps to set up ImageBuilder instead of pulling from MCR (e.g., bootstrap from source).
# Runs before ImageBuilder pull. If non-empty, skips the default ImageBuilder pull.
customInitSteps: []
# Custom steps that run after ImageBuilder is set up but before matrix generation runs.
customGenerateMatrixInitSteps: []
versionsRepoRef: ""
sourceBuildPipelineRunId: ""

Expand All @@ -21,6 +25,7 @@ jobs:
publishConfig: ${{ parameters.publishConfig }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps: ${{ parameters.customInitSteps }}
- ${{ parameters.customGenerateMatrixInitSteps }}
- template: /eng/docker-tools/templates/steps/retain-build.yml@self
- template: /eng/docker-tools/templates/steps/validate-branch.yml@self
parameters:
Expand Down
58 changes: 27 additions & 31 deletions eng/docker-tools/templates/stages/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,17 @@ parameters:
testMatrixType: platformVersionedOs
buildMatrixCustomBuildLegGroupArgs: ""
testMatrixCustomBuildLegGroupArgs: ""
# Custom steps to set up ImageBuilder instead of pulling from MCR (e.g., bootstrap from source).
# Runs before ImageBuilder pull. If non-empty, skips the default ImageBuilder pull.
customInitSteps: []
# Custom steps that run after ImageBuilder is set up but before copy-base-images runs.
customCopyBaseImagesInitSteps: []
# Custom steps that run after ImageBuilder is set up but before matrix generation runs.
customGenerateMatrixInitSteps: []
# Custom steps that run after ImageBuilder is set up but before the build starts.
# Use for build-specific initialization (e.g., setting variables, additional setup).
customBuildInitSteps: []
customTestInitSteps: []
customInitSteps: []
sourceBuildPipelineRunId: ""

linuxAmdBuildJobTimeout: 60
Expand Down Expand Up @@ -78,9 +84,8 @@ stages:
publishConfig: ${{ parameters.publishConfig }}
pool: ${{ parameters.linuxAmd64Pool }}
additionalOptions: "--manifest '$(manifest)' $(imageBuilder.pathArgs) $(manifestVariables)"
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customCopyBaseImagesInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customCopyBaseImagesInitSteps: ${{ parameters.customCopyBaseImagesInitSteps }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}

- template: /eng/docker-tools/templates/jobs/generate-matrix.yml@self
Expand All @@ -92,9 +97,8 @@ stages:
internalProjectName: ${{ parameters.internalProjectName }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customGenerateMatrixInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customGenerateMatrixInitSteps: ${{ parameters.customGenerateMatrixInitSteps }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}

- template: /eng/docker-tools/templates/jobs/build-images.yml@self
Expand All @@ -105,9 +109,8 @@ stages:
dockerClientOS: linux
buildJobTimeout: ${{ parameters.linuxAmdBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -121,9 +124,8 @@ stages:
dockerClientOS: linux
buildJobTimeout: ${{ parameters.linuxArmBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -137,9 +139,8 @@ stages:
dockerClientOS: linux
buildJobTimeout: ${{ parameters.linuxArmBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -153,9 +154,8 @@ stages:
dockerClientOS: windows
buildJobTimeout: ${{ parameters.windowsAmdBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -169,9 +169,8 @@ stages:
dockerClientOS: windows
buildJobTimeout: ${{ parameters.windowsAmdBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -185,9 +184,8 @@ stages:
dockerClientOS: windows
buildJobTimeout: ${{ parameters.windowsAmdBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand All @@ -201,9 +199,8 @@ stages:
dockerClientOS: windows
buildJobTimeout: ${{ parameters.windowsAmdBuildJobTimeout }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customBuildInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customBuildInitSteps: ${{ parameters.customBuildInitSteps }}
noCache: ${{ parameters.noCache }}
publishConfig: ${{ parameters.publishConfig }}
internalProjectName: ${{ parameters.internalProjectName }}
Expand Down Expand Up @@ -251,9 +248,8 @@ stages:
isTestStage: true
internalProjectName: ${{ parameters.internalProjectName }}
publicProjectName: ${{ parameters.publicProjectName }}
customInitSteps:
- ${{ parameters.customInitSteps }}
- ${{ parameters.customGenerateMatrixInitSteps }}
customInitSteps: ${{ parameters.customInitSteps }}
customGenerateMatrixInitSteps: ${{ parameters.customGenerateMatrixInitSteps }}
sourceBuildPipelineRunId: ${{ parameters.sourceBuildPipelineRunId }}
versionsRepoRef: ${{ parameters.versionsRepoRef }}
- template: /eng/docker-tools/templates/jobs/test-images-linux-client.yml@self
Expand Down
Loading