CI: Fix docker compose for Cypress by using the devconf network #638
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run integration tests | |
on: [pull_request] | |
jobs: | |
build: | |
# Due to the cgroups 1 issue on the openconext container, we do not | |
# use the new ubuntu platform yet. As they started using cgroups v2 | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
env: | |
DOCKER_COMPOSE: docker compose -f docker-compose.yml -f docker-compose-ci.yml | |
DOCKER_COMPOSE_PHP: docker compose -f docker-compose.yml -f docker-compose-ci.yml exec -T spdashboard | |
DOCKER_COMPOSE_CYPRESS: docker compose -f docker-compose.yml -f docker-compose-ci.yml exec -T cypress | |
steps: | |
- name: Check out the repo | |
uses: actions/checkout@v4 | |
with: | |
path: spdashboard | |
- name: Checkout openconext-devconf | |
uses: actions/checkout@v4 | |
with: | |
path: OpenConext-devconf | |
repository: OpenConext/OpenConext-devconf | |
- name: Start the docker images for testing | |
working-directory: spdashboard | |
run: ${DOCKER_COMPOSE} up -d | |
- name: Bootstrap the openconext environment | |
working-directory: spdashboard | |
run: bash ../OpenConext-devconf/core/scripts/init.sh | |
- name: Instantiate the env file | |
run: cp spdashboard/.env.dist spdashboard/.env | |
- name: Import the certificate on the Cypress docker machine | |
working-directory: spdashboard | |
run: ${DOCKER_COMPOSE_CYPRESS} sh /e2e/docker/conf/cypress_import_cert.sh | |
- name: Run composer | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} /usr/bin/composer install -n --prefer-dist -o --ignore-platform-reqs | |
- name: Run yarn | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} yarn install | |
- name: Create front end dependencies (yarn encore production) | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} yarn run encore production | |
- name: Get the database up and running | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} bin/console doctrine:schema:create | |
env: | |
APP_ENV: test | |
- name: Run Copy Paste Detector | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} sh -c 'composer jscpd' | |
continue-on-error: true | |
- name: Run CI tests | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} sh -c 'composer check' | |
- name: Run JS tests | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_PHP} sh -c 'composer jest' | |
- name: Run Cypress tests | |
working-directory: spdashboard | |
run: | | |
${DOCKER_COMPOSE_CYPRESS} cypress run --browser chrome -C ./ci/qa/cypress.config.ts | |
continue-on-error: true |