name: Test Ethereum Plugeth Fixturenet Stack on: push: branches: '*' pull_request: schedule: # Note: coordinate with other tests to not overload runners at the same time of day - cron: '14 01 * * *' jobs: test: name: "Test fixturenet-plugeth stack" strategy: matrix: os: [ubuntu-latest, ubuntu-latest-arm] runs-on: ${{ matrix.os }} steps: - name: "Clone project repository" uses: actions/checkout@v3 # At present the stock setup-python action fails on Linux/aarch64 # Conditional steps below workaroud this by using deadsnakes for that case only - name: "Install Python for ARM on Linux" if: ${{ runner.arch == 'arm64' && runner.os == 'Linux' }} uses: deadsnakes/action@v3.0.1 with: python-version: 3.11 - name: "Install Python cases other than ARM on Linux" if: ${{ ! (runner.arch == 'arm64' && runner.os == 'Linux') }} uses: actions/setup-python@v4 with: python-version: 3.11 - name: "Print Python version" run: python3 --version - name: "Install stack orchestrator" run: ./scripts/install-so.sh - name: "Run stack tests" run: | PATH=$PATH:~/bin ./tests/fixturenet-plugeth-stack/run-test.sh - name: Notify Vulcanize Slack on CI failure if: ${{ always() && github.ref_name == 'main' }} uses: ravsamhq/notify-slack-action@v2 with: status: ${{ job.status }} notify_when: 'failure' env: SLACK_WEBHOOK_URL: ${{ secrets.VULCANIZE_SLACK_CI_ALERTS }} - name: Notify DeepStack Slack on CI failure if: ${{ always() && github.ref_name == 'main' }} uses: ravsamhq/notify-slack-action@v2 with: status: ${{ job.status }} notify_when: 'failure' env: SLACK_WEBHOOK_URL: ${{ secrets.DEEPSTACK_SLACK_CI_ALERTS }}