我有一个.gitlab-ci.yml文件如下:
image: node:6.10.3
stages:
- ver
- init
- deploy
ver:
stage: ver
script:
- node --version
- whoami
init:
stage: init
script:
- npm cache clean
- rm -rf node-modules
- npm install
deploy_staging:
stage: deploy
before_script:
- 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
- mkdir -p ~/.ssh
- eval $(ssh-agent -s)
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
script:
- ssh-add <(echo "$STAGING_PRIVATE_KEY" | base64 --decode)
- git pull
- echo "deployed to staging server"
environment:
name: staging
url: MY SERVER
only:
- master
在我进入管道的Gitlab中我期待看到3个阶段,即ver,init和deploy 。 然而,它只需要第一个阶段,我没有看到任何部署。
答案 0 :(得分:3)
因此,在部署作业中使用only: master
语句可以将其排除在其他分支中的触摸之外。 Gitlab没有在管道中显示它,因为它从未用于非主分支。