Test runner auto update?

Hi there!
I maintain the Roc track. Roc does not have versioned releases yet, so we use the nightly build in the test runner’s Dockerfile. Is there a way to ensure that the test runner’s docker image automatically gets rebuilt daily (or at least every few days), to always use the latest Roc version? If it can’t be done automatically, is there a way I can trigger it when needed?
Also, is there a way to know which version is currently deployed?
Lastly, once a test-runner PR is merged, how long does it take until the updated image is live?
Thanks a lot!

You probably can set the build and deploy GHA to run on a schedule. Daily seems like a lot though. Does Roc change that much that often? Maybe once a week would suffice.

I don’t believe it takes very long to synchronize Docker images. On Exercism, the build page for your track should tell you the latest commit checksum the test runner is on. You can cross-reference that with the repo commit history.

Thanks @BNAndras !
You’re right, once a week would probably be just fine.
Could you please point me to the Exercism build page you’re referring to? I don’t know where to look.

Oh, are you referring to the GitHub Actions page for the roc-test-runner? The 5 latest entries were all triggered by my latest PR, and it seems like the last one is named “Deploy #17”: does this mean it’s deployed to the website? Or is there some delay between this deployment and the actual availability on the website?

Scroll down to the test runner section of Roc impact and status on Exercism.

1 Like

If you re-run GitHub actions weekly, the test-runner commit ID will not change. As you don’t have a versioning scheme to name the current Roc version inside the test-runner, you probably need to emit some indication yourself, like commit ID of Roc used or the date of the nightly build.

1 Like