Newer
Older
stages:
- build
- deploy
variables:
LC_ALL: C.UTF-8
BUILD_DIR: public/
cache:
paths:
.build:
stage: build
before_script:
- apt-get update -qy
- gem install bundler
- cd web/
- bundle install --path vendor/bundle
script:
- bundle exec jekyll build -d $BUILD_DIR --config $CONFIG
artifacts:
paths:
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
.deploy:
stage: deploy
variables:
before_script:
- apt-get update -qy
- apt-get install -y lftp
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- ssh-keyscan $SFTP_HOST >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
- cd web/
script:
- lftp -e "set sftp:auto-confirm yes;
open sftp://$SFTP_HOST;
user $SFTP_USER $SFTP_PASSWORD;
mirror --exclude-glob .git*
--exclude .git/
--reverse
--verbose
--delete
$BUILD_DIR
$DEPLOY_DIR;
bye"
build.dev:
extends: .build
variables:
CONFIG: _config.yml,_config-dev.yml
only:
- web.dev
build.prod:
extends: .build
variables:
CONFIG: _config.yml
JEKYLL_ENV: production
only:
- web.prod
deploy.dev:
extends: .deploy
variables:
DEPLOY_DIR: $DEV_DEPLOY_DIR
only:
- web.dev
deploy.prod:
extends: .deploy
variables:
DEPLOY_DIR: $PROD_DEPLOY_DIR
only:
- web.prod