Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.11 KiB
Newer Older
Tibo's avatar
Tibo committed
stages:
  - test
  - deploy

Tibo's avatar
Tibo committed
## Cache composer packages between all jobs and all branches
## of this project...
cache:
  key: one-key-to-rull-them-all
  paths:
    - composer-cache/

Tibo's avatar
Tibo committed
# Test with PHP7.2 
test:php72:
Tibo's avatar
Tibo committed
  stage: test
Tibo's avatar
Tibo committed
  image: cylab/php72
Tibo's avatar
Tibo committed
  before_script:
    # Install all project dependencies
Tibo's avatar
Tibo committed
    - COMPOSER_CACHE_DIR=./composer-cache composer install
Tibo's avatar
Tibo committed
    # setup Laravel
    - cp env.test .env
    - touch storage/app/db.sqlite
    - php artisan migrate
Tibo's avatar
Tibo committed
  script:
Tibo's avatar
Tibo committed
    - vendor/bin/phpunit --coverage-text --colors=never
Tibo's avatar
Tibo committed
    - vendor/bin/phpcs
    - vendor/bin/phpstan analyze --memory-limit=512M
Tibo's avatar
Tibo committed

Thibault Debatty's avatar
Thibault Debatty committed
test:dependencies:
Thibault Debatty's avatar
Thibault Debatty committed
  image: cylab/php74
Thibault Debatty's avatar
Thibault Debatty committed
  script:
Thibault Debatty's avatar
Thibault Debatty committed
    # in cylab/php74, security-checker is already installed...
Thibault Debatty's avatar
Thibault Debatty committed
    - ~/.composer/vendor/bin/security-checker security:check composer.lock

Tibo's avatar
Tibo committed
test:gitleaks:
Tibo's avatar
Tibo committed
  stage: test
Tibo's avatar
Tibo committed
  image: 
    name: "zricethezav/gitleaks"
    entrypoint: [""]
  script:
Tibo's avatar
Tibo committed
    # to avoid
    # fatal: unsafe repository ('/builds/...' is owned by someone else)
    # with recent git versions
    - git config --global --add safe.directory $CI_PROJECT_DIR
Tibo's avatar
Tibo committed
    - gitleaks detect -v -c gitleaks.toml ./
Tibo's avatar
Tibo committed