.gitlab-ci.yml 1.48 KB
Newer Older
Yohan Jarosz's avatar
Yohan Jarosz committed
1
2
3
stages:
  - build
  - review
Yohan Jarosz's avatar
Yohan Jarosz committed
4

Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
5
6
7
Build for review:
    stage: build
    before_script:
Yohan Jarosz's avatar
d    
Yohan Jarosz committed
8
9
      - bundle config set path '/home/gitlab-runner/.gem'
      - bundle install && bundle update
Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
10
11
12
13
14
    script:
      - 'echo "project_id: $CI_PROJECT_ID" > _config_review.yml'    
      - 'echo "project_namespace: $CI_PROJECT_PATH" >> _config_review.yml'
      - 'echo "mr_id: $CI_MERGE_REQUEST_ID" >> _config_review.yml'
      - 'echo "gitlab_host: https://git-r3lab.uni.lu" >> _config_review.yml'
Yohan Jarosz's avatar
d    
Yohan Jarosz committed
15
      - pwd
Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
16
17
18
19
20
21
22
      - bundle exec jekyll build -d public --config "_config.yml,_config_review.yml"
    artifacts:
      expire_in: 1 month
      paths:
        - public
    variables:
      JEKYLL_ENV: review
Yohan Jarosz's avatar
Yohan Jarosz committed
23
24
25
    rules:
      - if: '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME'
        when: always
Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
26
27
    tags:
      - review-app
Yohan Jarosz's avatar
Yohan Jarosz committed
28
29


Yohan Jarosz's avatar
Yohan Jarosz committed
30
Publish review:
Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
31
32
    stage: review
    script:
Yohan Jarosz's avatar
Yohan Jarosz committed
33
      - rsync -av --delete public /srv/nginx/pages/$CI_PROJECT_ID/$CI_MERGE_REQUEST_ID
Yohan Jarosz's avatar
Yohan Jarosz committed
34
    environment:
Yohan Jarosz's avatar
Yohan Jarosz committed
35
      name: review $CI_BUILD_REF_NAME for $CI_PROJECT_PATH
Yohan Jarosz's avatar
Yohan Jarosz committed
36
      url: http://$CI_MERGE_REQUEST_ID-$CI_PROJECT_ID.review.lcsb.uni.lu
Yohan Jarosz's avatar
Yohan Jarosz committed
37
      on_stop: "Un-publish review"
Yohan Jarosz's avatar
Yohan Jarosz committed
38
39
40
    rules:
      - if: '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME'
        when: always
Yohan Jarosz's avatar
add ci  
Yohan Jarosz committed
41
    tags:
Yohan Jarosz's avatar
Yohan Jarosz committed
42
43
44
45
46
      - review-app

Un-publish review:
  stage: review
  script:
Yohan Jarosz's avatar
Yohan Jarosz committed
47
    - rm -rf /srv/nginx/pages/$CI_PROJECT_ID/$CI_MERGE_REQUEST_ID
Yohan Jarosz's avatar
Yohan Jarosz committed
48
49
50
51
  variables:
    GIT_STRATEGY: none
  when: manual
  environment:
Yohan Jarosz's avatar
Yohan Jarosz committed
52
    name: review $CI_BUILD_REF_NAME for $CI_PROJECT_PATH
Yohan Jarosz's avatar
Yohan Jarosz committed
53
54
    action: stop
  tags:
Yohan Jarosz's avatar
Yohan Jarosz committed
55
    - review-app
Yohan Jarosz's avatar
Yohan Jarosz committed
56