ldapsaisie/.gitlab-ci.yml

115 lines
2.7 KiB
YAML
Raw Normal View History

stages:
- tests
- build
- deploy
tests:bullseye:
image:
name: brenard/ldapsaisie:bullseye
2023-01-02 01:45:20 +01:00
entrypoint: [""]
2023-01-02 01:38:47 +01:00
stage: tests
rules:
- changes:
2023-05-24 18:30:02 +02:00
- src/**/*.php
script:
2023-01-11 19:09:23 +01:00
- rm -fr vendor
- composer install
- service slapd start
2023-01-11 19:09:23 +01:00
- >
if [ "$GITLAB_CI" == "true" ]; then
./vendor/bin/phpstan analyse --no-interaction --configuration=.phpstan/config.neon --error-format=junit > tests-report-bullseye.xml
else
./vendor/bin/phpstan analyse --no-interaction --configuration=.phpstan/config.neon
fi
artifacts:
when: always
paths:
- tests-report-bullseye.xml
reports:
junit: tests-report-bullseye.xml
tests:buster:
image:
name: brenard/ldapsaisie:buster
entrypoint: [""]
stage: tests
rules:
- changes:
2023-05-24 18:30:02 +02:00
- src/**/*.php
script:
2023-01-11 19:09:23 +01:00
- rm -fr vendor
- composer install
- service slapd start
- ./vendor/bin/phpstan analyse --no-interaction --configuration=.phpstan/config.neon --error-format=junit > tests-report-buster.xml
2023-01-11 19:09:23 +01:00
- >
if [ "$GITLAB_CI" == "true" ]; then
./vendor/bin/phpstan analyse --no-interaction --configuration=.phpstan/config.neon --error-format=junit > tests-report-buster.xml
else
./vendor/bin/phpstan analyse --no-interaction --configuration=.phpstan/config.neon
fi
artifacts:
when: always
paths:
- tests-report-buster.xml
reports:
junit: tests-report-buster.xml
tests:stretch:
image:
name: brenard/ldapsaisie:stretch
entrypoint: [""]
stage: tests
rules:
- changes:
- src/*
script:
- cd /tmp/
- composer require overtrue/phplint --dev
- cd -
- rm -f .phplint-cache
- /tmp/vendor/bin/phplint src
tests:jessie:
image:
name: brenard/ldapsaisie:jessie
entrypoint: [""]
stage: tests
rules:
- changes:
2023-05-24 18:30:02 +02:00
- src/**/*.php
script:
- cd /tmp/
- composer require overtrue/phplint --dev
- cd -
- rm -f .phplint-cache
- /tmp/vendor/bin/phplint src
2023-05-24 18:30:41 +02:00
build:doc:
stage: build
image: python:slim
before_script:
- pip install -r doc/requirements.txt
script:
- cd doc
- mkdocs build -s
- htmlark public_html/print_page/index.html -o LdapSaisie.html
artifacts:
paths:
- doc/public_html/
- doc/LdapSaisie.html
deploy:doc:
stage: deploy
image: alpine:latest
before_script:
- apk update && apk add openssh-client rsync
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | base64 -d | ssh-add -
- mkdir ~/.ssh
- echo "$SSH_HOST_KEY" | base64 -d > ~/.ssh/known_hosts
2023-05-24 18:30:41 +02:00
script:
- rsync -atv --exclude '.git*' --delete --progress ./doc/public_html/ $SSH_USER@$SSH_HOST:./
- rsync -atv ./doc/LdapSaisie.html $SSH_USER@$SSH_HOST:LdapSaisie.html