cycles/.gitlab-ci.yml

54 lines
1.4 KiB
YAML
Raw Permalink Normal View History

2022-04-15 02:47:27 +00:00
stages:
- build
2022-04-15 18:39:51 +00:00
- test
2022-04-20 13:19:25 +00:00
- deploy
2022-04-15 02:47:27 +00:00
2022-04-15 19:13:00 +00:00
buiild job:
2022-04-15 02:47:27 +00:00
stage: build
2022-04-15 03:31:48 +00:00
image: python:3-buster
2022-04-15 02:47:27 +00:00
script:
- export PYTHONPATH=.
- export FLASK_APP=period
2022-04-15 03:10:52 +00:00
- apt-get update -qy
2022-04-15 02:47:27 +00:00
- apt-get install -y python3-dev python3-pip
2022-04-15 03:27:13 +00:00
- pip3 install --upgrade pip
2022-04-15 03:25:48 +00:00
- pip3 install --upgrade setuptools
- pip3 install Flask gunicorn pytest pytest-cov
2022-04-15 18:07:35 +00:00
- pip3 install pendulum
2022-04-15 19:13:00 +00:00
test job:
2022-04-15 18:39:51 +00:00
stage: test
2022-04-15 19:13:00 +00:00
image: python:3-buster
2022-04-15 18:39:51 +00:00
script:
- export PYTHONPATH=.
- export FLASK_APP=period
- apt-get update -qy
- apt-get install -y python3-dev python3-pip
- pip3 install --upgrade pip
- pip3 install --upgrade setuptools
- pip3 install Flask gunicorn pytest pytest-cov
- pip3 install pendulum
2022-04-15 18:44:32 +00:00
- pytest tests --cov --cov-report term --cov-report html --junitxml=report.xml
artifacts:
when: always
reports:
2022-04-15 19:13:00 +00:00
junit: report.xml
2022-04-20 13:19:25 +00:00
deploy-period:
stage: deploy
environment: production
2022-04-20 13:23:31 +00:00
image: debian:buster
2022-04-20 14:18:01 +00:00
before_script:
- 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
2022-04-20 14:27:17 +00:00
- ssh-keyscan 192.168.1.19 >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
2022-04-20 13:19:25 +00:00
script:
- ssh ahosking@192.168.1.19 "cd /home/ahosking/period && git pull origin master && exit"
only:
- master