【问题标题】:circleCI - How to run job when has change in specific directorycircleCI - 如何在特定目录发生更改时运行作业
【发布时间】:2017-06-28 04:52:19
【问题描述】:

我正在使用 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

【问题讨论】:

标签: github workflow pipeline git-diff circleci


【解决方案1】:
function trigger_job() {
    job_name=$1
    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

【讨论】:

    猜你喜欢
    • 2019-11-30
    • 2018-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    相关资源
    最近更新 更多