feat: only instantiate test resources once in Pharo #506
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: smalltalkCI Self Test | |
on: | |
push: | |
paths-ignore: | |
- '**.md' | |
- 'docs/**' | |
- '.appveyor.yml' | |
- '.travis.yml' | |
pull_request: | |
paths-ignore: | |
- '**.md' | |
- 'docs/**' | |
- '.appveyor.yml' | |
- '.travis.yml' | |
workflow_dispatch: | |
jobs: | |
build: | |
strategy: | |
matrix: | |
os: [ ubuntu-20.04, macos-latest, windows-2019 ] | |
smalltalk: | |
- Squeak64-trunk | |
- Squeak64-6.0 | |
- Squeak64-5.3 | |
- Squeak64-5.2 | |
- Squeak64-5.1 | |
- Squeak32-trunk | |
- Squeak32-6.0 | |
- Squeak32-4.5 | |
- Pharo64-stable | |
- Pharo64-alpha | |
- Pharo64-13 | |
- Pharo64-12 | |
- Pharo64-11 | |
- Pharo64-10 | |
- Pharo64-9.0 | |
- Pharo64-8.0 | |
- Pharo64-7.0 | |
- Pharo64-6.1 | |
- Pharo64-6.0 | |
- Pharo32-stable | |
- Pharo32-alpha | |
- Pharo32-3.0 | |
- Moose64-12 | |
- Moose64-11 | |
- Moose64-10 | |
- Moose64-9.0 | |
- Moose64-8.0 | |
- GemStone64-3.5.8 | |
- GemStone64-3.6.8 | |
- GemStone64-3.7.1 | |
- GToolkit64-release | |
exclude: # exclude 32bit builds on macOS and GemStone builds on windows | |
- os: macos-latest | |
smalltalk: Squeak32-trunk | |
- os: macos-latest | |
smalltalk: Squeak32-6.0 | |
- os: macos-latest | |
smalltalk: Squeak32-4.5 | |
- os: macos-latest | |
smalltalk: Pharo32-stable | |
- os: macos-latest | |
smalltalk: Pharo32-alpha | |
- os: macos-latest | |
smalltalk: Pharo32-3.0 | |
- os: macos-latest | |
smalltalk: GemStone64-3.5.8 | |
- os: macos-latest | |
smalltalk: GemStone64-3.6.8 | |
- os: windows-2019 | |
smalltalk: Pharo64-10 | |
- os: windows-2019 | |
smalltalk: Pharo64-6.0 | |
- os: windows-2019 | |
smalltalk: GemStone64-3.5.8 | |
- os: windows-2019 | |
smalltalk: GemStone64-3.6.8 | |
- os: windows-2019 | |
smalltalk: GemStone64-3.7.1 | |
runs-on: ${{ matrix.os }} | |
name: ${{ matrix.smalltalk }} on ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup smalltalkCI | |
uses: hpi-swa/setup-smalltalkCI@v1 | |
with: | |
smalltalk-image: ${{ matrix.smalltalk }} | |
- name: Run smalltalkCI self test | |
run: | | |
tests/all_tests.sh | |
bin/smalltalkci -s ${{ matrix.smalltalk }} --self-test | |
shell: bash | |
if: contains(matrix.smalltalk, 'trunk') == false && contains(matrix.smalltalk, 'alpha') == false && contains(matrix.smalltalk, 'Squeak32-6.0') == false && contains(matrix.smalltalk, 'GToolkit64') == false && contains(matrix.smalltalk, 'Pharo64-12') == false | |
timeout-minutes: 15 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run smalltalkCI self test and ignore failures | |
run: bin/smalltalkci -s ${{ matrix.smalltalk }} --self-test || true | |
shell: bash | |
if: contains(matrix.smalltalk, 'trunk') || contains(matrix.smalltalk, 'alpha') || contains(matrix.smalltalk, 'Squeak32-6.0') || contains(matrix.smalltalk, 'GToolkit64') || contains(matrix.smalltalk, 'Pharo64-12') | |
# Builds on macOS are extremely slow for some reason, and the Squeak trunk | |
# image hits the 15 minute timeout because it needs to update from the repository | |
# each time, which takes forever. | |
timeout-minutes: ${{ (matrix.os == 'macos-latest' && contains(matrix.smalltalk, 'trunk')) && 30 || 15 }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |