nichijou/.gitlab-ci.yml
Renken 29404943cd
gitlab-ci: do not install dependencies for pages
All the job does is copy the artifact to public directory.
2022-07-13 00:33:31 +02:00

80 lines
1.3 KiB
YAML

image: debian
stages:
- analyse
- test
- deploy
variables:
GIT_SUBMODULE_STRATEGY: normal
cache:
paths:
- .venv/
.setup_build: &setup_build
- apt-get update
- apt-get dist-upgrade -y
- >
apt-get install --no-install-recommends -y
bash
build-essential
cmake
coreutils
findutils
git
grep
make
plantuml
python3
python3-pip
python3-venv
rsync
sed
# Convenient hack until this is fixed.
- ln -s /usr/bin/python3 /usr/bin/python
- python -m venv .venv
- . ./.venv/bin/activate
- python -m pip install -r requirements.txt
- mkdir build
- cd build
line_limit:
stage: analyse
needs: []
allow_failure: true
script:
- *setup_build
- cmake -DDOC:STRING=OFF -DLINE_LIMIT:BOOL=ON -DWERROR:BOOL=ON ..
- make line_limit
regex_check:
stage: analyse
needs: []
allow_failure: true
script:
- *setup_build
- cmake -DDOC:STRING=OFF -DREGEX_CHECK:BOOL=ON -DWERROR:BOOL=ON ..
- make regex_check
sphinx_html:
stage: test
needs: []
script:
- *setup_build
- cmake -DDOC:STRING=html ..
- make
artifacts:
paths:
- build/doc/html
pages:
stage: deploy
rules:
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
needs: ["sphinx_html"]
script:
- mv build/doc/html public
artifacts:
paths:
- public