Skip to content

OS signal handler will exit on context cancellation #4382

OS signal handler will exit on context cancellation

OS signal handler will exit on context cancellation #4382

Workflow file for this run

# Copyright (C) 2023, Ava Labs, Inc. All rights reserved.
# See the file LICENSE for licensing terms.
name: E2E Tests
on:
push:
branches:
- main
pull_request:
branches:
- "**"
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
# JOB to run change detection
changes:
runs-on: ubuntu-22.04
# Set job outputs to values from filter step
outputs:
contracts: ${{ steps.filter.outputs.contracts }}
services: ${{ steps.filter.outputs.services }}
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Detect changed components
id: filter
uses: dorny/paths-filter@v4
with:
filters: |
contracts:
- '.github/workflows/e2e.yml'
- 'go.mod'
- 'icm-contracts/contracts/**'
- 'icm-contracts/tests/**'
- 'icm-contracts/utils/**'
- 'scripts/**'
services:
- '.github/workflows/e2e.yml'
- 'go.mod'
- 'icm-contracts/tests/**'
- 'icm-contracts/utils/**'
- 'config/**'
- 'database/**'
- 'messages/**'
- 'peers/**'
- 'relayer/**'
- 'signature-aggregator/**'
- 'scripts/**'
- 'types/**'
- 'utils/**'
- 'vms/**'
teleporter_e2e:
name: teleporter-e2e-tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
./scripts/e2e_test.sh --components teleporter
teleporter_v2_e2e:
name: Teleporter V2 E2E Tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
./scripts/e2e_test.sh --components teleporterV2
governance_e2e:
name: governance-e2e-tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
./scripts/e2e_test.sh --components governance
validator_manager_e2e:
name: validator-manager-e2e-tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
./scripts/e2e_test.sh --components validator-manager
ictt_e2e:
name: ictt-e2e-tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
./scripts/e2e_test.sh --components ictt
ethereum_e2e:
name: ethereum-e2e-tests
needs: changes
if: ${{ needs.changes.outputs.contracts == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Install geth
run: ./scripts/install_geth.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
export PATH="$PATH:$HOME/.geth"
./scripts/e2e_test.sh --components ethereum-icm-verification
services_e2e:
name: ICM Services E2E Tests
needs: changes
if: ${{ needs.changes.outputs.services == 'true' || github.ref == 'refs/heads/main' }}
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: recursive
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
- name: Install Foundry
run: ./scripts/install_foundry.sh
- name: Install geth
run: ./scripts/install_geth.sh
- name: Run E2E Tests
# Forge installs to BASE_DIR, but updates the PATH definition in $HOME/.bashrc
run: |
export PATH=$PATH:$HOME/.foundry/bin
export PATH="$PATH:$GOPATH/bin"
export PATH="$PATH:$HOME/.geth"
./scripts/e2e_test.sh --components services