Skip to content

32.Run E2E Tests

32.Run E2E Tests #1

name: 32.Run E2E Tests
on:
workflow_dispatch:
inputs:
branch:
description: Branch to test
required: true
default: main
jobs:
test:
runs-on: ubuntu-22.04
timeout-minutes: 20
steps:
- uses: hmarr/debug-action@f7318c783045ac39ed9bb497e22ce835fdafbfe6
- uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b
- name: Setup Tools
uses: ./.github/actions/setup-tools
- name: Setup NPM Packages
uses: ./.github/actions/setup-npm
- name: Run lint
run: npm run lint
- name: Run App build
run: npm run build
- name: Run Email build
run: npm run email-build
- name: Install Docker Compose v2
# See https://docs.docker.com/compose/install/linux/
run: |
DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
docker compose version
- name: Run E2E tests
run: |
mkdir -p ./localdev/mnt/mongodb
mkdir -p ./localdev/mnt/postgres
export MACHINE_HOST_IP=$(hostname -I | awk '{print $1}')
~/.docker/cli-plugins/docker-compose -f localdev/docker-compose.yml -f localdev/docker-compose-ci.yml up -d
node_modules/.bin/wait-on http://localhost:8080/health/ready --timeout 120000
cp .env.example .env.test
npx cypress run
~/.docker/cli-plugins/docker-compose -f localdev/docker-compose.yml -f localdev/docker-compose-ci.yml down
sudo rm -rf ./localdev/mnt