Skip to content

split actions per file #1

split actions per file

split actions per file #1

Workflow file for this run

name: Test
on: push
env:
APP_ENV: test
NODE_ENV: test
jobs:
BASE:
name: Run base tests
runs-on: ubuntu-latest
env:
STRIPE_PUBLISHABLE_KEY: ${{ secrets.STRIPE_PUBLISHABLE_KEY }}
STRIPE_SECRET_KEY: ${{ secrets.STRIPE_SECRET_KEY }}
steps:
- name: Set timezone
uses: szenius/[email protected]
with:
timezoneLinux: "Europe/Paris"
- uses: actions/checkout@v2
- name: Create .env file
run: cp .env.dist .env
- name: Pull Docker images
run: docker compose pull --ignore-pull-failures
- name: Prepare OSRM data
run: |
docker compose run -T --rm osrm wget --no-check-certificate https://coopcycle-assets.sfo2.digitaloceanspaces.com/osm/paris-france.osm.pbf -O /data/data.osm.pbf
docker compose run -T --rm osrm osrm-extract -p /opt/bicycle.lua /data/data.osm.pbf
docker compose run -T --rm osrm osrm-partition /data/data.osrm
docker compose run -T --rm osrm osrm-customize /data/data.osrm
- name: Start Docker containers
run: docker compose up -d
- name: Wait for PHP-FPM
run: until docker inspect --format='{{ .State.Health.Status }}' $(docker compose ps -q php) | grep -wq healthy; do sleep 5; done
timeout-minutes: 2
- name: Wait webpack
run: until [ -f "web/build/entrypoints.json" ]; do sleep 5; done
timeout-minutes: 2
- name: Show PHP logs
if: always()
run: docker compose logs php
- name: Create database
run: docker compose exec -T php bin/console doctrine:schema:create --env=test
- name: Create typesense collections
run: docker compose exec -T php bin/console typesense:create --env=test
- name: Validate database schema
run: docker compose exec -T php bin/console doctrine:schema:validate --env=test --skip-sync
- name: Run PHPUnit
run: |
cp phpunit.xml.dist phpunit.xml
docker compose exec -T php vendor/bin/phpunit
- name: Run Behat
run: docker compose exec -T php vendor/bin/behat -f progress
- name: Show Symfony logs on failure
if: failure()
run: docker compose exec -T php cat var/logs/test-$(date +'%Y-%m-%d').log | grep -v DEBUG
- name: Upload Symfony logs on failure
if: ${{ failure() }}
run: docker compose exec -T php cat var/logs/test-$(date +'%Y-%m-%d').log > symfony_logs.log
- name: Upload Symfony logs artifact
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: symfony-logs
path: symfony_logs.log
- name: Run Jest
run: docker compose exec -T webpack npm run jest