diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a530229..3ab8dd4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,21 +10,47 @@ stages: cache: key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" -composer: - stage: preparation - script: - - composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts --no-suggest - - cp .env.example .env - - php artisan key:generate - artifacts: - paths: - - vendor/ - - .env - expire_in: 1 days - when: always - cache: - paths: - - vendor/ +# 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 yarn: stage: preparation