84 lines
2.0 KiB
YAML
84 lines
2.0 KiB
YAML
stages:
|
|
- lint
|
|
- build
|
|
- test
|
|
- publish
|
|
|
|
variables:
|
|
ESLINT_PATHS: js plugins
|
|
|
|
include:
|
|
- project: 'ci/ci-templates'
|
|
ref: master
|
|
file: .ci-build-docker-kaniko.yml
|
|
- project: 'ci/ci-templates'
|
|
ref: master
|
|
file: .ci-lint-common.yml
|
|
- project: 'ci/ci-templates'
|
|
ref: master
|
|
file: .ci-integration-test.yml
|
|
|
|
phpunit:
|
|
extends: .phpunit
|
|
|
|
eslint:
|
|
extends: .eslint
|
|
|
|
phpstan:
|
|
extends: .phpstan
|
|
|
|
ttrss-web-nginx:branch:
|
|
extends: .build-branch
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/web-nginx/Dockerfile
|
|
|
|
ttrss-fpm-pgsql-static:branch:
|
|
extends: .build-branch
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/app/Dockerfile
|
|
|
|
ttrss-web-nginx:
|
|
extends: .build-master-commit-only
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/web-nginx/Dockerfile
|
|
|
|
ttrss-fpm-pgsql-static:
|
|
extends: .build-master-commit-only
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/app/Dockerfile
|
|
|
|
phpdoc:
|
|
image: ${PHP_IMAGE}
|
|
stage: build
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PIPELINE_SOURCE != "web" && $PHPDOC_DEPLOY_SSH_KEY != null
|
|
changes:
|
|
- '**/*.php'
|
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $PHPDOC_DEPLOY_SSH_KEY != null
|
|
when: manual
|
|
script:
|
|
- php82 /phpDocumentor.phar -d classes -d include -t phpdoc --visibility=public
|
|
- mkdir -p ~/.ssh &&
|
|
cp ${PHPDOC_DEPLOY_SSH_KEY} ~/.ssh/id_ed25519 &&
|
|
chmod 0600 ~/.ssh/id_ed25519
|
|
- rsync -av -e 'ssh -o StrictHostKeyChecking=no' phpdoc/ ${PHPDOC_DEPLOY_HOST}:phpdoc/
|
|
|
|
integration-test:
|
|
variables:
|
|
TEST_HELM_REPO: https://gitlab.tt-rss.org/tt-rss/helm-charts/tt-rss
|
|
extends: .integration-test
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
|
|
ttrss-web-nginx:publish:
|
|
stage: publish
|
|
extends: .build-master
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/web-nginx/Dockerfile
|
|
|
|
ttrss-fpm-pgsql-static:publish:
|
|
stage: publish
|
|
extends: .build-master
|
|
variables:
|
|
DOCKERFILE: ${CI_PROJECT_DIR}/.docker/app/Dockerfile
|