【发布时间】:2019-02-06 19:13:52
【问题描述】:
CircleCi 在代码被推送到 master 时运行,但是 CircleCi 在名为 Version Package Bump 的运行脚本中推送到 master 自身。所以在第一次构建之后,第二次运行。但它失败并显示消息:
在分支 master 你的分支是最新的'origin/master'。 没有什么可提交的,工作目录干净退出,代码 1
我如何确保 CircleCi 不会因自身引起的推送而再次启动?
jobs:
build:
docker:
- image: circleci/node:8.10.0
branches:
only:
- master
steps:
- add_ssh_keys
- checkout
- run:
name: Keyscan DreamHost (HACK)
command: ssh-keyscan -H HOST >> ~/.ssh/known_hosts
- run:
name: Install Dependencies
command: npm install
- run:
name: Build App
command: npm run build
- run:
name: Verion Package Bump
command: |
git config user.name "circleci"
git config user.email "EMAIL"
git add .
git commit -m "[ci] Generated Build"
npm version patch -m "[ci] Bumped version number to %s"
git push origin master
git push --tags
- deploy:
name: Publish to DreamHost
command: scp -r build/* HOST:./DIRECTORY/
即使我将它包装在条件中,我仍然会看到相同的错误并且构建发生了两次:
if ! git diff-index --quiet HEAD --; then
git config user.name "circleci"
git config user.email "EMAIL"
git add .
git commit -m "[ci] Generated Build"
npm version patch -m "[ci] Bumped version number to %s"
git push origin master
git push --tags
fi
【问题讨论】:
标签: git continuous-integration circleci