Fix som #352
Workflow file for this run
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: Tests | |
on: [push, pull_request] | |
jobs: | |
test_awfy: | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { name: Java, id: java, folder: Java } | |
- { name: SOM, id: som, folder: SOM } | |
- { name: Crystal, id: crystal, folder: Crystal } | |
- { name: JavaScript, id: js, folder: JavaScript } | |
- { name: SOMns, id: somns, folder: SOMns } | |
#- { name: Pharo, id: pharo, folder: Smalltalk } | |
- { name: Squeak 64-bit, id: squeak64, folder: Smalltalk } | |
- { name: Ruby, id: ruby, folder: Ruby } | |
- { name: Lua, id: lua, folder: Lua } | |
- { name: Python, id: python, folder: Python } | |
name: ${{ matrix.name }} | |
steps: | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Checkout AWFY Repository | |
uses: actions/checkout@v4 | |
- name: Install ReBench | |
run: | | |
python -m pip install ReBench | |
- name: Install asdf and asdf-awfy | |
run: | | |
git clone --depth 1 https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.14.0 | |
asdf plugin add awfy https://github.com/smarr/asdf-awfy.git | |
if: matrix.id == 'squeak64' | |
- name: Install Crystal | |
if: matrix.id == 'crystal' | |
uses: oprypin/install-crystal@v1 | |
- name: Install JS | |
if: matrix.id == 'js' | |
run: | | |
(cd benchmarks/JavaScript; npm install .) | |
- name: Install Pharo | |
if: matrix.id == 'pharo' | |
uses: hpi-swa/setup-smalltalkCI@v1 | |
with: | |
smalltalk-image: Pharo64-stable | |
- name: Install Squeak64 | |
if: matrix.id == 'squeak64' | |
run: | | |
~/.asdf/bin/asdf install awfy squeak-6.0-22148 | |
- name: Install Squeak32 | |
if: matrix.id == 'squeak32' | |
uses: hpi-swa/setup-smalltalkCI@v1 | |
with: | |
smalltalk-image: Squeak32-5.2 | |
- name: Install Ruby | |
if: matrix.id == 'ruby' | |
run: | | |
sudo gem install rubocop | |
- name: Install Lua | |
uses: leafo/gh-actions-lua@v10 | |
with: | |
luaVersion: 5.2 | |
if: matrix.id == 'lua' | |
- name: Install LuaRocks | |
uses: leafo/gh-actions-luarocks@v4 | |
if: matrix.id == 'lua' | |
- name: Install LuaCheck and lua5.2 symlink | |
run: | | |
luarocks install luacheck | |
(cd .lua/bin && ln -s lua lua5.2) | |
if: matrix.id == 'lua' | |
- name: Install Python | |
run: | | |
python -m pip install pylint | |
if: matrix.id == 'python' | |
- name: Install SOM | |
run: | | |
source benchmarks/script.inc | |
load_git_repo https://github.com/SOM-st/som-java.git SOM | |
pushd SOM | |
git submodule update --recursive --init | |
ant | |
popd | |
source benchmarks/script.inc | |
load_git_repo https://github.com/SOM-st/TruffleSOM.git TruffleSOM | |
pushd TruffleSOM | |
git submodule update --recursive --init | |
./som --setup mx | |
./som --setup labsjdk | |
../mx/mx build | |
if: matrix.id == 'som' | |
- name: Python Black Style Check | |
uses: psf/black@stable | |
with: | |
options: "--check --diff ." | |
src: "./benchmarks/Python" | |
if: matrix.id == 'python' | |
- name: Build | |
run: | | |
benchmarks/${{ matrix.folder }}/build.sh | |
- name: ReBench Test Run | |
run: | | |
rebench test.conf test-${{ matrix.id }} | |
- name: Style Check | |
run: | | |
benchmarks/${{ matrix.folder }}/build.sh style skip-black-for-python |