GitHub Actions as a time-sharing supercomputer

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • actions-batch

    Time-sharing supercomputer built on GitHub Actions

  • Docker-OSX

    Run macOS VM in a Docker! Run near native OSX-KVM in Docker! X11 Forwarding! CI/CD for OS X Security Research! Docker mac Containers.

  • Running macOS legally requires real mac servers and a bespoke storage solution: https://www.datacenterdynamics.com/en/analysis/not-just-stac...

    A self-hosted macOS runner will be more economical in the long-run, if you have a spot you can hook it up at, or if you're fine doing things less than legally, you can use https://github.com/sickcodes/Docker-OSX.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • paths-filter

    Conditionally run actions based on files modified by PR, feature branch or pushed commits

  • I truly don't understand why this isn't more widely discussed (I've seen several "GH Actions Gotchas" where this isn't mentioned). Many of the community actions also seem to be designed to run as short jobs to paper around missing features (for ex: https://github.com/dorny/paths-filter ), that end up eating up an enormous amount of your minutes budget.

  • BrowserBox

    🌀 Browse the web from a browser you run on a server, rather than on your local device. Lightweight virtual browser. For security, privacy and more! By https://github.com/dosyago

  • This is really cool, Alex: the ability to run arbitrary jobs on GitHub actions that you've wrapped into a convenient API that (I guess) automatically runs on the 3000 free-minutes that every GH account gets on default Ubuntu-runner actions every month.

    Super cool, I love this idea!

    Less general than you, but I also had a notion to do kewl shit on GH actions, and I figured out how to turn it into a a "personal ephemeral VPN-like" using BrowserBox. Basically, you fork/generate the BrowserBox project into your own account, enable Actions, and open the "Make VPN" issue template from the /issues/new page and voila! In a few minutes you get an up and running remote browser/private VPN that runs for 8 minutes or so (conservation, but you can tweak the value in the actions yaml!), and even cooler, the action job will post the login link into the comments section of the issue you opened!

    One hassle I have still not avoided is the necessity of using ngrok for this. Sure, you can get around it using a tor hidden service which we also support, but that requires the user connecting via a tor browser.

    Ngrok is required to create the tunnel from the BrowserBox running inside the GH Actions Runner, to the outside world.

    Technically, this is probably possible by using mkcert on the IP address of the runner, and posting the rootCA.pem as an attachment to an issue comment. You then need to add it to your trust store and you're good to go, but ngrok is the easier way: sign up to ngrok, get your API key, add it to the Repository Secrets in settings and hit the "Make VPN" issue.

    Seems like a lot of steps, so I added a "conversational" set of instructions posted by the runner as issue comments to guide you through it.

    Check it out la! :)

    https://github.com/BrowserBox/BrowserBox?tab=readme-ov-file#...

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts