circleCI - 如何在特定目录中发生更改时 运行 作业
circleCI - How to run job when has change in specific directory
我正在使用 circleCI 版本 2,我的 config.yml
是这样的:
version: 2
jobs:
a:
steps:...
b:
steps:...
workflows:
version: 2
main_pipeline:
jobs:
- a
- b
我只想在目录发生变化时构建。
job a
文件夹 a
job b
文件夹 b
当 folder a
更改时,仅构建 job a
。
function trigger_job() {
job_name=
curl --user ${CIRCLE_API_TOKEN}: \
--data build_parameters[CIRCLE_JOB]=$job_name \
--data revision=$CIRCLE_SHA1 \
https://circleci.com/api/v1.1/project/github/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME/tree/$CIRCLE_BRANCH
我将此函数用于触发作业,并通过 git-diff 找到不同之处 git diff-tree --name-only $(git log -n 2 --pretty=format:"%H") | grep project
我正在使用 circleCI 版本 2,我的 config.yml
是这样的:
version: 2
jobs:
a:
steps:...
b:
steps:...
workflows:
version: 2
main_pipeline:
jobs:
- a
- b
我只想在目录发生变化时构建。
job a
文件夹 a
job b
文件夹 b
当 folder a
更改时,仅构建 job a
。
function trigger_job() {
job_name=
curl --user ${CIRCLE_API_TOKEN}: \
--data build_parameters[CIRCLE_JOB]=$job_name \
--data revision=$CIRCLE_SHA1 \
https://circleci.com/api/v1.1/project/github/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME/tree/$CIRCLE_BRANCH
我将此函数用于触发作业,并通过 git-diff 找到不同之处 git diff-tree --name-only $(git log -n 2 --pretty=format:"%H") | grep project