GitHub Action
Create Image
GitHub Action for creating and preparing an all-in-one image for Squeak.
You can use this action in your workflow to automatically deploy a one-click/all-in-one image bundle of Squeak containing your app or modifications.
- The bundle is fetched from https://squeak.org/downloads and will contain a ready-to-use image and VM binaries for all supported platforms (head over to squeak-smalltalk/squeak-app for more information).
- Currently, only the latest version of the Squeak Trunk is supported.
- Currently, only 64-bit binaries are supported.
Below is a simple example workflow that creates an image, loads some code into it, and uploads the image bundle as an artifact of your workflow:
on:
push:
branches: [master]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: LinqLover/create-image@master
id: create-image
with:
prepare-script: ./scripts/prepareImage.st
- uses: actions/upload-artifact@master
with:
name: image
path: ${{ steps.create-image.outputs.bundle-path }}
In this example, scripts/prepareImage.st
might look like this:
"Install something..."
Installer new merge: #ffi.
"Open some welcome contents..."
MovingEyeMorph extraExampleSqueakIsWatchingYou openCenteredInWorld.
Parameter | Description | Example | Required? |
prepare-script |
A script to be filed into the image before saving it. | /path/to/script.st |
optional |
postpare-script |
A script to be executed in the image after saving it, i.e., in the moment the user opens it again. | /path/to/script.st |
optional |
All the silly mistakes and typos made by you in the prepare/postpare scripts will be caught by the action and displayed in the action log.
Parameter | Description | Example |
bundle-path |
Indicates the path to the created bundle file. | /path/to/Squeak6.0Alpha-12345-64bit-AllInOne.zip |
To browse further usage examples, click here.
... is as always very welcome! If you use this action, have any ideas for improvements, or even would like to submit your patch, my issues & PRs are open!
Carpe Squeak! 🎈