我的仓库中有两个.yml
文件。一种用于构建,一种用于部署。我想使构建与部署保持独立的主要原因是我还想在我的仓库中存储环境变量,例如variables-dev.yml
和variables-prod.yml
文件中。因此,无需每次都创建新的构建(包括运行测试,docker映像构建等)。
文件build.yml
:
trigger:
paths:
exclude:
- build.yml
- deploy.yml
stages:
- stage: build
jobs:
...
还有deploy.yml
,我想仅在build
管道完成时才触发它。这就是为什么我添加所有路径的第一个排除项,但在管道资源上添加一个排除的原因。
trigger:
paths:
exclude:
- '*'
resources:
pipelines:
- pipeline: build
source: build
trigger:
branches:
include:
- '*'
stages:
- stage: dev
variables:
- template: variables-dev.yml
jobs:
- deployment: deploy_dev
environment: 'dev'
strategy:
runOnce:
deploy:
steps:
...
- stage: prod
dependsOn: dev
variables:
- template: variables-prod.yml
jobs:
- deployment: deploy_prod
environment: 'prod'
strategy:
runOnce:
deploy:
steps:
...
不幸的是,它似乎不起作用。顶部触发器阻止下部触发器。而且,如果我删除了顶部触发器,则部署管道将与构建管道同时触发。
答案 0 :(得分:0)
您必须使用trigger: none
trigger: none
resources:
pipelines:
- pipeline: ci-pipeline
source: my-build-pipeline
trigger:
enabled: true
branches:
include:
- master
答案 1 :(得分:0)