Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] ci: preiodically run tests on all platforms #635

Closed
wants to merge 12 commits into from
24 changes: 22 additions & 2 deletions .github/workflows/build-binaries.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: Build LLVM binaries

on:
pull_request:
schedule:
- cron: '0 0 1 * *' # every month to regenerate ccache
workflow_dispatch:
Expand Down Expand Up @@ -33,7 +34,7 @@ on:
description: "Build for Windows amd64?"
required: false
type: boolean
default: true
default: false


jobs:
Expand All @@ -47,7 +48,8 @@ jobs:
id: prepare-matrix
run: |
# Define general matrix parameters
WINDOWS='{"name":"Windows","runner":"windows-2022-github-hosted-64core"}'
# Uncomment after fixing llvm-check on Windows
# WINDOWS='{"name":"Windows","runner":"windows-2022-github-hosted-64core"}'
MACOS_AMD64='{"name":"MacOS-x86","runner":"macos-12-large"}'
MACOS_ARM64='{"name":"MacOS-arm64","runner":["self-hosted","macOS","ARM64"]}'
LINUX_AMD64='{"name":"Linux-AMD64","runner":"matterlabs-ci-runner","image":"matterlabs/llvm_runner:ubuntu22-llvm17-latest"}'
Expand Down Expand Up @@ -102,3 +104,21 @@ jobs:
with:
name: llvm-bins-${{ runner.os }}-${{ runner.arch }}
path: ./${{ runner.os }}-${{ runner.arch }}-target-final.tar.gz

- name: Running Lit tests (Windows)
if: runner.os == 'Windows'
shell: 'msys2 {0}'
run: ninja -C './target-llvm/build-final' verify-llvm -v

- name: Running Lit tests
if: runner.os != 'Windows'
run: ninja -C './target-llvm/build-final' verify-llvm -v

- name: Send Slack notification
uses: 8398a7/action-slack@v3
if: failure() && github.event_name == 'schedule'
with:
status: ${{ job.status }}
fields: repo,commit,author,action,eventName,ref,workflow,job,took
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
54 changes: 54 additions & 0 deletions .github/workflows/multiplatform-integration-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Multiplatform integration tests

on:
pull_request:
schedule:
- cron: '0 0 1 * *' # every month to regenerate ccache
workflow_dispatch:
inputs:
ref:
description: "Git REF to use for the build"
required: false
type: string
enable_macos_amd64:
description: "Enable MacOS amd64?"
required: false
type: boolean
default: true
enable_macos_arm64:
description: "Enable MacOS arm64?"
required: false
type: boolean
default: true
enable_linux_amd64:
description: "Enable Linux amd64?"
required: false
type: boolean
default: true
enable_linux_arm64:
description: "Enable Linux arm64?"
required: false
type: boolean
default: true
enable_windows_amd64:
description: "Enable Windows amd64?"
required: false
type: boolean
default: true


jobs:

integration-tests:
uses: matter-labs/era-compiler-ci/.github/workflows/integration-tests.yaml@aba-multiplatform-integration-tests
secrets: inherit
with:
compiler-tester-ref: 'abalias-cpr-1396-run-compiler-tester-lit-tests-in-github-action-on-macos'
llvm-ref: ${{ inputs.ref }}
ccache-key-type: 'static'
compiler-llvm-repo: ${{ github.event.repository.full_name }}
enable-linux-amd64: ${{ inputs.enable_linux_amd64 || false }}
enable-macos-amd64: ${{ inputs.enable_macos_amd64 || true }}
enable-macos-arm64: ${{ inputs.enable_macos_arm64 || true }}
enable-linux-arm64: ${{ inputs.enable_linux_arm64 || false }} # not supported yet, compiler-tester issue with vyper linux arm64 binaries
enable-windows-amd64: ${{ inputs.enable_windows_amd64 || false }} # not supported, long paths issue
Loading