.gitlab-ci.yml 1.31 KB
Newer Older
1 2 3 4
stages:
- test
- deploy

5 6 7
.setup: &setup_definition
  image: ideascube/ideascube-ci:jessie-python34
  before_script:
8
  - pew in venv make sync-deps
9 10 11

.test: &test_definition
  <<: *setup_definition
12
  stage: test
13 14 15 16 17 18 19
  script:
  - pew in venv make test


"Tests: Jessie/Python-3.4":
  <<: *test_definition

20 21 22 23
"Tests: Stretch/Python-3.5":
  <<: *test_definition
  image: ideascube/ideascube-ci:stretch-python35

24
"Tests: C locale":
25
  <<: *setup_definition
26
  stage: test
27 28
  script:
  - LC_ALL=C pew in venv make test
29 30


Mathieu Bridon's avatar
Mathieu Bridon committed
31 32
Code Coverage:
  <<: *setup_definition
33
  stage: test
Mathieu Bridon's avatar
Mathieu Bridon committed
34 35 36 37
  script:
  - pew in venv make test-coverage


38 39
Code Quality:
  <<: *setup_definition
40
  stage: test
41 42
  script:
  - pew in venv make quality-check
43 44


45 46
Data Migration:
  <<: *setup_definition
47
  stage: test
48 49 50
  script:
  - pew in venv make test-data-migration

51 52
Missing Migrations:
  <<: *setup_definition
53
  stage: test
54 55
  script:
  - pew in venv make check-missing-migrations
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71


Master Debian Package:
  stage: deploy
  image: ideascube/ideascube-ci:jessie-deb-builder
  script:
  - sed -i "1 s|^ideascube [(]\(.*\)[)] \(.*\)$|ideascube (\1+${CI_COMMIT_SHA}) \2|" debian/changelog
  - dpkg-buildpackage -us -uc
  - mv ../ideascube_*.deb .
  artifacts:
    name: "ideascube-debian-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}"
    expire_in: "2 weeks"
    paths:
    - ideascube_*.deb
  only:
  - master