118 lines
No EOL
2.8 KiB
YAML
118 lines
No EOL
2.8 KiB
YAML
stages:
|
|
- Security
|
|
- CodingStandards
|
|
- Builds
|
|
|
|
composer-security:
|
|
stage: Security
|
|
image: $CI_REGISTRY/service-web-lab/ldc-web-images-docker/ldcweb-qa:php7.3-1.0
|
|
script:
|
|
- local-php-security-checker --format=json --path=./composer.lock > composer-security-checker-report.json
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'composer-security-checker'
|
|
paths:
|
|
- composer-security-checker-report.json
|
|
allow_failure: true
|
|
needs: []
|
|
|
|
npm-security:
|
|
stage: Security
|
|
image: node:17.9.1
|
|
before_script:
|
|
- npm install --location=global audit-ci@^6
|
|
script:
|
|
- audit-ci -p npm -o json > npm-security-checker-report.json
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'npm-security-checker'
|
|
paths:
|
|
- npm-security-checker-report.json
|
|
allow_failure: true
|
|
needs: []
|
|
|
|
phpcs:
|
|
stage: CodingStandards
|
|
image: $CI_REGISTRY/service-web-lab/ldc-web-images-docker/ldcweb-qa:php7.3-1.0
|
|
before_script:
|
|
- composer config gitlab-token.gitlab.com $CI_DEPLOY_USER $CI_DEPLOY_PASSWORD
|
|
- composer install
|
|
cache:
|
|
paths:
|
|
- vendor/
|
|
script:
|
|
- vendor/bin/phpcs --report=junit --report-file=phpcs-report.xml
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'phpcs'
|
|
paths:
|
|
- phpcs-report.xml
|
|
reports:
|
|
junit: phpcs-report.xml
|
|
allow_failure: false
|
|
needs:
|
|
- composer-security
|
|
- npm-security
|
|
|
|
eslint:
|
|
stage: CodingStandards
|
|
image: node:17.9.1
|
|
before_script:
|
|
- npm install
|
|
cache:
|
|
paths:
|
|
- node_modules/
|
|
script:
|
|
- npm run eslint-ci --silent > eslint-report.xml
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'eslint'
|
|
paths:
|
|
- eslint-report.xml
|
|
reports:
|
|
junit: eslint-report.xml
|
|
allow_failure: false
|
|
needs:
|
|
- composer-security
|
|
- npm-security
|
|
|
|
stylelint:
|
|
stage: CodingStandards
|
|
image: node:17.9.1
|
|
before_script:
|
|
- npm install
|
|
cache:
|
|
paths:
|
|
- node_modules/
|
|
script:
|
|
- npm run stylelint-ci --silent > stylelint-report.json
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'stylelint'
|
|
paths:
|
|
- stylelint-report.json
|
|
allow_failure: false
|
|
needs:
|
|
- composer-security
|
|
- npm-security
|
|
|
|
front-build:
|
|
stage: Builds
|
|
image: node:17.9.1
|
|
before_script:
|
|
- npm install
|
|
cache:
|
|
paths:
|
|
- node_modules/
|
|
script:
|
|
- npm run prod > front-build-report.json
|
|
artifacts:
|
|
when: on_failure
|
|
expose_as: 'front-build-report'
|
|
paths:
|
|
- front-build-report.json
|
|
allow_failure: false
|
|
needs:
|
|
- phpcs
|
|
- eslint
|
|
- stylelint |