cotech-website/.gitlab-ci.yml

71 lines
1.3 KiB
YAML
Raw Normal View History

2022-11-06 19:32:22 +00:00
---
image: ruby:2.6.6
stages:
2022-11-06 19:32:22 +00:00
- test
- staging
- production
variables:
JEKYLL_ENV: production
LC_ALL: C.UTF-8
2018-11-29 17:35:40 +00:00
cache:
key: gems
paths:
2018-11-30 17:25:23 +00:00
- vendor
2018-11-29 17:35:40 +00:00
before_script:
2018-11-18 16:05:08 +00:00
- 'which rsync || ( apt-get update -qq && apt-get install rsync -yqq )'
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
2022-11-06 19:28:17 +00:00
- ssh-keyscan web.cotech.uk > ~/.ssh/known_hosts
2022-11-06 19:51:01 +00:00
- ssh-keyscan 81.95.52.59 >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
2018-11-30 17:25:23 +00:00
- bundle install --path vendor
test:
stage: test
script:
2022-11-06 19:32:22 +00:00
- bundle exec jekyll build -d test
artifacts:
paths:
2022-11-06 19:32:22 +00:00
- test
except:
2022-11-06 19:32:22 +00:00
- master
2018-11-30 16:12:38 +00:00
deploy:dev:
stage: staging
script:
2022-11-06 19:32:22 +00:00
- bundle exec jekyll build -d public
- rsync -aqz --delete-after public/ cotech@web.cotech.uk:sites/dev/
artifacts:
paths:
2022-11-06 19:32:22 +00:00
- public
environment:
2018-11-30 16:12:38 +00:00
name: dev
2018-11-30 18:01:32 +00:00
url: https://dev.coops.tech
only:
2022-11-06 19:32:22 +00:00
- master
2018-11-30 16:12:38 +00:00
deploy:production:
stage: production
script:
2022-11-06 19:32:22 +00:00
- bundle exec jekyll build -d public
- rsync -aqz --delete-after public/ cotech@web.cotech.uk:sites/default/
artifacts:
paths:
2022-11-06 19:32:22 +00:00
- public
environment:
2018-11-30 16:12:38 +00:00
name: production
2018-11-30 18:01:32 +00:00
url: https://www.coops.tech
only:
2022-11-06 19:32:22 +00:00
- master
when: manual
after_script:
2022-11-06 19:32:22 +00:00
- rm -rf /root/.ssh/
...