Hacker News new | ask | show | jobs
by zomglings 1861 days ago
In the last week, there have been at least two ~1 hour periods where actions were stuck in the queue. Even posted about this on the GitHub community, but no response. [0]

As unreliable as GitHub Actions are, their convenience factor and price are right.

We take a very simple measure so we don't get fucked by these kinds of incidents: we don't use any actions from the marketplace.

All our GitHub Actions workflows are bash scripts that we wrote (and which often live in our repos at `deploy/deploy.bash`). The secrets necessary to run these scripts are available to the infrastructure team on 1Password.

This makes it easy for us to deploy manually and retroactively reflect that release on GitHub (e.g. through a tag or a release).

[0] https://github.community/t/github-action-stuck-on-starting-w...

1 comments

This is an interesting approach. I also dislike the current architecture they are pushing. Actions can break any time. Makes pipelines/actions very fragile and as you pointed not portable either.

The portability could be fixed by having a local cli runner that understand action yamls. Would be interesting to explore this.

For a while i have been fantasizing about an universal pipeline language. Like having LLVM with a unified model that can translate into different vendor implementations.

> The portability could be fixed by having a local cli runner that understand action yamls. Would be interesting to explore this.

This is a great idea. I guess the challenge would be keeping up with the more advanced aspects of Actions, eg. spinning up multiple VMs during the build process and other things that have a heavy infrastructure (or platform-specific) element.

I'm currently caught by the GitHub Actions downtime, but like the GP, all my build scripts generally make very light use of the platform-specific features and generally I keep most of the build logic in a build.sh file.

So I can build production builds locally if I need to - but a CLI that lets you "properly" run the GitHub yml files locally would be very interesting.