Skip to content

Nightly E2E tests

Nightly E2E tests #413

#
# We want to fail fast but we don't want platform specific issues to impact other workflows.
# So we extracted the tests into 3 separate jobs, one for each platform.
#
name: Nightly E2E tests
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch: {}
jobs:
against-compatible-real-network-on-linux:
timeout-minutes: 185
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
node: [18, 20]
os: [ubuntu-latest]
services:
mina-local-network:
image: o1labs/mina-local-network:compatible-latest-lightnet
env:
NETWORK_TYPE: 'single-node'
PROOF_LEVEL: 'none'
ports:
- 3085:3085
- 5432:5432
- 8080:8080
- 8181:8181
- 8282:8282
volumes:
- /tmp:/root/logs
steps:
- name: Wait for Mina network readiness
uses: o1-labs/wait-for-mina-network-action@v1
with:
mina-graphql-port: 8080
max-attempts: 60
polling-interval-ms: 10000
- uses: actions/checkout@v4
- name: Use shared E2E testing steps
uses: ./.github/actions/e2e-shared
with:
node-version: ${{ matrix.node }}
os-type: ${{ matrix.os }}
shell: bash
mina-branch: 'compatible'
against-master-real-network-on-linux:
timeout-minutes: 185
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
node: [18, 20]
os: [ubuntu-latest]
services:
mina-local-network:
image: o1labs/mina-local-network:master-latest-lightnet
env:
NETWORK_TYPE: 'single-node'
PROOF_LEVEL: 'none'
ports:
- 3085:3085
- 5432:5432
- 8080:8080
- 8181:8181
- 8282:8282
volumes:
- /tmp:/root/logs
steps:
- name: Wait for Mina network readiness
uses: o1-labs/wait-for-mina-network-action@v1
with:
mina-graphql-port: 8080
max-attempts: 60
polling-interval-ms: 10000
- uses: actions/checkout@v4
- name: Use shared E2E testing steps
uses: ./.github/actions/e2e-shared
with:
node-version: ${{ matrix.node }}
os-type: ${{ matrix.os }}
shell: bash
mina-branch: 'master'
against-mocked-network-on-macos:
timeout-minutes: 185
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
node: [18, 20]
os: [macos-latest]
steps:
- uses: actions/checkout@v4
- name: Use shared E2E testing steps
uses: ./.github/actions/e2e-shared
with:
node-version: ${{ matrix.node }}
os-type: ${{ matrix.os }}
shell: bash
mina-branch: 'mocked-macos'
against-mocked-network-on-windows:
timeout-minutes: 185
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
node: [18, 20]
os: [windows-latest]
steps:
- uses: actions/checkout@v4
- name: Use shared E2E testing steps
uses: ./.github/actions/e2e-shared
with:
node-version: ${{ matrix.node }}
os-type: ${{ matrix.os }}
shell: powershell
mina-branch: 'mocked-windows'