.gitlab-ci.yml 1.27 KB
Newer Older
Davide Depau's avatar
Davide Depau committed
1 2
image: jekyll/builder

Davide Depau's avatar
Davide Depau committed
3 4 5
stages:
  - deploy

Davide Depau's avatar
Davide Depau committed
6 7 8
variables:
  JEKYLL_ENV: production
  LC_ALL: C.UTF-8
9
  GIT_SUBMODULE_STRATEGY: recursive
Davide Depau's avatar
Davide Depau committed
10

11
before_script:
12 13
  - mv usr-local-bundle /usr/local/bundle   # Move extracted cache to its
  - mv home-bundle ~/.bundle                # original place
14 15 16
  - apk add npm
  - npm install
  - bundle install
Davide Depau's avatar
Davide Depau committed
17
  - ./scripts/ci_fix_baseurl.sh
Davide Depau's avatar
Davide Depau committed
18
  - jekyll build -d public
Davide Depau's avatar
Davide Depau committed
19
  - ./scripts/purgecss.sh public
Davide Depau's avatar
Davide Depau committed
20
  - ./scripts/minifycssjs.sh public
21 22
  - mv /usr/local/bundle usr-local-bundle   # Move cache to workdir so
  - mv ~/.bundle home-bundle                # that GitLab will pick it up
23

Davide Depau's avatar
Davide Depau committed
24
deploy-prod:
25 26
  stage: deploy
  script:
Davide Depau's avatar
Davide Depau committed
27
  - apk add rsync
28 29
  - mkdir -p "$HOME/.ssh"
  - echo "$SSH_KNOWN_HOSTS" > "$HOME/.ssh/known_hosts"
30 31
  - chmod 700 "$HOME/.ssh/known_hosts"
  - chmod 700 "$SSH_DEPLOY_KEY"
Davide Depau's avatar
Davide Depau committed
32
  - rsync -e "ssh -i $SSH_DEPLOY_KEY" --delete-after -rlptP public/ "$SSH_DEPLOY_USER@$SSH_DEPLOY_HOST:/www.poul.org/"
Davide Depau's avatar
Davide Depau committed
33
  cache:
Davide Depau's avatar
Davide Depau committed
34
    key: build-deps
Davide Depau's avatar
Davide Depau committed
35
    paths:
36
      - "usr-local-bundle/"
Davide Depau's avatar
Davide Depau committed
37
      - "node_modules/"
38
      - "home-bundle"
39 40 41 42 43
  only:
  - master

pages:
  stage: deploy
Davide Depau's avatar
Davide Depau committed
44
  script:
Davide Depau's avatar
Davide Depau committed
45
    - echo "Already built."
Davide Depau's avatar
Davide Depau committed
46 47 48
  artifacts:
    paths:
    - public
Davide Depau's avatar
Davide Depau committed
49
  cache:
Davide Depau's avatar
Davide Depau committed
50
    key: build-deps
Davide Depau's avatar
Davide Depau committed
51
    paths:
52
      - "usr-local-bundle/"
Davide Depau's avatar
Davide Depau committed
53
      - "node_modules/"
54
      - "home-bundle"
Davide Depau's avatar
Davide Depau committed
55
  only:
56
  - develop