Merge pull request #2377 from natalie-lang/better-asan-test #104
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
env: | |
DOCKER_FLAGS: "" | |
CI: 1 | |
jobs: | |
output: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: diff output | |
run: rake docker_test_output | |
linux: | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: | |
- gcc | |
- clang | |
group: | |
- group1 | |
- group2 | |
- group3 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: run tests | |
env: | |
RUBY: ruby3.3 | |
NAT_BUILD_MODE: debug | |
run: | | |
export GLOB=$(ruby spec/support/split_specs.rb 3 ${{ matrix.group }}) | |
rake docker_test_${{ matrix.compiler }} | |
macos: | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
group: | |
- group1 | |
- group2 | |
- group3 | |
- group4 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: install ruby | |
run: | | |
brew update | |
brew uninstall -f --ignore-dependencies ruby | |
brew uninstall -f --ignore-dependencies [email protected] | |
rm -rf /usr/local/lib/ruby/gems/3.0.0 /usr/local/opt/[email protected] | |
brew install [email protected] | |
- name: check ruby | |
run: | | |
export PATH="/opt/homebrew/opt/ruby/bin:$PATH" | |
which ruby | |
ruby --version | |
which bundle | |
- name: install build tools | |
run: brew install --force --overwrite autoconf automake libtool pkg-config | |
- name: install openssl | |
run: brew install openssl | |
- name: install libffi | |
run: brew install libffi | |
# - name: setup upterm session for remote debugging | |
# uses: owenthereal/action-upterm@v1 | |
- name: test with clang on macOS | |
env: | |
PKG_CONFIG_PATH: /usr/local/opt/openssl@3/lib/pkgconfig:/opt/homebrew/opt/openssl@3/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig:/opt/homebrew/opt/libffi/lib/pkgconfig | |
NAT_BUILD_MODE: release | |
run: | | |
export GLOB=$(ruby spec/support/split_specs.rb 4 ${{ matrix.group }}) | |
export PATH="/opt/homebrew/opt/ruby/bin:$PATH" | |
rake test | |
self-hosted: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: build self-hosted binary | |
run: rake docker_test_self_hosted | |
asan: | |
runs-on: ubuntu-24.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: test with AddressSanitizer | |
run: rake docker_test_asan |