hpi-swa / smalltalkCI

Framework for testing Smalltalk projects with GitHub Actions, GitLab CI, Travis CI, AppVeyor, and others.
MIT License
94 stars 68 forks source link

update GemStone builds to run on Ubuntu 20.04 and macos-latest #593

Closed dalehenrich closed 1 year ago

dalehenrich commented 1 year ago

The issues:

  1. GsDevKit_home upon which the current version of smalltalkCI for GemStone is built does not function on either Ubuntu 20.04 or the recent MacOS versions, because of it's reliance on 32 bit Pharo 3.0.
  2. GemStone 3.5.3 is the earliest GemStone version that runs on Ubuntu 20.04.

With this pull request, the functionality formerly supplied by GsDevKit_home in the gemstone/run.sh script is now provided by GsDevKit_stones the heir apparent to GsDevKit_home and superDoit a framework for writing shell scripts using GemStone/64 smalltalk that run against an existing stone or against a standalone topaz solo extent.

The Ubuntu 20.04 restriction is imposed by GitHub, this new version of smalltalkCI can be run against GemStone versions as old as 3.4.0 on Ubunutu 18.04

dalehenrich commented 1 year ago

I'm not familiar with the set of yaml expressions that are needed to ignore GToolKit failures ... I end up flailing whenever I touch yaml, so if you give me the needed edits I'll make those changes as well and we'll be able to get a full run under our belts ...

fniephaus commented 1 year ago

I'm not familiar with the set of yaml expressions that are needed to ignore GToolKit failures ... I end up flailing whenever I touch yaml, so if you give me the needed edits I'll make those changes as well and we'll be able to get a full run under our belts ...

In smalltalkCI, we currently use this for allowed failures. Not sure GitHub has added a better way to specify this.

dalehenrich commented 1 year ago

so this would be the expression to use:

if: contains(matrix.smalltalk, 'trunk') || contains(matrix.smalltalk, 'alpha') || contains(matrix.smalltalk, 'Squeak32-6.0') || contains(matrix.smalltalk, 'GToolkit64')
fniephaus commented 1 year ago

Yes, and you need to adjust the inversion: https://github.com/hpi-swa/smalltalkCI/blob/a370792dd18fbc1f873079fda011f5dccd9dd2ca/.github/workflows/main.yml#L83

dalehenrich commented 1 year ago

By jove, I think we've got it!