ci(azure-pipelines): restrict number of used cores everywhere to allow for canceling jobs
This commit is contained in:
parent
7a1139807d
commit
7e8d910496
@ -15,6 +15,9 @@ parameters:
|
|||||||
- 'Prod Private Agent Pool'
|
- 'Prod Private Agent Pool'
|
||||||
- 'Prod Private Agent Pool DS2'
|
- 'Prod Private Agent Pool DS2'
|
||||||
- 'Prod Private Agent Pool DS3'
|
- 'Prod Private Agent Pool DS3'
|
||||||
|
- name: dependenciesBuildCores
|
||||||
|
type: number
|
||||||
|
default: 1
|
||||||
- name: dependenciesBuildTimeout
|
- name: dependenciesBuildTimeout
|
||||||
type: number
|
type: number
|
||||||
default: 60
|
default: 60
|
||||||
@ -51,5 +54,6 @@ jobs:
|
|||||||
parameters:
|
parameters:
|
||||||
makeJob: dependencies
|
makeJob: dependencies
|
||||||
makeService: ${{parameters.serviceName}}
|
makeService: ${{parameters.serviceName}}
|
||||||
|
makeVars: 'CPU_CORES=${{parameters.dependenciesBuildCores}} STACK_CORES=${{parameters.dependenciesBuildCores}}'
|
||||||
|
|
||||||
# (Note: a post-job for updating the dependency cache is automatically created, so no further step is due here.)
|
# (Note: a post-job for updating the dependency cache is automatically created, so no further step is due here.)
|
||||||
@ -15,6 +15,9 @@ parameters:
|
|||||||
values:
|
values:
|
||||||
- frontend
|
- frontend
|
||||||
- backend
|
- backend
|
||||||
|
- name: makeVars
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- task: Bash@3
|
- task: Bash@3
|
||||||
@ -29,4 +32,4 @@ steps:
|
|||||||
inputs:
|
inputs:
|
||||||
targetType: inline
|
targetType: inline
|
||||||
script: |
|
script: |
|
||||||
make -- --${{parameters.makeJob}}-${{parameters.makeService}} IN_CONTAINER=true IN_CI=true PROJECT_DIR=${PROJECT_DIR}
|
make -- --${{parameters.makeJob}}-${{parameters.makeService}} IN_CONTAINER=true IN_CI=true PROJECT_DIR=${PROJECT_DIR} ${{parameters.makeVars}}
|
||||||
@ -34,6 +34,7 @@ parameters:
|
|||||||
- key: package.json | esbuild.config.mjs | utils/renamer.pl | utils/faviconize.pl | frontend/src/icons.scss
|
- key: package.json | esbuild.config.mjs | utils/renamer.pl | utils/faviconize.pl | frontend/src/icons.scss
|
||||||
path: assets/favicons/
|
path: assets/favicons/
|
||||||
buildPool: 'Prod Private Agent Pool'
|
buildPool: 'Prod Private Agent Pool'
|
||||||
|
buildCores: 1
|
||||||
buildTimeout: 60
|
buildTimeout: 60
|
||||||
buildArtifacts: |
|
buildArtifacts: |
|
||||||
assets/icons/fradrive/*.svg
|
assets/icons/fradrive/*.svg
|
||||||
@ -53,6 +54,7 @@ parameters:
|
|||||||
- key: stack.yaml | stack.yaml.lock
|
- key: stack.yaml | stack.yaml.lock
|
||||||
path: .stack/
|
path: .stack/
|
||||||
buildPool: 'Prod Private Agent Pool DS3'
|
buildPool: 'Prod Private Agent Pool DS3'
|
||||||
|
buildCores: 3
|
||||||
buildTimeout: 1440
|
buildTimeout: 1440
|
||||||
buildArtifacts: |
|
buildArtifacts: |
|
||||||
bin/*
|
bin/*
|
||||||
@ -77,6 +79,7 @@ stages:
|
|||||||
serviceName: ${{service.name}}
|
serviceName: ${{service.name}}
|
||||||
dependenciesCaches: ${{service.dependenciesCaches}}
|
dependenciesCaches: ${{service.dependenciesCaches}}
|
||||||
dependenciesBuildPool: ${{service.buildPool}}
|
dependenciesBuildPool: ${{service.buildPool}}
|
||||||
|
dependenciesBuildCores: ${{service.buildCores}}
|
||||||
dependenciesBuildTimeout: ${{service.buildTimeout}}
|
dependenciesBuildTimeout: ${{service.buildTimeout}}
|
||||||
|
|
||||||
- stage: Build
|
- stage: Build
|
||||||
@ -111,6 +114,7 @@ stages:
|
|||||||
parameters:
|
parameters:
|
||||||
makeJob: compile
|
makeJob: compile
|
||||||
makeService: ${{service.name}}
|
makeService: ${{service.name}}
|
||||||
|
makeVars: 'CPU_CORES=${{service.buildCores}} STACK_CORES=${{service.buildCores}}'
|
||||||
- task: CopyFiles@2
|
- task: CopyFiles@2
|
||||||
displayName: Prepare ${{service.name}} build artifacts for upload
|
displayName: Prepare ${{service.name}} build artifacts for upload
|
||||||
inputs:
|
inputs:
|
||||||
@ -166,10 +170,12 @@ stages:
|
|||||||
parameters:
|
parameters:
|
||||||
makeJob: lint
|
makeJob: lint
|
||||||
makeService: ${{service.name}}
|
makeService: ${{service.name}}
|
||||||
|
makeVars: 'CPU_CORES=${{service.buildCores}} STACK_CORES=${{service.buildCores}}'
|
||||||
- template: .azure-pipelines/templates/steps/make.yaml
|
- template: .azure-pipelines/templates/steps/make.yaml
|
||||||
parameters:
|
parameters:
|
||||||
makeJob: test
|
makeJob: test
|
||||||
makeService: ${{service.name}}
|
makeService: ${{service.name}}
|
||||||
|
makeVars: 'CPU_CORES=${{service.buildCores}} STACK_CORES=${{service.buildCores}}'
|
||||||
- task: Docker@2
|
- task: Docker@2
|
||||||
displayName: Logout from container registry
|
displayName: Logout from container registry
|
||||||
inputs:
|
inputs:
|
||||||
|
|||||||
Reference in New Issue
Block a user