www/.gitlab-ci.yml

89 lines
1.9 KiB
YAML
Raw Normal View History

2018-08-15 00:49:40 +02:00
stages:
- pages
- calendar
- deploy
cache:
paths:
- ~/.cache/pip/
- public/
2018-08-15 00:49:40 +02:00
variables:
GIT_SUBMODULE_STRATEGY: recursive
build_pages:
image: "golang:1.10-alpine3.8"
2018-08-15 00:50:57 +02:00
stage: pages
2018-08-15 00:49:40 +02:00
variables:
SHELL: "/bin/sh"
2018-08-16 22:09:39 +02:00
artifacts:
untracked: true
2018-08-15 00:49:40 +02:00
script:
- apk add --no-cache --upgrade hugo
2019-03-13 23:45:59 +01:00
- hugo $(cat .hugo-params)
2018-08-15 00:49:40 +02:00
build_calendar:
image: "python:3.7-alpine3.8"
stage: calendar
2018-08-16 22:09:39 +02:00
dependencies:
2018-08-16 22:11:01 +02:00
- build_pages
2018-08-16 22:09:39 +02:00
artifacts:
untracked: true
2018-08-15 00:49:40 +02:00
variables:
SHELL: "/bin/sh"
script:
- apk --no-cache update
- pip install -r requirements.txt
- python tools/merge_cals.py
- cp static/all.ics public/all.ics
2018-08-15 00:49:40 +02:00
- upcoming="$(python tools/gen_upcoming.py static/all.ics 14 5|tr '\n' ' ')" && sed -i "s#CALENDAR#$upcoming#g" public/index.html
deploy_staging:
image: "alpine:3.8"
stage: deploy
2018-08-16 22:09:39 +02:00
dependencies:
2018-08-16 22:11:01 +02:00
- build_calendar
2018-08-15 00:49:40 +02:00
variables:
SHELL: "/bin/sh"
script:
2018-08-16 22:53:05 +02:00
- apk --no-cache --upgrade add openssh-client rsync
- mkdir -p ~/.ssh
- eval $(ssh-agent -s)
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
2018-08-16 22:57:53 +02:00
- echo "$PRIVATE_KEY" | ssh-add -
- rsync -e "ssh -l deploy -p 31337" -av public/ 195.54.164.87:staging/s
2018-08-15 00:49:40 +02:00
when: on_success
environment:
name: staging
url: https://staging.berlin.ccc.de/
artifacts:
paths:
- public/
only:
- staging
deploy_production:
image: "alpine:3.8"
stage: deploy
dependencies:
- build_calendar
variables:
SHELL: "/bin/sh"
script:
- apk --no-cache --upgrade add openssh-client rsync
- mkdir -p ~/.ssh
- eval $(ssh-agent -s)
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- echo "$PRIVATE_KEY" | ssh-add -
- rsync -e "ssh -l deploy -p 31337" -av public/ 195.54.164.87:production/s
when: on_success
environment:
name: production
url: https://berlin.ccc.de/
artifacts:
paths:
- public/
only:
2018-08-16 23:42:37 +02:00
- production
2018-08-15 00:49:40 +02:00