|
Luc Didry |
e41b08 |
image: hatsoftwares/lufi-test-ci:latest
|
|
Luc Didry |
e41b08 |
stages:
|
|
Luc Didry |
73eed1 |
- publish_changelog
|
|
Luc Didry |
e41b08 |
- podcheck
|
|
Luc Didry |
e41b08 |
- carton
|
|
Luc Didry |
e41b08 |
- carton_bdd
|
|
Luc Didry |
e41b08 |
- tests
|
|
Luc Didry |
e41b08 |
before_script:
|
|
Luc Didry |
e41b08 |
- rm -f *db
|
|
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 |
e41b08 |
.carton_bdd_template: &carton_bdd_definition
|
|
Luc Didry |
e41b08 |
stage: carton_bdd
|
|
Luc Didry |
e41b08 |
retry: 2
|
|
Luc Didry |
e41b08 |
artifacts:
|
|
Luc Didry |
e41b08 |
paths:
|
|
Luc Didry |
e41b08 |
- local/
|
|
Luc Didry |
e41b08 |
expire_in: 1 week
|
|
Luc Didry |
e41b08 |
dependencies:
|
|
Luc Didry |
e41b08 |
- carton
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
.sqlite_template: &sqlite_definition
|
|
Luc Didry |
e41b08 |
stage: tests
|
|
Luc Didry |
e41b08 |
retry: 2
|
|
Luc Didry |
e41b08 |
dependencies:
|
|
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 |
coverage: '/Total.* (\d+\.\d+)$/'
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
.pg_template: &pg_definition
|
|
Luc Didry |
e41b08 |
stage: tests
|
|
Luc Didry |
e41b08 |
retry: 2
|
|
Luc Didry |
e41b08 |
dependencies:
|
|
Luc Didry |
e41b08 |
- carton_postgresql
|
|
Luc Didry |
e41b08 |
services:
|
|
Luc Didry |
e41b08 |
- name: postgres:9.6
|
|
Luc Didry |
e41b08 |
alias: postgres
|
|
Luc Didry |
e41b08 |
- name: rroemhild/test-openldap
|
|
Luc Didry |
e41b08 |
alias: rroemhild-test-openldap
|
|
Luc Didry |
e41b08 |
coverage: '/Total .*(\d+\.\d+)$/'
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
.mysql_template: &mysql_definition
|
|
Luc Didry |
e41b08 |
stage: tests
|
|
Luc Didry |
e41b08 |
retry: 2
|
|
Luc Didry |
e41b08 |
dependencies:
|
|
Luc Didry |
e41b08 |
- carton_mysql
|
|
Luc Didry |
e41b08 |
services:
|
|
Luc Didry |
e41b08 |
- name: mariadb:10.1
|
|
Luc Didry |
e41b08 |
alias: mariadb
|
|
Luc Didry |
e41b08 |
- name: rroemhild/test-openldap
|
|
Luc Didry |
e41b08 |
alias: rroemhild-test-openldap
|
|
Luc Didry |
e41b08 |
coverage: '/Total .*(\d+\.\d+)$/'
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
73eed1 |
|
|
Luc Didry |
73eed1 |
### Publish tag changelog
|
|
Luc Didry |
73eed1 |
##
|
|
Luc Didry |
73eed1 |
#
|
|
Luc Didry |
73eed1 |
publish_changelog:
|
|
Luc Didry |
73eed1 |
stage: publish_changelog
|
|
Luc Didry |
73eed1 |
script:
|
|
Luc Didry |
73eed1 |
- export PROJECT_API_URL="https://framagit.org/api/v4/projects/${CI_PROJECT_ID}"
|
|
Luc Didry |
73eed1 |
- export DESCRIPTION_URL="${PROJECT_API_URL}/repository/tags/${CI_COMMIT_TAG}/release"
|
|
Luc Didry |
73eed1 |
- 'export HEADER="Private-Token: ${GITLAB_API_TOKEN}"'
|
|
Luc Didry |
73eed1 |
- sed -n '/^'$CI_COMMIT_TAG'[[:space:]]/,/^[^\t]/p' CHANGELOG | sed -e 's/^[^\t].*//' -e 's/\t//g' | sed '/^[[:space:]]*$/d' > /tmp/text
|
|
Luc Didry |
2ac16f |
- if [[ ! -z $GITLAB_API_TOKEN ]]; then curl -s --request POST --data-urlencode "description@/tmp/text" --header "${HEADER}" "${DESCRIPTION_URL}"; fi
|
|
Luc Didry |
73eed1 |
only:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### Podcheck
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
podcheck:
|
|
Luc Didry |
e41b08 |
stage: podcheck
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
e41b08 |
- make podcheck
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### Install common dependencies
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
carton:
|
|
Luc Didry |
e41b08 |
stage: carton
|
|
Luc Didry |
e41b08 |
artifacts:
|
|
Luc Didry |
e41b08 |
paths:
|
|
Luc Didry |
e41b08 |
- local/
|
|
Luc Didry |
e41b08 |
expire_in: 1 week
|
|
Luc Didry |
e41b08 |
dependencies: []
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=sqlite --without=postgresql --without=mysql
|
|
Luc Didry |
e41b08 |
when: always
|
|
Luc Didry |
e41b08 |
retry: 2
|
|
Luc Didry |
73eed1 |
except:
|
|
Luc Didry |
73eed1 |
- tags
|
|
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 |
44507c |
script:
|
|
Luc Didry |
44507c |
- carton install --deployment --without=sqlite --without=postgresql
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### SQLite tests
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
sqlite:
|
|
Luc Didry |
e41b08 |
<<: *sqlite_definition
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
e41b08 |
- MOJO_CONFIG=t/sqlite.conf make test
|
|
Luc Didry |
e41b08 |
- MOJO_CONFIG=t/sqlite.conf make cover
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### PostgreSQL tests
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
e41b08 |
postgresql:
|
|
Luc Didry |
e41b08 |
<<: *pg_definition
|
|
Luc Didry |
e41b08 |
script:
|
|
Luc Didry |
e41b08 |
- MOJO_CONFIG=t/postgresql.conf make test
|
|
Luc Didry |
e41b08 |
- MOJO_CONFIG=t/postgresql.conf make cover
|
|
Luc Didry |
e41b08 |
|
|
Luc Didry |
e41b08 |
### MySQL tests
|
|
Luc Didry |
e41b08 |
##
|
|
Luc Didry |
e41b08 |
#
|
|
Luc Didry |
44507c |
mysql:
|
|
Luc Didry |
44507c |
<<: *mysql_definition
|
|
Luc Didry |
44507c |
script:
|
|
Luc Didry |
44507c |
- MOJO_CONFIG=t/mysql.conf make test
|
|
Luc Didry |
44507c |
- MOJO_CONFIG=t/mysql.conf make cover
|