对于我们的构建,我想使用一个阶段,这个阶段是针对每一个推/拉请求触发的,在构建矩阵中有一个有限数量的参数组合。
另一个阶段,每晚使用预定的构建来执行,我想使用包含所有参数组合的完整生成矩阵。由于Azure管道不支持生成矩阵的紧凑表示。,我至少希望将构建矩阵放在一个单独的文件中,这样该文件至少安排得很清楚。
azure-pipelines.yml (主文件)
stages:
- stage: ci_build_on_default_pool
jobs:
- template: tools/azure-pipelines/azure-jobs.yml
parameters:
stage_name: ci_build_on_default_pool
pool_definition:
name: Default
test_strategy:
- template: tools/azure-pipelnes/ci-build-matrix.yml
- stage: ci_build_on_azure_os_free_pool
jobs:
- template: tools/azure-pipelines/azure-jobs.yml
parameters:
stage_name: ci_build_on_azure_os_free_pool
pool_definition:
vmImage: 'ubuntu-latest'
test_strategy:
- template: tools/azure-pipelnes/ci-build-matrix.yml
# Special stage for midnight build:
- stage: cron_build_on_azure_os_free_pool
condition: eq(variables['Build.Reason'], 'Schedule')
jobs:
- template: tools/azure-pipelines/azure-jobs.yml
parameters:
stage_name: cron_build_on_azure_os_free_pool
pool_definition:
vmImage: 'ubuntu-latest'
test_strategy:
matrix:
core:
parameter: core
python:
parameter: python
libraries:
parameter: librariesazure-jobs.yml (包含构建作业定义的文件)
parameters:
pool_definition:
stage_name:
test_strategy: {}
jobs:
[ ... ]
- job: runOnAzure_test
pool: ${{parameters.pool_definition}}
container: flink-build-container
strategy: ${{parameters.test_strategy}}
steps:ci-build-matrix.yml (跨两个阶段共享的默认矩阵定义)
matrix:
core:
parameter: core
python:
parameter: python
libraries:
parameter: libraries
[ ... ]有了这些输入,我得到了以下错误
/tools/azure-pipelines/azure-jobs.yml (Line: 60, Col: 13): A sequence was not expected我怎么解决这个问题?
发布于 2019-12-01 09:25:59
我记得我第一次开始使用模板时遇到过这个问题。我非常肯定,它必须与第一步的模板必须是一项任务。
https://stackoverflow.com/questions/59087052
复制相似问题