|
Luc Didry |
59f4a7 |
image: hatsoftwares/lufi-test-ci:buster
|
|
Luc Didry |
e41b08 |
stages:
|
|
Luc Didry |
73eed1 |
- publish_changelog
|
|
Luc Didry |
bffff5 |
- pouet_it
|
|
Luc Didry |
e41b08 |
- carton
|
|
Luc Didry |
e41b08 |
- carton_bdd
|
|
Luc Didry |
e41b08 |
- tests
|
|
Luc Didry |
e41b08 |
variables:
|
|
Luc Didry |
e41b08 |
POSTGRES_DB: lufi_db
|
|
Luc Didry |
e41b08 |
POSTGRES_USER: lufi
|
|
Luc Didry |
e41b08 |
POSTGRES_PASSWORD: lufi_pwd
|
|
Luc Didry |
e41b08 |
MYSQL_DATABASE: lufi_db
|
|
Luc Didry |
e41b08 |
MYSQL_USER: lufi
|
|
Luc Didry |
e41b08 |
MYSQL_PASSWORD: lufi_pwd
|
|
Luc Didry |
e41b08 |
MYSQL_ROOT_PASSWORD: root
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### Jobs templates
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
c8f3c4 |
.retry: &retry
|
|
Luc Didry |
c8f3c4 |
retry: 2
|
|
Luc Didry |
c8f3c4 |
except:
|
|
Luc Didry |
c8f3c4 |
- tags
|
|
Luc Didry |
e41b08 |
.carton_bdd_template: &carton_bdd_definition
|
|
Luc Didry |
c8f3c4 |
<<: *retry
|
|
Luc Didry |
e41b08 |
stage: carton_bdd
|
|
Luc Didry |
c8f3c4 |
cache:
|
|
Luc Didry |
c8f3c4 |
key: "$CI_COMMIT_REF_NAME"
|
|
Luc Didry |
e41b08 |
paths:
|
|
Luc Didry |
e41b08 |
- local/
|
|
Luc Didry |
c8f3c4 |
policy: pull
|
|
Luc Didry |
c8f3c4 |
artifacts:
|
|
Luc Didry |
c8f3c4 |
paths:
|
|
Luc Didry |
c8f3c4 |
- local.tar
|
|
Luc Didry |
c8f3c4 |
expire_in: 3 hours
|
|
Luc Didry |
5f134d |
needs:
|
|
Luc Didry |
5f134d |
- carton
|
|
Luc Didry |
c8f3c4 |
after_script:
|
|
Luc Didry |
c8f3c4 |
- tar cf local.tar local/
|
|
Luc Didry |
c8f3c4 |
|
|
Luc Didry |
c8f3c4 |
.tests_template: &tests_template
|
|
Luc Didry |
c8f3c4 |
<<: *retry
|
|
Luc Didry |
e41b08 |
stage: tests
|
|
Luc Didry |
c8f3c4 |
coverage: '/Total.* (\d+\.\d+)$/'
|
|
Luc Didry |
c8f3c4 |
before_script:
|
|
Luc Didry |
c8f3c4 |
- tar xf local.tar && rm local.tar
|
|
Luc Didry |
84c04d |
- which mariadb_config && cd $(dirname $(which mariadb_config)) && ln -s mariadb_config mysql_config
|
|
Luc Didry |
59f4a7 |
- cd $CI_PROJECT_DIR
|
|
Luc Didry |
59f4a7 |
- pwd
|
|
Luc Didry |
c8f3c4 |
script:
|
|
Luc Didry |
c8f3c4 |
- MOJO_CONFIG="t/${CI_JOB_NAME}.conf" make test
|
|
Luc Didry |
c8f3c4 |
- MOJO_CONFIG="t/${CI_JOB_NAME}.conf" make cover
|
|
Luc Didry |
c8f3c4 |
|
|
Luc Didry |
c8f3c4 |
.sqlite_template: &sqlite_definition
|
|
Luc Didry |
c8f3c4 |
<<: *tests_template
|
|
Luc Didry |
5f134d |
needs:
|
|
Luc Didry |
e41b08 |
- carton_sqlite
|
|
Luc Didry |
e41b08 |
services:
|
|
Luc Didry |
e41b08 |
- name: rroemhild/test-openldap
|
|
Luc Didry |
e41b08 |
alias: rroemhild-test-openldap
|
|
Luc Didry |
e41b08 |
.pg_template: &pg_definition
|
|
Luc Didry |
c8f3c4 |
<<: *tests_template
|
|
Luc Didry |
5f134d |
needs:
|
|
Luc Didry |
e41b08 |
- carton_postgresql
|
|
Luc Didry |
e41b08 |
services:
|
|
Luc Didry |
59f4a7 |
- name: postgres:11
|
|
Luc Didry |
e41b08 |
alias: postgres
|
|
Luc Didry |
e41b08 |
- name: rroemhild/test-openldap
|
|
Luc Didry |
e41b08 |
alias: rroemhild-test-openldap
|
|
Luc Didry |
e41b08 |
.mysql_template: &mysql_definition
|
|
Luc Didry |
c8f3c4 |
<<: *tests_template
|
|
Luc Didry |
5f134d |
needs:
|
|
Luc Didry |
e41b08 |
- carton_mysql
|
|
Luc Didry |
e41b08 |
services:
|
|
Luc Didry |
59f4a7 |
- name: mariadb:10.3
|
|
Luc Didry |
e41b08 |
alias: mariadb
|
|
Luc Didry |
e41b08 |
- name: rroemhild/test-openldap
|
|
Luc Didry |
e41b08 |
alias: rroemhild-test-openldap
|
|
Luc Didry |
73eed1 |
|
|
Luc Didry |
bffff5 |
### Publish tag changelog and create a toot
|
|
Luc Didry |
73eed1 |
##
|
|
Luc Didry |
73eed1 |
#
|
|
Luc Didry |
bffff5 |
include:
|
|
Luc Didry |
1b5f4a |
- 'https://framagit.org/fiat-tux/gitlabci-snippets/raw/4e4e03322e95e9b0124c714456ebf1bdc02ad43f/publish_changelog.gitlab-ci.yml'
|
|
Luc Didry |
1b5f4a |
- 'https://framagit.org/fiat-tux/gitlabci-snippets/raw/4e4e03322e95e9b0124c714456ebf1bdc02ad43f/pouet-it-from-ci.gitlab-ci.yml'
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### Podcheck
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
podcheck:
|
|
Luc Didry |
c8f3c4 |
stage: carton
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
e41b08 |
- make podcheck
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
84c04d |
### Cpanfile.snapshot
|
|
Luc Didry |
84c04d |
## Used to get a cpanfile.snapshot from a fresh server (not like my dev VM)
|
|
Luc Didry |
84c04d |
#
|
|
Luc Didry |
84c04d |
#cpanfile_snapshot:
|
|
Luc Didry |
84c04d |
# stage: carton
|
|
Luc Didry |
84c04d |
# script:
|
|
Luc Didry |
84c04d |
# - rm cpanfile.snapshot
|
|
Luc Didry |
84c04d |
# - which mariadb_config && cd $(dirname $(which mariadb_config)) && ln -s mariadb_config mysql_config
|
|
Luc Didry |
84c04d |
# - carton install
|
|
Luc Didry |
84c04d |
# - cat cpanfile.snapshot
|
|
Luc Didry |
84c04d |
# except:
|
|
Luc Didry |
84c04d |
# - tags
|
|
Luc Didry |
84c04d |
|
|
Luc Didry |
e41b08 |
### Install common dependencies
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
carton:
|
|
Luc Didry |
c8f3c4 |
<<: *retry
|
|
Luc Didry |
e41b08 |
stage: carton
|
|
Luc Didry |
c8f3c4 |
cache:
|
|
Luc Didry |
c8f3c4 |
key: "$CI_COMMIT_REF_NAME"
|
|
Luc Didry |
e41b08 |
paths:
|
|
Luc Didry |
e41b08 |
- local/
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=sqlite --without=postgresql --without=mysql
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### Install DB related dependencies
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
carton_sqlite:
|
|
Luc Didry |
e41b08 |
<<: *carton_bdd_definition
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=postgresql --without=mysql
|
|
Luc Didry |
e41b08 |
carton_postgresql:
|
|
Luc Didry |
e41b08 |
<<: *carton_bdd_definition
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=sqlite --without=mysql
|
|
Luc Didry |
44507c |
carton_mysql:
|
|
Luc Didry |
44507c |
<<: *carton_bdd_definition
|
|
Luc Didry |
59f4a7 |
before_script:
|
|
Luc Didry |
59f4a7 |
- which mariadb_config && cd $(dirname $(which mariadb_config)) && ln -s mariadb_config mysql_config
|
|
Luc Didry |
59f4a7 |
- cd $CI_PROJECT_DIR
|
|
Luc Didry |
44507c |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=sqlite --without=postgresql
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
c8f3c4 |
### Tests
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
sqlite:
|
|
Luc Didry |
e41b08 |
<<: *sqlite_definition
|
|
Luc Didry |
e41b08 |
postgresql:
|
|
Luc Didry |
e41b08 |
<<: *pg_definition
|
|
Luc Didry |
44507c |
mysql:
|
|
Luc Didry |
44507c |
<<: *mysql_definition
|