news.volyx.in

I hate GitHub Actions with passion (xlii.space)

490 points by xlii · 280 days ago · 341 comments on HN

Article summary

The author expresses frustration with GitHub Actions, citing a recent experience where a build failed on one platform due to inconsistent setup. The author had to spend time debugging and troubleshooting, and eventually moved the logic to a GNU Makefile to avoid further issues. The author argues that GitHub Actions can be problematic and that it's better to keep logic under one's own control. The author also mentions that GitHub Actions has some benefits, such as easy setup for macOS builds.

Main themes

  • GitHub Actions
  • CI/CD pipelines
  • Debugging and troubleshooting
  • Scripting and automation
  • Platform inconsistencies

What commenters say

  • Using a tool like act can help replicate GitHub Actions locally, but it may not be a perfect solution.
  • Keeping logic out of GitHub Actions and in separate scripts is a best practice to avoid debugging issues.
  • Some developers disagree on the best approach to scripting, with some preferring simple shell scripts and others advocating for more complex solutions.
  • The use of proprietary YAML in GitHub Actions can lead to lock-in and make it difficult to switch to other CI/CD systems.
  • Debugging GitHub Actions can be improved with tools like tmate or upterm, which provide a remote shell for troubleshooting.
  • Over-engineering and under-engineering are both potential pitfalls in CI/CD pipeline design, and a balanced approach is necessary.
  • The choice of scripting language for CI/CD pipelines is subjective and depends on the specific needs of the project.