nichijou/.gitlab-ci.yml

96 lines
2.2 KiB
YAML
Raw Normal View History

2019-12-13 19:44:34 -05:00
stages:
- analyse
- test
- deploy
variables:
GIT_SUBMODULE_STRATEGY: normal
line_limit:
stage: analyse
allow_failure: true
image: registry.git.mel.vin/shione/shione/cicd/coreutils:0.0
script:
- mkdir build
- cd build
- cmake -DDOC:STRING=OFF -DLINE_LIMIT:BOOL=ON -DWERROR:BOOL=ON ..
- make line_limit
regex_check:
stage: analyse
allow_failure: true
image: registry.git.mel.vin/shione/shione/cicd/coreutils:0.0
script:
- mkdir build
- cd build
- cmake -DDOC:STRING=OFF -DREGEX_CHECK:BOOL=ON -DWERROR:BOOL=ON ..
- make regex_check
sphinx_html:
stage: test
image: registry.git.mel.vin/shione/shione/cicd/sphinx_html:0.0
script:
- mkdir build
- cd build
- cmake -DWERROR:BOOL=ON ..
- make
artifacts:
paths:
- build/doc/html
review:
stage: deploy
variables:
GIT_STRATEGY: none
only:
- branches@shione/shione
dependencies:
- sphinx_html
image: registry.git.mel.vin/shione/shione/cicd/coreutils:0.0
environment:
name: review/$CI_COMMIT_REF_NAME
url: https://doc.mel.vin/template/doc/$CI_ENVIRONMENT_SLUG
on_stop: review_stop
script:
- mkdir -p ~/.ssh
- echo "$DOC_SSH_KNOWNHOSTS" > ~/.ssh/known_hosts
- eval $(ssh-agent)
- echo "$DOC_SSH_KEY" | ssh-add - > /dev/null
- mv build/doc/html public
- rsync -a --delete public/ doc@mel.vin:~/template/doc/$CI_ENVIRONMENT_SLUG
review_stop:
stage: deploy
variables:
GIT_STRATEGY: none
when: manual
dependencies: []
image: registry.git.mel.vin/shione/shione/cicd/coreutils:0.0
environment:
name: review/$CI_COMMIT_REF_NAME
action: stop
script:
- mkdir -p ~/.ssh
- echo "$DOC_SSH_KNOWNHOSTS" > ~/.ssh/known_hosts
- eval $(ssh-agent)
- echo "$DOC_SSH_KEY" | ssh-add - > /dev/null
- mkdir /tmp/empty
- rsync -a --delete --filter="+ $CI_ENVIRONMENT_SLUG" --filter='-,p *'
/tmp/empty/ doc@mel.vin:~/template/doc
- rmdir /tmp/empty
pages:
stage: deploy
variables:
GIT_STRATEGY: none
only:
- tags@shione/shione
dependencies:
- sphinx_html
image: registry.git.mel.vin/shione/shione/cicd/coreutils:0.0
script:
- mv build/doc/html public
artifacts:
paths:
- public