Skip to content

Release 5.2.0-RC.1 #1179

Release 5.2.0-RC.1

Release 5.2.0-RC.1 #1179

Workflow file for this run

name: Cypress Tests
on:
pull_request:
jobs:
cypress-tests:
name: Cypress Tests
runs-on: ubuntu-latest
strategy:
# when one test fails, DO NOT cancel the other
# containers, because this will kill Cypress processes
# leaving the Dashboard hanging ...
# https://github.com/cypress-io/github-action/issues/48
fail-fast: false
matrix:
containers: [1, 2, 3] # number of parallel containers
steps:
- uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2
with:
# test the lowest version, to make sure checks pass on it
php-version: 7.2
extensions: json, mbstring, pdo, curl, pdo_sqlite
coverage: none
- uses: actions/setup-node@v1
with:
node-version: 12.5
# See https://github.community/t/sudo-apt-install-fails-with-failed-to-fetch-http-security-ubuntu-com-404-not-found-ip/17075
- run: sudo apt update
- name: Install dependencies
run: |
sudo composer self-update -q
sudo COMPOSER_MEMORY_LIMIT=-1 COMPOSER_PROCESS_TIMEOUT=60 composer update --prefer-dist --no-progress
./bin/console bolt:info --ansi
npm set progress=false
npm ci
mkdir -p ./var/log/e2e-reports/report/features/
touch ./var/log/e2e-reports/report/features/.gitkeep
# Install latest stable Chrome for e2e tests
sudo apt --fix-broken install
sudo apt-get install libxss1 libappindicator1 libindicator7
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome*.deb
- name: Prepare environment
run: |
# build assets
npm run build
sudo chmod -R 777 config/ public/files/ public/theme/ public/thumbs/ var/
# prepare web server for e2e tests
./bin/console doctrine:schema:create -q
./bin/console doctrine:migrations:sync-metadata-storage -q
./bin/console doctrine:migrations:version --add --all -n -q
./bin/console doctrine:fixtures:load --group=without-images -n
./bin/console server:start 127.0.0.1:8088
# test if web server works
sleep 3
wget "http://127.0.0.1:8088/bolt/login"
- name: Cypress run
uses: cypress-io/github-action@v2
with:
command: "npm run cypress:ci"
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.CYPRESS_GITHUB_TOKEN }}
- uses: actions/upload-artifact@v1
if: failure()
with:
name: cypress-evidence
path: tests/cypress/evidence