From 86a81d367e94f5082914b3fe3a6b2ffecf40ff79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Romain=20Delano=C3=AB?= Date: Fri, 1 Oct 2021 19:41:35 +0000 Subject: [PATCH] Update .gitlab-ci.yml --- .gitlab-ci.yml | 78 +++++++++++--------------------------------------- 1 file changed, 16 insertions(+), 62 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3ab8dd4..ec27833 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,66 +1,20 @@ -image: edbizarro/gitlab-ci-pipeline-php:7.4 +FROM php:7.4 -stages: - - preparation - - building - - syntax - - testing - - deploy +# Update packages +RUN apt-get update -cache: - key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" +# Install PHP and composer dependencies +RUN apt-get install -qq git curl libmcrypt-dev libjpeg-dev libpng-dev libfreetype6-dev libbz2-dev -# This is a basic example for a gem or script which doesn't use -# services such as redis or postgres -before_script: - # Update packages - - apt-get update -yqq - # Prep for Node - - apt-get install gnupg -yqq - # Upgrade to Node 8 - - curl -sL https://deb.nodesource.com/setup_8.x | bash - - # Install dependencies - - apt-get install git nodejs libcurl4-gnutls-dev libicu-dev libmcrypt-dev libvpx-dev libjpeg-dev libpng-dev libxpm-dev zlib1g-dev libfreetype6-dev libxml2-dev libexpat1-dev libbz2-dev libgmp3-dev libldap2-dev unixodbc-dev libpq-dev libsqlite3-dev libaspell-dev libsnmp-dev libpcre3-dev libtidy-dev -yqq - # Install php extensions - - docker-php-ext-install pdo_mysql curl json intl gd xml zip bz2 opcache - # Install & enable Xdebug for code coverage reports - - pecl install xdebug - - docker-php-ext-enable xdebug - # Install Composer and project dependencies. - - curl -sS https://getcomposer.org/installer | php - - php composer.phar install - # Install Node dependencies. - # comment this out if you don't have a node dependency - - npm install - # Copy over testing configuration. - # Don't forget to set the database config in .env.testing correctly - # DB_HOST=mysql - # DB_DATABASE=project_name - # DB_USERNAME=root - # DB_PASSWORD=secret - - cp .env.testing .env - # Run npm build - # comment this out if you don't have a frontend build - # you can change this to to your frontend building script like - # npm run build - - npm run dev - # Generate an application key. Re-cache. - - php artisan key:generate - - php artisan config:cache - # Run database migrations. - - php artisan migrate - # Run database seed - - php artisan db:seed +# Clear out the local repository of retrieved package files +RUN apt-get clean -yarn: - stage: preparation - script: - - yarn install --pure-lockfile - artifacts: - paths: - - node_modules/ - expire_in: 1 days - when: always - cache: - paths: - - node_modules/ +# Install needed extensions +# Here you can install any other extension that you need during the test and deployment process +RUN docker-php-ext-install mcrypt pdo_mysql zip + +# Install Composer +RUN curl --silent --show-error "https://getcomposer.org/installer" | php -- --install-dir=/usr/local/bin --filename=composer + +# Install Laravel Envoy +RUN composer global require "laravel/envoy=~1.0"