{"slug": "github-actions", "name": "GitHub Actions", "category": "infra", "category_name": "Infrastructure and DevOps", "description": "GitHub's built-in CI/CD and workflow automation service for repositories hosted on GitHub.", "recommenders": 14, "commenters": 76, "warners": 35, "score": -12.684, "rising": -1.93, "first": "2025-11-28", "latest": "2026-10-30", "why": "Liked for easy setup on every commit and PR, simple cross-platform build matrices and free minutes that make it valuable for open source projects.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 14, "neutral": 29, "compare": 0, "warn": 37}, "spark": [1, 2, 1, 1, 3, 0, 2, 1, 1, 2, 0, 0], "listed": true, "loved": ["Free for OSS", "Easy setup"], "caveat": "Outages", "short_quote": "I like Github Actions and it is better than what I used before (Travis)", "icon": false, "domain": null, "github_repo": null, "official_url": "https://github.com/features/actions", "pricing": "freemium", "aliases": ["GitHub Actions"], "verdict": [{"text": "Liked for easy setup on every commit and PR,", "cites": [{"id": 791536192, "item_id": 49471012, "url": "https://news.ycombinator.com/item?id=49471012", "by": "nightpool", "date": "2026-08-27", "stance": "recommend", "quote": "there's no beating Actions in terms of its ease of setup and ecosystem advantage", "excerpt": "Yes, I was actually a part-time Jenkins admin back in high school and college. I use CircleCI more than Actions most of the time (and used Travis before that), especially for higher cost workflows, but there's no beating Actions in terms of its ease of setup and ecosystem advantage. It's way easier to just set up a simple JS file that runs on every commit in Actions compared to anywhere else. Would be happy to be pro", "context": "former part-time Jenkins admin", "use_case": "CI on every commit", "switched_from": "", "story": "GitHub Outage Tracker: Is GitHub Cooked?"}, {"id": 740694224, "item_id": 46293389, "url": "https://news.ycombinator.com/item?id=46293389", "by": "peterldowns", "date": "2025-12-16", "stance": "recommend", "quote": "having the status checks run on every PR, automatically, is great", "excerpt": "I'm happy to see they're investing in Actions \u2014 charging for it should help make sure it continues to work. It's a huge reason Github is so valuable: having the status checks run on every PR, automatically, is great. Even though I'm more of a fan of Buildkite when it comes to configuring the workflows, I still need something to kick them off when PRs change, etc. Charging a per-workflow-minute platform fee makes a lo", "context": "", "use_case": "PR status checks", "switched_from": "", "story": "Pricing Changes for GitHub Actions"}, {"id": 750572208, "item_id": 46910763, "url": "https://news.ycombinator.com/item?id=46910763", "by": "999900000999", "date": "2026-02-06", "stance": "recommend", "quote": "It's fantastic for simple jobs, I use it for my hobbyist projects", "excerpt": "At which point did someone force OP to use GH Actions ? It's fantastic for simple jobs, I use it for my hobbyist projects because I just need 20 to 30 lines to build and deploy a web build. Just because a bike isn't good for traveling in freezing weather doesn't mean no one should own a bike. Pick the right tool for the job. Plus CI/CD is the boring part. I always imagined GH Actions as a quick and somewhat sloppy so", "context": "hobbyist", "use_case": "build and deploy hobby projects", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}]}, {"text": " simple cross-platform build matrices", "cites": [{"id": 760959200, "item_id": 47559950, "url": "https://news.ycombinator.com/item?id=47559950", "by": "simonw", "date": "2026-03-28", "stance": "recommend", "quote": "I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy", "excerpt": "I used to see supporting multiple versions of Python as an expensive chore... and then I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy - my test suites are comprehensive enough that if they pass I'm confident it will work on that version. I expect this should work equally well for Go.", "context": "", "use_case": "testing multiple Python versions", "switched_from": "", "story": "Stop picking my Go version for me"}, {"id": 759704882, "item_id": 47481555, "url": "https://news.ycombinator.com/item?id=47481555", "by": "rahimnathwani", "date": "2026-03-22", "stance": "recommend", "quote": "Building the app for different platforms and architectures was easy with GitHub Actions.", "excerpt": "It had been many years since I last developed a desktop app. A couple of weeks ago I used Tauri to create a simple app for Windows and Mac. Developing the app was easy with Claude. Building the app for different platforms and architectures was easy with GitHub Actions. But after I had the msi and dmg files, my non-techy colleagues couldn't install the apps because they weren't signed. The workaround for Mac was fine ", "context": "", "use_case": "cross-platform builds", "switched_from": "", "story": "Windows native app development is a mess"}, {"id": 767035200, "item_id": 47939700, "url": "https://news.ycombinator.com/item?id=47939700", "by": "octorian", "date": "2026-04-28", "stance": "warn", "quote": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug.", "excerpt": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug. A lot of the time, it feels like I'm tinkering with this huge script then holding my breath and hoping I got it right. The reason I use them, however, is because its more trouble than its worth to maintain build servers for the 3 platforms I care about (Windows, macOS, Linux) myself", "context": "", "use_case": "CI builds for Windows, macOS, Linux", "switched_from": "", "story": "GitHub Actions is the weakest link"}]}, {"text": " and free minutes that make it valuable for open source projects.", "cites": [{"id": 770008496, "item_id": 48125531, "url": "https://news.ycombinator.com/item?id=48125531", "by": "jviotti", "date": "2026-05-13", "stance": "recommend", "quote": "Right now it's somehow all fully free on GitHub Actions.", "excerpt": "I use it pretty heavily on C++ stuff at GitHub.com/sourcemeta. i.e. take https://github.com/sourcemeta/blaze and this example recent run: https://github.com/sourcemeta/blaze/actions/runs/25751796502. 12 jobs per PR for up to 30 minutes running Linux, macOS, and Windows jobs on LLVM, GCC, and MSVC in static and shared builds with also some sanitiser configurations. And consider across projects we might send dozens of ", "context": "maintains C++ open source projects", "use_case": "CI for C++ projects", "switched_from": "", "story": "Why I'm leaving GitHub for Forgejo"}, {"id": 745871536, "item_id": 46616971, "url": "https://news.ycombinator.com/item?id=46616971", "by": "arximboldi", "date": "2026-01-14", "stance": "recommend", "quote": "I like Github Actions and it is better than what I used before (Travis)", "excerpt": "I like Github Actions and it is better than what I used before (Travis) and I think it solves an important problem. For OSS projects it's a super valuable free resource. For me what worked wonders was adopting Nix. Make sure you have a reproducible dev environment and wrap your commands in `nix-shell --run`, or even better `nix develop --command`, or even better your most of your CI tasks derivations that run with `n", "context": "", "use_case": "CI", "switched_from": "Travis CI", "story": "I Hate GitHub Actions with Passion"}, {"id": 769820720, "item_id": 48113795, "url": "https://news.ycombinator.com/item?id=48113795", "by": "verdverm", "date": "2026-05-12", "stance": "recommend", "quote": "Their free actions and robust ecosystem is a huge moat", "excerpt": "Their free actions and robust ecosystem is a huge moat", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: What would you want in a GitHub alternative?"}]}, {"text": " The most common complaint is frequent outages, with jobs that queue, fail to dispatch or stall even on self-hosted runners.", "cites": [{"id": 803615680, "item_id": 50225980, "url": "https://news.ycombinator.com/item?id=50225980", "by": "prepend", "date": "2026-10-24", "stance": "warn", "quote": "I use github actions and it\u2019s down multiple times each week.", "excerpt": "They have a lot of downtime. I use github actions and it\u2019s down multiple times each week. I like github, but it\u2019s getting kind of nuts.", "context": "", "use_case": "CI", "switched_from": "", "story": "Roku developer repositories moved from GitHub to GitLab"}, {"id": 787256257, "item_id": 49203516, "url": "https://news.ycombinator.com/item?id=49203516", "by": "yashap", "date": "2026-08-06", "stance": "warn", "quote": "Brutal outage.", "excerpt": "We use other runners (Blacksmith), and it hasn't helped, still hard down all day long. Brutal outage. As a side note, I started getting these symptoms (actions staying queued forever or not running at all) at 5pm PDT yesterday, intermittently. And definitely full outage by 8:30pm PDT. So for sure full outage for 7 hours and counting, even if you use other runners, and I strongly believe partial outage for ~15.5+ hrs ", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Down"}, {"id": 787189104, "item_id": 49199319, "url": "https://news.ycombinator.com/item?id=49199319", "by": "arandomhuman", "date": "2026-08-06", "stance": "warn", "quote": "even self hosted workers don't work during these outages", "excerpt": "I love how even self hosted workers don't work during these outages - running jobs on their infrastructure being flakey is marginally acceptable, but the API to simply schedule workflows having this availability is mind boggling. Github just doesn't seem like a serious company anymore.", "context": "", "use_case": "CI workflows", "switched_from": "", "story": "GitHub Actions Is Down"}, {"id": 750547312, "item_id": 46909207, "url": "https://news.ycombinator.com/item?id=46909207", "by": "anttiharju", "date": "2026-02-05", "stance": "warn", "quote": "just the base reliability is going downhill.", "excerpt": "Github being less and less reliable nowadays just makes this more true. In the past week I have seen: - actions/checkout inexplicably failing, sometimes succeeding on 3rd retry (of the built-in retry logic) - release ci jobs scheduling _twice_, causing failures, because ofc the release already exists - jobs just not scheduling. Sometimes for 40m. I have been using it actively for a few years and putting aside everyth", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}, {"id": 799528480, "item_id": 49970530, "url": "https://news.ycombinator.com/item?id=49970530", "by": "rosslh", "date": "2026-10-05", "stance": "warn", "quote": "My company switched to a different provider for our action runners partly for reliability reasons.", "excerpt": "My company switched to a different provider for our action runners partly for reliability reasons. Despite that, jobs still aren't being dispatched.", "context": "", "use_case": "CI runners", "switched_from": "", "story": "Incident with Actions"}]}], "praise": [{"label": "Free for OSS", "summary": "Commenters call the free action minutes a major draw, especially for open source projects.", "quotes": [{"id": 770008496, "item_id": 48125531, "url": "https://news.ycombinator.com/item?id=48125531", "by": "jviotti", "date": "2026-05-13", "stance": "recommend", "quote": "Right now it's somehow all fully free on GitHub Actions.", "excerpt": "I use it pretty heavily on C++ stuff at GitHub.com/sourcemeta. i.e. take https://github.com/sourcemeta/blaze and this example recent run: https://github.com/sourcemeta/blaze/actions/runs/25751796502. 12 jobs per PR for up to 30 minutes running Linux, macOS, and Windows jobs on LLVM, GCC, and MSVC in static and shared builds with also some sanitiser configurations. And consider across projects we might send dozens of ", "context": "maintains C++ open source projects", "use_case": "CI for C++ projects", "switched_from": "", "story": "Why I'm leaving GitHub for Forgejo"}, {"id": 745871536, "item_id": 46616971, "url": "https://news.ycombinator.com/item?id=46616971", "by": "arximboldi", "date": "2026-01-14", "stance": "recommend", "quote": "I like Github Actions and it is better than what I used before (Travis)", "excerpt": "I like Github Actions and it is better than what I used before (Travis) and I think it solves an important problem. For OSS projects it's a super valuable free resource. For me what worked wonders was adopting Nix. Make sure you have a reproducible dev environment and wrap your commands in `nix-shell --run`, or even better `nix develop --command`, or even better your most of your CI tasks derivations that run with `n", "context": "", "use_case": "CI", "switched_from": "Travis CI", "story": "I Hate GitHub Actions with Passion"}, {"id": 769668113, "item_id": 48104257, "url": "https://news.ycombinator.com/item?id=48104257", "by": "verdverm", "date": "2026-05-11", "stance": "recommend", "quote": "the real moat at GitHub is that sweet sweet (free) action time.", "excerpt": "It wouldn't be hosted such that uptimes are an issue, it would get back to git's distributed roots. Like Tangled, but with private repos. Chat would be great (github's biggest missed opportunity imo), but the real moat at GitHub is that sweet sweet (free) action time.", "context": "", "use_case": "CI", "switched_from": "", "story": "Ask HN: What would you want in a GitHub alternative?"}]}, {"label": "Easy setup", "summary": "Simple workflows such as builds, deploys and checks on every commit are quick to set up.", "quotes": [{"id": 791536192, "item_id": 49471012, "url": "https://news.ycombinator.com/item?id=49471012", "by": "nightpool", "date": "2026-08-27", "stance": "recommend", "quote": "there's no beating Actions in terms of its ease of setup and ecosystem advantage", "excerpt": "Yes, I was actually a part-time Jenkins admin back in high school and college. I use CircleCI more than Actions most of the time (and used Travis before that), especially for higher cost workflows, but there's no beating Actions in terms of its ease of setup and ecosystem advantage. It's way easier to just set up a simple JS file that runs on every commit in Actions compared to anywhere else. Would be happy to be pro", "context": "former part-time Jenkins admin", "use_case": "CI on every commit", "switched_from": "", "story": "GitHub Outage Tracker: Is GitHub Cooked?"}, {"id": 750572208, "item_id": 46910763, "url": "https://news.ycombinator.com/item?id=46910763", "by": "999900000999", "date": "2026-02-06", "stance": "recommend", "quote": "It's fantastic for simple jobs, I use it for my hobbyist projects", "excerpt": "At which point did someone force OP to use GH Actions ? It's fantastic for simple jobs, I use it for my hobbyist projects because I just need 20 to 30 lines to build and deploy a web build. Just because a bike isn't good for traveling in freezing weather doesn't mean no one should own a bike. Pick the right tool for the job. Plus CI/CD is the boring part. I always imagined GH Actions as a quick and somewhat sloppy so", "context": "hobbyist", "use_case": "build and deploy hobby projects", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}, {"id": 740694224, "item_id": 46293389, "url": "https://news.ycombinator.com/item?id=46293389", "by": "peterldowns", "date": "2025-12-16", "stance": "recommend", "quote": "having the status checks run on every PR, automatically, is great", "excerpt": "I'm happy to see they're investing in Actions \u2014 charging for it should help make sure it continues to work. It's a huge reason Github is so valuable: having the status checks run on every PR, automatically, is great. Even though I'm more of a fan of Buildkite when it comes to configuring the workflows, I still need something to kick them off when PRs change, etc. Charging a per-workflow-minute platform fee makes a lo", "context": "", "use_case": "PR status checks", "switched_from": "", "story": "Pricing Changes for GitHub Actions"}]}, {"label": "Cross-platform builds", "summary": "The matrix feature and hosted runners make multi-version and multi-OS builds easy.", "quotes": [{"id": 760959200, "item_id": 47559950, "url": "https://news.ycombinator.com/item?id=47559950", "by": "simonw", "date": "2026-03-28", "stance": "recommend", "quote": "I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy", "excerpt": "I used to see supporting multiple versions of Python as an expensive chore... and then I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy - my test suites are comprehensive enough that if they pass I'm confident it will work on that version. I expect this should work equally well for Go.", "context": "", "use_case": "testing multiple Python versions", "switched_from": "", "story": "Stop picking my Go version for me"}, {"id": 759704882, "item_id": 47481555, "url": "https://news.ycombinator.com/item?id=47481555", "by": "rahimnathwani", "date": "2026-03-22", "stance": "recommend", "quote": "Building the app for different platforms and architectures was easy with GitHub Actions.", "excerpt": "It had been many years since I last developed a desktop app. A couple of weeks ago I used Tauri to create a simple app for Windows and Mac. Developing the app was easy with Claude. Building the app for different platforms and architectures was easy with GitHub Actions. But after I had the msi and dmg files, my non-techy colleagues couldn't install the apps because they weren't signed. The workaround for Mac was fine ", "context": "", "use_case": "cross-platform builds", "switched_from": "", "story": "Windows native app development is a mess"}, {"id": 767035200, "item_id": 47939700, "url": "https://news.ycombinator.com/item?id=47939700", "by": "octorian", "date": "2026-04-28", "stance": "warn", "quote": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug.", "excerpt": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug. A lot of the time, it feels like I'm tinkering with this huge script then holding my breath and hoping I got it right. The reason I use them, however, is because its more trouble than its worth to maintain build servers for the 3 platforms I care about (Windows, macOS, Linux) myself", "context": "", "use_case": "CI builds for Windows, macOS, Linux", "switched_from": "", "story": "GitHub Actions is the weakest link"}]}, {"label": "Ecosystem", "summary": "Its ecosystem and integration with GitHub are seen as a strong advantage.", "quotes": [{"id": 769820720, "item_id": 48113795, "url": "https://news.ycombinator.com/item?id=48113795", "by": "verdverm", "date": "2026-05-12", "stance": "recommend", "quote": "Their free actions and robust ecosystem is a huge moat", "excerpt": "Their free actions and robust ecosystem is a huge moat", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: What would you want in a GitHub alternative?"}, {"id": 791536192, "item_id": 49471012, "url": "https://news.ycombinator.com/item?id=49471012", "by": "nightpool", "date": "2026-08-27", "stance": "recommend", "quote": "there's no beating Actions in terms of its ease of setup and ecosystem advantage", "excerpt": "Yes, I was actually a part-time Jenkins admin back in high school and college. I use CircleCI more than Actions most of the time (and used Travis before that), especially for higher cost workflows, but there's no beating Actions in terms of its ease of setup and ecosystem advantage. It's way easier to just set up a simple JS file that runs on every commit in Actions compared to anywhere else. Would be happy to be pro", "context": "former part-time Jenkins admin", "use_case": "CI on every commit", "switched_from": "", "story": "GitHub Outage Tracker: Is GitHub Cooked?"}, {"id": 737317137, "item_id": 46082321, "url": "https://news.ycombinator.com/item?id=46082321", "by": "autotune", "date": "2025-11-28", "stance": "recommend", "quote": "Terraform with GitHub Actions works out perfectly.", "excerpt": "No love for DigitalOcean yet? Managed Kubernetes at around $60/month. Terraform with GitHub Actions works out perfectly.", "context": "", "use_case": "CI/CD for Terraform", "switched_from": "", "story": "Ask HN: Which cloud provider do you like best and why?"}]}, {"label": "Good value", "summary": "Some find the pricing cheap and good value for small or bootstrapped companies.", "quotes": [{"id": 740710400, "item_id": 46294400, "url": "https://news.ycombinator.com/item?id=46294400", "by": "peterldowns", "date": "2025-12-16", "stance": "recommend", "quote": "The price is extremely cheap and seems reasonable considering the benefits I receive.", "excerpt": "I appreciate being able to pay for a service I rely on. Using self-hosted runners, I previously paid nothing for Github Actions \u2014 now I do pay something for it. The price is extremely cheap and seems reasonable considering the benefits I receive. They've shown continued interest in investing in the product, and have a variety of things on their public roadmap that I'm looking forward to (including parallel steps) \u2014 h", "context": "", "use_case": "CI with self-hosted runners", "switched_from": "", "story": "Pricing Changes for GitHub Actions"}, {"id": 740696880, "item_id": 46293555, "url": "https://news.ycombinator.com/item?id=46293555", "by": "jillesvangurp", "date": "2025-12-16", "stance": "recommend", "quote": "If you are that kind of company, Github is amazing value.", "excerpt": "A few years ago, I had a build that was a bit slow on Github actions. I didn't want to switch to the paid plan just to spin up a worker. Basically we are a bootstrapped company with, at the time, no budget to pay ourselves or for extra stuff like fancy build servers. If you are that kind of company, Github is amazing value. To solve the problem, I created a simple vm in Google Cloud with a lot of CPU and memory that ", "context": "bootstrapped startup", "use_case": "CI builds and monitoring scripts", "switched_from": "", "story": "Pricing Changes for GitHub Actions"}]}, {"label": "Works reliably", "summary": "A few users report workflows that run consistently without trouble.", "quotes": [{"id": 773798929, "item_id": 48362433, "url": "https://news.ycombinator.com/item?id=48362433", "by": "keithnz", "date": "2026-06-01", "stance": "recommend", "quote": "we have actions that work every single time", "excerpt": "All this hate directed at github feels odd, every time I look into people complaining, or moving their projects off, other than a few related to genuine bugs, many just seem ideological. This article, calling it a crime against software? ... It's just silly. The article itself is a crime against articles, barely readable, weird ass colors. It mostly seems a regurgitation of other peoples complaints and mostly overblo", "context": "company user of GitHub", "use_case": "CI", "switched_from": "", "story": "GitHub and the Crime Against Software"}, {"id": 791303153, "item_id": 49456447, "url": "https://news.ycombinator.com/item?id=49456447", "by": "vinnymac", "date": "2026-08-26", "stance": "recommend", "quote": "With GHA I haven't had that experience", "excerpt": "I find this recommendation funny, because I completely agree from a sysadmin perspective. I used to use Gitlab at work, and small teams would run into so many footguns with CI that we had to throw up guardrails to prevent mistakes. Far too many links to gitlab issues that were not fixed even after >8+ years of being open ended up biting us. With GHA I haven't had that experience, and same for all of my self hosted Fo", "context": "sysadmin", "use_case": "CI", "switched_from": "GitLab", "story": "Disruption with Some GitHub Services \u2013 Resolved"}]}], "caveats": [{"label": "Outages", "summary": "Many report frequent downtime, stuck queues and undispatched jobs, even with self-hosted runners.", "quotes": [{"id": 803615680, "item_id": 50225980, "url": "https://news.ycombinator.com/item?id=50225980", "by": "prepend", "date": "2026-10-24", "stance": "warn", "quote": "I use github actions and it\u2019s down multiple times each week.", "excerpt": "They have a lot of downtime. I use github actions and it\u2019s down multiple times each week. I like github, but it\u2019s getting kind of nuts.", "context": "", "use_case": "CI", "switched_from": "", "story": "Roku developer repositories moved from GitHub to GitLab"}, {"id": 787256257, "item_id": 49203516, "url": "https://news.ycombinator.com/item?id=49203516", "by": "yashap", "date": "2026-08-06", "stance": "warn", "quote": "Brutal outage.", "excerpt": "We use other runners (Blacksmith), and it hasn't helped, still hard down all day long. Brutal outage. As a side note, I started getting these symptoms (actions staying queued forever or not running at all) at 5pm PDT yesterday, intermittently. And definitely full outage by 8:30pm PDT. So for sure full outage for 7 hours and counting, even if you use other runners, and I strongly believe partial outage for ~15.5+ hrs ", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Down"}, {"id": 750547312, "item_id": 46909207, "url": "https://news.ycombinator.com/item?id=46909207", "by": "anttiharju", "date": "2026-02-05", "stance": "warn", "quote": "just the base reliability is going downhill.", "excerpt": "Github being less and less reliable nowadays just makes this more true. In the past week I have seen: - actions/checkout inexplicably failing, sometimes succeeding on 3rd retry (of the built-in retry logic) - release ci jobs scheduling _twice_, causing failures, because ofc the release already exists - jobs just not scheduling. Sometimes for 40m. I have been using it actively for a few years and putting aside everyth", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}]}, {"label": "Clunky design", "summary": "Users describe confusing UX, missing features and workflows that are a pain to debug or test locally.", "quotes": [{"id": 804973568, "item_id": 50310848, "url": "https://news.ycombinator.com/item?id=50310848", "by": "crote", "date": "2026-10-30", "stance": "warn", "quote": "the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions", "excerpt": "GitHub CI is a very weird product. My team pays a decent bit of money for it, and we are nowhere near hitting the minutes limit, but at the same time we easily run into the storage limits, and the runner is incredibly slow? On top of that the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions, strange missing features, and the whole thing just being a giant bowl of spaghetti ", "context": "team pays for it", "use_case": "team CI", "switched_from": "", "story": "GitHub Incident with Actions, Pages, and Webhooks"}, {"id": 767035200, "item_id": 47939700, "url": "https://news.ycombinator.com/item?id=47939700", "by": "octorian", "date": "2026-04-28", "stance": "warn", "quote": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug.", "excerpt": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug. A lot of the time, it feels like I'm tinkering with this huge script then holding my breath and hoping I got it right. The reason I use them, however, is because its more trouble than its worth to maintain build servers for the 3 platforms I care about (Windows, macOS, Linux) myself", "context": "", "use_case": "CI builds for Windows, macOS, Linux", "switched_from": "", "story": "GitHub Actions is the weakest link"}, {"id": 745844192, "item_id": 46615262, "url": "https://news.ycombinator.com/item?id=46615262", "by": "iamcalledrob", "date": "2026-01-14", "stance": "warn", "quote": "The pain is real. I think everyone that's ever used GitHub actions has come to this conclusion.", "excerpt": "> For the love of all that is holy, don\u2019t let GitHub Actions > manage your logic. Keep your scripts under your own damn > control and just make the Actions call them! The pain is real. I think everyone that's ever used GitHub actions has come to this conclusion. An ideal action has 2 steps: (1) check out the code, (2) invoke a sane script that you can test locally. Honestly, I wonder if a better workflow definition w", "context": "", "use_case": "CI", "switched_from": "", "story": "I Hate GitHub Actions with Passion"}]}, {"label": "Supply chain risk", "summary": "Some warn that third-party and even official actions pose supply chain security risks.", "quotes": [{"id": 766298224, "item_id": 47893639, "url": "https://news.ycombinator.com/item?id=47893639", "by": "latexr", "date": "2026-04-24", "stance": "warn", "quote": "I don\u2019t even trust GitHub\u2019s own actions.", "excerpt": "> attackers abused a GitHub Action in Bitwarden\u2019s CI/CD pipeline. I don\u2019t even trust GitHub\u2019s own actions. I used to use only the one to checkout a repository, limited to a specific tag, but then realised that even a tagged version, if it has dependencies which are not themselves tagged, could be compromised, so I stopped and now do the checkout myself. It\u2019s not even that many lines of code, the fact GitHub has a hug", "context": "", "use_case": "CI checkout step", "switched_from": "", "story": "Bitwarden CLI Compromised in Ongoing Checkmarx Supply Chain"}, {"id": 789311409, "item_id": 49331963, "url": "https://news.ycombinator.com/item?id=49331963", "by": "jdub", "date": "2026-08-17", "stance": "warn", "quote": "a good first step out of the GitHub Actions supply chain attack trap.", "excerpt": "Buildkite has built a GitHub Actions adapter... a good first step out of the GitHub Actions supply chain attack trap.", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 773909360, "item_id": 48369335, "url": "https://news.ycombinator.com/item?id=48369335", "by": "cyphar", "date": "2026-06-02", "stance": "warn", "quote": "I doubt any user of GitHub would argue that GitHub Actions are a parogon of security", "excerpt": "I'll be honest, I have always found the \"trusted\" publishing concept quite suspect -- the boiled-down argument is that developers are too incompetent to manage their own keys. Yes, there are obviously problems with storing plaintext publishing keys and tokens in $HOME, but that isn't the only solution. You can use hardware keys for signing (I would wager a lot of open source maintainers have at least one Yubikey or N", "context": "open source maintainer", "use_case": "release publishing", "switched_from": "", "story": "NPM packages from RedHat have been compromised"}]}, {"label": "Self-hosted runners", "summary": "Running your own runners is described as difficult, with hard-coded cache paths and flaky behavior.", "quotes": [{"id": 789347617, "item_id": 49334226, "url": "https://news.ycombinator.com/item?id=49334226", "by": "cortesoft", "date": "2026-08-17", "stance": "warn", "quote": "The worst part about the github runner setup is that there is no built in support for using your own cache", "excerpt": "I find the gitlab runner registration process a lot simpler than the github process, and a lot more flexible when you are self hosting the gitlab instance. We used kubernetes runners for both, and gitlab was clearly better. The worst part about the github runner setup is that there is no built in support for using your own cache if you are using github.com and want to run your own runners. In order to use your own ca", "context": "uses Kubernetes runners", "use_case": "self-hosted runners", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 738139616, "item_id": 46133726, "url": "https://news.ycombinator.com/item?id=46133726", "by": "asmor", "date": "2025-12-03", "stance": "warn", "quote": "Actions was always broken.", "excerpt": "Seeing the decline of GitHub in Actions is technically correct, but Actions was always broken. We tried getting self-hosted runners to work super early before there was a proper ephemeral mode (just an officially unsupported race-condition-y --once flag). It sucked. That code can't produce a consistent status code, constantly failed to connect to its scheduler with obscure Azure error codes and had so many races with", "context": "ran self-hosted runners on GCP", "use_case": "CI with self-hosted runners", "switched_from": "", "story": "Zig quits GitHub, says Microsoft's AI obsession has ruined the service"}, {"id": 737736003, "item_id": 46108500, "url": "https://news.ycombinator.com/item?id=46108500", "by": "paulddraper", "date": "2025-12-01", "stance": "warn", "quote": "I have found runners to be unnecessarily difficult.", "excerpt": "This is documented currently (supposed to be 14 days). [1] That said, I have found runners to be unnecessarily difficult. But Jenkins and its own quirks, and when I used GitLab, it used ancient docker-machine and outdated AMIs by default. I think Buildkite has been the only one to make this easy and scalable. But it is meant for self hosted runners. [1] https://docs.github.com/en/enterprise-cloud@latest/actions/how-t", "context": "", "use_case": "CI runners", "switched_from": "", "story": "Advent of Sysadmin 2025"}]}, {"label": "Cost", "summary": "Some hit overage charges or storage limits, or object to pricing changes.", "quotes": [{"id": 793869184, "item_id": 49616824, "url": "https://news.ycombinator.com/item?id=49616824", "by": "joshstrange", "date": "2026-09-08", "stance": "warn", "quote": "Last month I ran up $45 of overage spending", "excerpt": "I'm sure my scale is many magnitudes smaller but as a solo developer/founder I ran into this same issue recently as I've been creating more PRs than normal and also increasing my GH Actions usage for things like LLM review and just more unit/e2e/etc tests. Last month I ran up $45 of overage spending (yes, I know, I know, this is tiny but for me it's not) and decided to make use of my homelab that was effectively twid", "context": "solo developer/founder", "use_case": "CI", "switched_from": "", "story": "Our GitHub Actions bill kept climbing, so we moved CI to one box"}, {"id": 767043809, "item_id": 47940238, "url": "https://news.ycombinator.com/item?id=47940238", "by": "featherless", "date": "2026-04-28", "stance": "warn", "quote": "the whole \"pay a fee to bring your own bags to the grocery store\" GitHub Actions pricing shenanigans", "excerpt": "I migrated my entire workflow onto a personal GitLab instance after the whole \"pay a fee to bring your own bags to the grocery store\" GitHub Actions pricing shenanigans earlier this year. Best decision ever. 100% uptime. 100% less stress with each of the product/pricing changes over the past few months. Was also able to build my own GitHub Copilot equivalent that auto-reviews MRs interactively. Highly recommend it.", "context": "", "use_case": "CI", "switched_from": "", "story": "Ghostty is leaving GitHub"}, {"id": 785212385, "item_id": 49075774, "url": "https://news.ycombinator.com/item?id=49075774", "by": "Jarred", "date": "2026-07-27", "stance": "warn", "quote": "which is a lot cheaper than the GitHub actions runners we used before that.", "excerpt": "It spawns ephemeral EC2/Azure instances, which is a lot cheaper than the GitHub actions runners we used before that. We shard to a lot of machines for tests and I\u2019d be worried about running out if we used dedicated servers. BuildKite is fine but I wouldn\u2019t be that surprised if we move off of BuildKite to a custom thing at some point. Months ago, we switched from CMake to a handrolled typescript build system and it ma", "context": "works on Bun", "use_case": "CI", "switched_from": "", "story": "How is the Bun Rewrite in Rust going?"}]}, {"label": "Slow runners", "summary": "Some find hosted runners slower than machines they control.", "quotes": [{"id": 804973568, "item_id": 50310848, "url": "https://news.ycombinator.com/item?id=50310848", "by": "crote", "date": "2026-10-30", "stance": "warn", "quote": "the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions", "excerpt": "GitHub CI is a very weird product. My team pays a decent bit of money for it, and we are nowhere near hitting the minutes limit, but at the same time we easily run into the storage limits, and the runner is incredibly slow? On top of that the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions, strange missing features, and the whole thing just being a giant bowl of spaghetti ", "context": "team pays for it", "use_case": "team CI", "switched_from": "", "story": "GitHub Incident with Actions, Pages, and Webhooks"}, {"id": 800908784, "item_id": 50056799, "url": "https://news.ycombinator.com/item?id=50056799", "by": "zanderwohl", "date": "2026-10-12", "stance": "warn", "quote": "I have not understood, and still do not understand, why everyone locks themselves into github's CI/CD pipeline.", "excerpt": "I have not understood, and still do not understand, why everyone locks themselves into github's CI/CD pipeline. It's not hard to set up checks that run on a generic docker setup. I have a home server that I use for all my builds and checks, with a github actions config to run manually if I can't VPN into my home network. Besides being more reliable, it's just faster to run on a machine you control.", "context": "runs builds on a home server", "use_case": "CI/CD", "switched_from": "", "story": "Incident with Actions, Pull Requests and Issues"}]}], "who": [{"by": "aaronbrethorst", "context": "maintains an open source iOS app", "url": "https://news.ycombinator.com/item?id=50120803", "date": "2026-10-16"}, {"by": "nightpool", "context": "former part-time Jenkins admin", "url": "https://news.ycombinator.com/item?id=49471012", "date": "2026-08-27"}, {"by": "vinnymac", "context": "sysadmin", "url": "https://news.ycombinator.com/item?id=49456447", "date": "2026-08-26"}, {"by": "agentbriefstudi", "context": "independent AI coding-workflow specialist", "url": "https://news.ycombinator.com/item?id=49252734", "date": "2026-08-10"}, {"by": "keithnz", "context": "company user of GitHub", "url": "https://news.ycombinator.com/item?id=48362433", "date": "2026-06-01"}, {"by": "black3r", "context": "full stack dev", "url": "https://news.ycombinator.com/item?id=48238999", "date": "2026-05-22"}, {"by": "jviotti", "context": "maintains C++ open source projects", "url": "https://news.ycombinator.com/item?id=48125531", "date": "2026-05-13"}, {"by": "whirlwin", "context": "team with 300+ pipelines", "url": "https://news.ycombinator.com/item?id=48036540", "date": "2026-05-06"}, {"by": "NicuCalcea", "context": "reporter", "url": "https://news.ycombinator.com/item?id=47348998", "date": "2026-03-12"}, {"by": "tom_", "context": "maintains a couple of niche FOSS macOS projects", "url": "https://news.ycombinator.com/item?id=47345350", "date": "2026-03-11"}, {"by": "999900000999", "context": "hobbyist", "url": "https://news.ycombinator.com/item?id=46910763", "date": "2026-02-06"}, {"by": "zzo38computer", "context": "public repos only", "url": "https://news.ycombinator.com/item?id=46293964", "date": "2025-12-16"}], "tags": ["for open source projects", "for hobby projects", "for cross-platform builds", "for scheduled jobs", "self-hosted runners"], "use_cases": ["ci", "ci/cd", "ci runners", "ci with self-hosted runners", "ci builds", "ci workflows"], "compared": [{"slug": "buildkite", "name": "Buildkite", "co": 10, "switched_from": 0, "switched_to": 3}, {"slug": "jenkins", "name": "Jenkins", "co": 6, "switched_from": 1, "switched_to": 0}, {"slug": "gitlab", "name": "GitLab", "co": 6, "switched_from": 1, "switched_to": 0}, {"slug": "circleci", "name": "CircleCI", "co": 6, "switched_from": 0, "switched_to": 0}, {"slug": "claude-code", "name": "Claude Code", "co": 6, "switched_from": 0, "switched_to": 0}, {"slug": "codex", "name": "Codex", "co": 5, "switched_from": 0, "switched_to": 0}, {"slug": "gitlab-ci", "name": "GitLab CI", "co": 3, "switched_from": 0, "switched_to": 1}, {"slug": "forgejo", "name": "Forgejo", "co": 3, "switched_from": 0, "switched_to": 1}], "makers": [{"id": 785015152, "item_id": 49063447, "url": "https://news.ycombinator.com/item?id=49063447", "by": "joey911", "date": "2026-07-26", "stance": "neutral", "quote": "Each night, GitHub Actions pulls from various sources, including news, and documents updates by country.", "excerpt": "Normally, I stay away from religion and politics, but I thought I'd share a quick and dirty pet project I worked on in case anyone was interested. I discovered recently that Christians are the most persecuted religion. I gathered data from as many open sources as possible and created a map that shows documented Christian persecution by country. You could easily fork the code and make it a site for Muslims (the second", "context": "", "use_case": "nightly data updates", "switched_from": "", "story": "Christian Persecution World Map"}], "threads": [{"url": "https://news.ycombinator.com/item?id=46908491", "title": "GitHub Actions Is Slowly Killing Your Engineering Team", "mentions": 5}, {"url": "https://news.ycombinator.com/item?id=46291156", "title": "Pricing Changes for GitHub Actions", "mentions": 5}, {"url": "https://news.ycombinator.com/item?id=49331033", "title": "Ask HN: Alternatives to GitHub", "mentions": 4}, {"url": "https://news.ycombinator.com/item?id=46614558", "title": "I Hate GitHub Actions with Passion", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=50307723", "title": "GitHub Incident with Actions, Pages, and Webhooks", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=50055375", "title": "Incident with Actions, Pull Requests and Issues", "mentions": 2}], "sentiment_by_month": {"2025-11": {"recommend": 1, "neutral": 1}, "2025-12": {"neutral": 4, "warn": 3, "recommend": 2}, "2026-01": {"warn": 4, "neutral": 1, "recommend": 1}, "2026-02": {"warn": 6, "neutral": 2, "recommend": 1}, "2026-03": {"neutral": 3, "recommend": 3, "warn": 2}, "2026-04": {"neutral": 1, "warn": 4}, "2026-05": {"neutral": 6, "recommend": 2, "warn": 1}, "2026-06": {"recommend": 1, "warn": 1, "neutral": 4}, "2026-07": {"warn": 1, "recommend": 1}, "2026-08": {"warn": 10, "neutral": 2, "recommend": 2}, "2026-09": {"neutral": 1, "warn": 1}, "2026-10": {"warn": 4, "neutral": 4}}, "quotes": [{"id": 804973568, "item_id": 50310848, "url": "https://news.ycombinator.com/item?id=50310848", "by": "crote", "date": "2026-10-30", "stance": "warn", "quote": "the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions", "excerpt": "GitHub CI is a very weird product. My team pays a decent bit of money for it, and we are nowhere near hitting the minutes limit, but at the same time we easily run into the storage limits, and the runner is incredibly slow? On top of that the tooling is just... not good. The more I use it, the more I get annoyed at weird UX decisions, strange missing features, and the whole thing just being a giant bowl of spaghetti ", "context": "team pays for it", "use_case": "team CI", "switched_from": "", "story": "GitHub Incident with Actions, Pages, and Webhooks"}, {"id": 804932657, "item_id": 50308291, "url": "https://news.ycombinator.com/item?id=50308291", "by": "Nedomas", "date": "2026-10-30", "stance": "neutral", "quote": "Self-hosted GitHub Actions on AWS spot are still working.", "excerpt": "Self-hosted GitHub Actions on AWS spot are still working. After many outages we had to build our own free runner https://github.com/supercorp-ai/superci", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Incident with Actions, Pages, and Webhooks"}, {"id": 804175633, "item_id": 50260977, "url": "https://news.ycombinator.com/item?id=50260977", "by": "Roark66", "date": "2026-10-27", "stance": "neutral", "quote": "migrating cicd from Jenkins to gh workflows", "excerpt": "You laugh, but that is exactly what I did. I was migrating cicd from Jenkins to gh workflows for some 70-80 apps each in its own repository and support team in a random timezone. I had to open 2-3 PRs in each repo and a day or two before someone enabled \"copilot reviews\" in our github org. Not only did copilot eat up all my bloody llm credits (thankfully it was almost end of the month) it created few silly comments o", "context": "", "use_case": "CI/CD", "switched_from": "Jenkins", "story": "I will no longer upload to NEW"}, {"id": 803615680, "item_id": 50225980, "url": "https://news.ycombinator.com/item?id=50225980", "by": "prepend", "date": "2026-10-24", "stance": "warn", "quote": "I use github actions and it\u2019s down multiple times each week.", "excerpt": "They have a lot of downtime. I use github actions and it\u2019s down multiple times each week. I like github, but it\u2019s getting kind of nuts.", "context": "", "use_case": "CI", "switched_from": "", "story": "Roku developer repositories moved from GitHub to GitLab"}, {"id": 801932849, "item_id": 50120803, "url": "https://news.ycombinator.com/item?id=50120803", "by": "aaronbrethorst", "date": "2026-10-16", "stance": "neutral", "quote": "I was fighting with the GitHub Actions CI pipeline for an open source iOS app I maintain", "excerpt": "I want the UI to be snappy. I used to dictate using observables and other optimization preferences - and sometimes still do. But I can also merely add constraints - the image should process within 15ms presses <enter>. Oh shoot - I meant to write 150ms but\u2026 oh\u2026 I guess lets simply see i the model can do it? Wow. I realize\u2026 I need to re-evaluate what I think of as possible and not. this resonates with me. Two days ago", "context": "maintains an open source iOS app", "use_case": "CI for iOS app", "switched_from": "", "story": "My old job feels distant now"}, {"id": 800945248, "item_id": 50059078, "url": "https://news.ycombinator.com/item?id=50059078", "by": "za_creature", "date": "2026-10-12", "stance": "neutral", "quote": "I use github actions. Many open source projects use github actions since it's _there_.", "excerpt": "It's not an analogy. I use github actions. Many open source projects use github actions since it's _there_. In exchange, github gains conversions since users of their free tier grow accustomed with the service and recommend it for corporate use as well. This system worked pre-LLM and turned github into the de facto _hub_ for software development. It was so good that microsoft, a company previously known for its \"deve", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Incident with Actions, Pull Requests and Issues"}, {"id": 800908784, "item_id": 50056799, "url": "https://news.ycombinator.com/item?id=50056799", "by": "zanderwohl", "date": "2026-10-12", "stance": "warn", "quote": "I have not understood, and still do not understand, why everyone locks themselves into github's CI/CD pipeline.", "excerpt": "I have not understood, and still do not understand, why everyone locks themselves into github's CI/CD pipeline. It's not hard to set up checks that run on a generic docker setup. I have a home server that I use for all my builds and checks, with a github actions config to run manually if I can't VPN into my home network. Besides being more reliable, it's just faster to run on a machine you control.", "context": "runs builds on a home server", "use_case": "CI/CD", "switched_from": "", "story": "Incident with Actions, Pull Requests and Issues"}, {"id": 799528480, "item_id": 49970530, "url": "https://news.ycombinator.com/item?id=49970530", "by": "rosslh", "date": "2026-10-05", "stance": "warn", "quote": "My company switched to a different provider for our action runners partly for reliability reasons.", "excerpt": "My company switched to a different provider for our action runners partly for reliability reasons. Despite that, jobs still aren't being dispatched.", "context": "", "use_case": "CI runners", "switched_from": "", "story": "Incident with Actions"}, {"id": 793869184, "item_id": 49616824, "url": "https://news.ycombinator.com/item?id=49616824", "by": "joshstrange", "date": "2026-09-08", "stance": "warn", "quote": "Last month I ran up $45 of overage spending", "excerpt": "I'm sure my scale is many magnitudes smaller but as a solo developer/founder I ran into this same issue recently as I've been creating more PRs than normal and also increasing my GH Actions usage for things like LLM review and just more unit/e2e/etc tests. Last month I ran up $45 of overage spending (yes, I know, I know, this is tiny but for me it's not) and decided to make use of my homelab that was effectively twid", "context": "solo developer/founder", "use_case": "CI", "switched_from": "", "story": "Our GitHub Actions bill kept climbing, so we moved CI to one box"}, {"id": 793430408, "item_id": 49589400, "url": "https://news.ycombinator.com/item?id=49589400", "by": "gourmetspam", "date": "2026-09-06", "stance": "neutral", "quote": "Stack is just Next.js / React + PostgreSQL hosted on Vercel + Supabase with GH Actions.", "excerpt": "I built Parsefin because I use tools like Dataroma and WhaleWisdom to follow what well-known investors are doing, but I was frustrated by the limited number of pre-selected investors available and terrible websites. Going to the SEC's website directly is also inefficient since you have to search for funds one-by-one, and you don't see the time series data. What Parsefin does: Parsefin parses SEC 13F/G/D portfolio dis", "context": "", "use_case": "CI/data pipelines", "switched_from": "", "story": "Parsefin \u2013 A modern alternative to WhaleWisdom for 13F tracking"}, {"id": 791536192, "item_id": 49471012, "url": "https://news.ycombinator.com/item?id=49471012", "by": "nightpool", "date": "2026-08-27", "stance": "recommend", "quote": "there's no beating Actions in terms of its ease of setup and ecosystem advantage", "excerpt": "Yes, I was actually a part-time Jenkins admin back in high school and college. I use CircleCI more than Actions most of the time (and used Travis before that), especially for higher cost workflows, but there's no beating Actions in terms of its ease of setup and ecosystem advantage. It's way easier to just set up a simple JS file that runs on every commit in Actions compared to anywhere else. Would be happy to be pro", "context": "former part-time Jenkins admin", "use_case": "CI on every commit", "switched_from": "", "story": "GitHub Outage Tracker: Is GitHub Cooked?"}, {"id": 791303153, "item_id": 49456447, "url": "https://news.ycombinator.com/item?id=49456447", "by": "vinnymac", "date": "2026-08-26", "stance": "recommend", "quote": "With GHA I haven't had that experience", "excerpt": "I find this recommendation funny, because I completely agree from a sysadmin perspective. I used to use Gitlab at work, and small teams would run into so many footguns with CI that we had to throw up guardrails to prevent mistakes. Far too many links to gitlab issues that were not fixed even after >8+ years of being open ended up biting us. With GHA I haven't had that experience, and same for all of my self hosted Fo", "context": "sysadmin", "use_case": "CI", "switched_from": "GitLab", "story": "Disruption with Some GitHub Services \u2013 Resolved"}, {"id": 791257105, "item_id": 49453569, "url": "https://news.ycombinator.com/item?id=49453569", "by": "hosh", "date": "2026-08-26", "stance": "warn", "quote": "I\u2019m not happy with the Actions API.", "excerpt": "If people are happy with Actions API, that sounds great. I\u2019m not happy with the Actions API. I think Gitlab\u2019s cicd design is much better, and I\u2019m not fighting it all the time when I use it.", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Disruption with Some GitHub Services \u2013 Resolved"}, {"id": 789347617, "item_id": 49334226, "url": "https://news.ycombinator.com/item?id=49334226", "by": "cortesoft", "date": "2026-08-17", "stance": "warn", "quote": "The worst part about the github runner setup is that there is no built in support for using your own cache", "excerpt": "I find the gitlab runner registration process a lot simpler than the github process, and a lot more flexible when you are self hosting the gitlab instance. We used kubernetes runners for both, and gitlab was clearly better. The worst part about the github runner setup is that there is no built in support for using your own cache if you are using github.com and want to run your own runners. In order to use your own ca", "context": "uses Kubernetes runners", "use_case": "self-hosted runners", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789316720, "item_id": 49332295, "url": "https://news.ycombinator.com/item?id=49332295", "by": "dboreham", "date": "2026-08-17", "stance": "warn", "quote": "GitHub Actions feels like someone's science project created while on a mushroom trip.", "excerpt": "Agreed. GitHub Actions feels like someone's science project created while on a mushroom trip. Really you just want a thing that executes a shell script in a runner.", "context": "", "use_case": "CI", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789313105, "item_id": 49332069, "url": "https://news.ycombinator.com/item?id=49332069", "by": "cobertos", "date": "2026-08-17", "stance": "warn", "quote": "I'm convinced GitHub actions as a concept is flawed.", "excerpt": "It's based on act[0] so it's quite like GitHub actions but not completely [1]. I found in the current version of Forgejo the most secure way to set it up was just to put the runner on a different host. There's a Docker in Docker setup [2] that was challenging to get working correctly but still didn't quite feel secure... After setting it all up, I'm convinced GitHub actions as a concept is flawed. I wish the communit", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789311409, "item_id": 49331963, "url": "https://news.ycombinator.com/item?id=49331963", "by": "jdub", "date": "2026-08-17", "stance": "warn", "quote": "a good first step out of the GitHub Actions supply chain attack trap.", "excerpt": "Buildkite has built a GitHub Actions adapter... a good first step out of the GitHub Actions supply chain attack trap.", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789294544, "item_id": 49330909, "url": "https://news.ycombinator.com/item?id=49330909", "by": "lsuresh", "date": "2026-08-17", "stance": "neutral", "quote": "We use self-hosted Github runners", "excerpt": "We use self-hosted Github runners, but it's a moot point if all of Github is mostly down as is the case right now. :\\", "context": "", "use_case": "CI/CD runners", "switched_from": "", "story": "Incident with Github.com"}, {"id": 788979809, "item_id": 49311238, "url": "https://news.ycombinator.com/item?id=49311238", "by": "minraws", "date": "2026-08-15", "stance": "warn", "quote": "Imagine prod deploys are down for 2 days why? Because GitHub actions keep failing...", "excerpt": "Bugs happen all the time yes, outages don't. If outages are increasing with scale you get 1 or maybe 2 free passes. After that you either have in-ept Engineering or just in-ept leadership. I used to be all in on CF a while ago, now I am moving off them almost entirely. Same issue with GitHub, I can understand if you can't build for the scale when you couldn't predict it but if after over 12-18 months things don't see", "context": "infra/dev person with side projects", "use_case": "CI/CD deploys", "switched_from": "", "story": "Cloudflare's AI Psychosis"}, {"id": 788043748, "item_id": 49252734, "url": "https://news.ycombinator.com/item?id=49252734", "by": "agentbriefstudi", "date": "2026-08-10", "stance": "neutral", "quote": "GitHub Actions, CI quality gates", "excerpt": "SEEKING WORK | Mexico | Remote worldwide Location: Mexico Remote: Yes Willing to relocate: Not applicable for fixed-scope remote work Technologies: Codex, Claude Code, Cursor, GitHub Copilot, AGENTS.md, CLAUDE.md, Cursor rules, GitHub Actions, CI quality gates, Markdown R\u00e9sum\u00e9/portfolio: https://github.com/agentbriefstudio/agentbrief Email: agentbriefstudio@proton.me I am an independent AI coding-workflow specialist.", "context": "independent AI coding-workflow specialist", "use_case": "CI quality gates", "switched_from": "", "story": "Ask HN: Who wants to be hired? (August 2026)"}, {"id": 787754785, "item_id": 49234674, "url": "https://news.ycombinator.com/item?id=49234674", "by": "Bnjoroge", "date": "2026-08-09", "stance": "warn", "quote": "I got frustrated with Github Actions reliability and inability to run or test my workflows locally", "excerpt": "Lots of fun projects being listed. I'm working on Preloop(https://preloop.dev), a way to run your unmodified Github Actions locally or self-hosted in isolated cross-platform microvms(uses smolvm which uses libkrun vmm).I got frustrated with Github Actions reliability and inability to run or test my workflows locally so i re-wrote the runner and reverse-engineered the control plane so it follows the exact runner proto", "context": "", "use_case": "CI workflows", "switched_from": "", "story": "Ask HN: What are you working on? (August 2026)"}, {"id": 787268753, "item_id": 49204297, "url": "https://news.ycombinator.com/item?id=49204297", "by": "macintux", "date": "2026-08-06", "stance": "warn", "quote": "Hopefully the steady drumbeat of failure will keep it that way.", "excerpt": "I\u2019m intensely grateful that despite rumblings, the company I contract to hasn\u2019t switched from self-hosted Jenkins to GHA. Hopefully the steady drumbeat of failure will keep it that way.", "context": "contractor", "use_case": "CI", "switched_from": "", "story": "GitHub Is Experiencing Difficulties"}, {"id": 787256257, "item_id": 49203516, "url": "https://news.ycombinator.com/item?id=49203516", "by": "yashap", "date": "2026-08-06", "stance": "warn", "quote": "Brutal outage.", "excerpt": "We use other runners (Blacksmith), and it hasn't helped, still hard down all day long. Brutal outage. As a side note, I started getting these symptoms (actions staying queued forever or not running at all) at 5pm PDT yesterday, intermittently. And definitely full outage by 8:30pm PDT. So for sure full outage for 7 hours and counting, even if you use other runners, and I strongly believe partial outage for ~15.5+ hrs ", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Down"}, {"id": 787189104, "item_id": 49199319, "url": "https://news.ycombinator.com/item?id=49199319", "by": "arandomhuman", "date": "2026-08-06", "stance": "warn", "quote": "even self hosted workers don't work during these outages", "excerpt": "I love how even self hosted workers don't work during these outages - running jobs on their infrastructure being flakey is marginally acceptable, but the API to simply schedule workflows having this availability is mind boggling. Github just doesn't seem like a serious company anymore.", "context": "", "use_case": "CI workflows", "switched_from": "", "story": "GitHub Actions Is Down"}, {"id": 785532546, "item_id": 49095784, "url": "https://news.ycombinator.com/item?id=49095784", "by": "mintflow", "date": "2026-07-29", "stance": "recommend", "quote": "GitHub Actions takes care of publishing automatically and also performs regular backups.", "excerpt": "Great idea. Recently, I\u2019ve decided to get back into blogging. It\u2019s surprisingly easy these days. I already have a domain on Cloudflare, and I had Codex build a simple blogging system for me. I write everything in Markdown, the site is hosted on Cloudflare, comments are stored in Cloudflare D1, and all articles live in the repository as Markdown files. GitHub Actions takes care of publishing automatically and also per", "context": "", "use_case": "publishing and backups", "switched_from": "", "story": "Substack writers, you need a website"}, {"id": 785212385, "item_id": 49075774, "url": "https://news.ycombinator.com/item?id=49075774", "by": "Jarred", "date": "2026-07-27", "stance": "warn", "quote": "which is a lot cheaper than the GitHub actions runners we used before that.", "excerpt": "It spawns ephemeral EC2/Azure instances, which is a lot cheaper than the GitHub actions runners we used before that. We shard to a lot of machines for tests and I\u2019d be worried about running out if we used dedicated servers. BuildKite is fine but I wouldn\u2019t be that surprised if we move off of BuildKite to a custom thing at some point. Months ago, we switched from CMake to a handrolled typescript build system and it ma", "context": "works on Bun", "use_case": "CI", "switched_from": "", "story": "How is the Bun Rewrite in Rust going?"}, {"id": 778526609, "item_id": 48657913, "url": "https://news.ycombinator.com/item?id=48657913", "by": "kenanfyi", "date": "2026-06-24", "stance": "neutral", "quote": "on every push, GitHub Actions builds it and copies the dist/ to Bunny", "excerpt": "It's nothing new to make a DNS service free, but still kudos to Bunny. I moved to Bunny CDN couple of months ago from CF and it's been great so far. They don't have all that fancy things that CF has, but I guess it's also not their target. It's a great and extremely fast CDN that makes it easy to host many kind of websites. They also have things like Edge Rules, WAF, Cache Control etc. I deploy my website using their", "context": "", "use_case": "build and deploy website", "switched_from": "", "story": "We're making Bunny DNS free: because a faster internet won't build itself"}, {"id": 776095632, "item_id": 48505977, "url": "https://news.ycombinator.com/item?id=48505977", "by": "ownagefool", "date": "2026-06-12", "stance": "neutral", "quote": "I actually don't have a problem with runners very often", "excerpt": "I actually don't have a problem with runners very often, but I must admit I use a combination of public and private the leans private. Are you seeing elevated errors on actions?", "context": "", "use_case": "CI runners", "switched_from": "", "story": "GitHub Is Down"}, {"id": 775635667, "item_id": 48477229, "url": "https://news.ycombinator.com/item?id=48477229", "by": "nimblist", "date": "2026-06-10", "stance": "neutral", "quote": "Finally github actions to provide a proper ALMS", "excerpt": "For me right now it's this but I'm constantly learning new approaches/improvements Claude Code running on a dedicated debian lxc with tmux so I can pick sessions up from any machine. The key thing for me is to ensure that claude is constantly maintaining its own project documentation so that it's not reliant on any one session context. I've also set up custom commands to set up a clearly defined plan md file and to i", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: What is the AI setup for an experienced dev starting on a new project?"}, {"id": 775633011, "item_id": 48477063, "url": "https://news.ycombinator.com/item?id=48477063", "by": "nimblist", "date": "2026-06-10", "stance": "neutral", "quote": "Finally github actions to provide a proper ALMS", "excerpt": "Claude Code running on a dedicated debian lxc with tmux so I can pick sessions up from any machine. The key thing for me is to ensure that claude is constantly maintaining its own project documentation so that it's not reliant on any one session context. I've also set up custom commands to set up a clearly defined plan md file and to incrementally step through it updating completion as it goes. From my perspective it", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: What is your (AI) dev tech stack / workflow? (June 2026)"}, {"id": 775616561, "item_id": 48476035, "url": "https://news.ycombinator.com/item?id=48476035", "by": "_pdp_", "date": "2026-06-10", "stance": "neutral", "quote": "We still use GitHub Actions but our monthly bill is now flat because we pay for a server.", "excerpt": "I am sure Blacksmith is the easy path if you don't want to do any extra work and I am also sure their solution will scale much better as this is what they do full-time. However, I can share what we did to ease on our GitHub Actions bills if it helps. Effectively we have our own runners hooked so that a job is scheduled, a runner picks it up and goes with it. We still use GitHub Actions but our monthly bill is now fla", "context": "", "use_case": "CI with self-hosted runners", "switched_from": "", "story": "Surprise Pay $1000"}, {"id": 773909360, "item_id": 48369335, "url": "https://news.ycombinator.com/item?id=48369335", "by": "cyphar", "date": "2026-06-02", "stance": "warn", "quote": "I doubt any user of GitHub would argue that GitHub Actions are a parogon of security", "excerpt": "I'll be honest, I have always found the \"trusted\" publishing concept quite suspect -- the boiled-down argument is that developers are too incompetent to manage their own keys. Yes, there are obviously problems with storing plaintext publishing keys and tokens in $HOME, but that isn't the only solution. You can use hardware keys for signing (I would wager a lot of open source maintainers have at least one Yubikey or N", "context": "open source maintainer", "use_case": "release publishing", "switched_from": "", "story": "NPM packages from RedHat have been compromised"}, {"id": 773798929, "item_id": 48362433, "url": "https://news.ycombinator.com/item?id=48362433", "by": "keithnz", "date": "2026-06-01", "stance": "recommend", "quote": "we have actions that work every single time", "excerpt": "All this hate directed at github feels odd, every time I look into people complaining, or moving their projects off, other than a few related to genuine bugs, many just seem ideological. This article, calling it a crime against software? ... It's just silly. The article itself is a crime against articles, barely readable, weird ass colors. It mostly seems a regurgitation of other peoples complaints and mostly overblo", "context": "company user of GitHub", "use_case": "CI", "switched_from": "", "story": "GitHub and the Crime Against Software"}, {"id": 773365745, "item_id": 48335359, "url": "https://news.ycombinator.com/item?id=48335359", "by": "ktzar", "date": "2026-05-30", "stance": "neutral", "quote": "made it part of a GitHub action to produce all the formats I required", "excerpt": "Pandoc is such an amazing piece of software. I used it to format my novel and made it part of a GitHub action to produce all the formats I required. I wasn't aware of templates, but some look really sleek. I keep thinking that modern text editors are just flawed and markdown, with all its downsides and limitations, is what 99% is the people need.", "context": "", "use_case": "automated builds", "switched_from": "", "story": "Pandoc Templates"}, {"id": 772507729, "item_id": 48281733, "url": "https://news.ycombinator.com/item?id=48281733", "by": "ElFitz", "date": "2026-05-26", "stance": "warn", "quote": "following today\u2019s outage I suggested at work that we experiment with the same set up.", "excerpt": "I recently switched from GitHub Actions to Buildkite + self-hosted runners. Setting it all up would have been tediously annoying eight months ago (Buildkite requires setting up GitHub webhooks for each repo). Last week I just had codex set up everything, ephemeral vm runners and all, using a couple of low-spec refurb mac minis, Buildkite\u2019s API, a short-lived API token, and migrate my repositories one by one. So far s", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions down again today"}, {"id": 772469845, "item_id": 48279365, "url": "https://news.ycombinator.com/item?id=48279365", "by": "jillesvangurp", "date": "2026-05-26", "stance": "neutral", "quote": "I'm still using gh and gh actions and we are mostly below the freemium layer with that. But it is kind of slow", "excerpt": "I've been against self hosting internal tools for a long time mainly because of the devops and other overhead. But AI based devops makes it so easy now to spin up whatever you want now that I'm reconsidering that. I use a lot of ansible for several of our deployments. At this point, most of that is managed via codex. For Git, all you technically need is ssh access and some backup strategy for your server. It would be", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions down again today"}, {"id": 771823985, "item_id": 48238999, "url": "https://news.ycombinator.com/item?id=48238999", "by": "black3r", "date": "2026-05-22", "stance": "neutral", "quote": "through GH actions", "excerpt": "We have 257 python dependencies in our production app (over half of them are direct dependencies). We don't have any upper bounds in our pyproject.toml and we just run `uv lock --upgrade` every 2 weeks through GH actions. We have good test coverage so if anything breaks the tests fail + we have AI assisted review process for this -> when GH action creates the upgrade PR, an AI workflow uses a python script to list ma", "context": "full stack dev", "use_case": "scheduled upgrade PRs", "switched_from": "", "story": "Uv is fantastic, but its package management UX is a mess"}, {"id": 770008496, "item_id": 48125531, "url": "https://news.ycombinator.com/item?id=48125531", "by": "jviotti", "date": "2026-05-13", "stance": "recommend", "quote": "Right now it's somehow all fully free on GitHub Actions.", "excerpt": "I use it pretty heavily on C++ stuff at GitHub.com/sourcemeta. i.e. take https://github.com/sourcemeta/blaze and this example recent run: https://github.com/sourcemeta/blaze/actions/runs/25751796502. 12 jobs per PR for up to 30 minutes running Linux, macOS, and Windows jobs on LLVM, GCC, and MSVC in static and shared builds with also some sanitiser configurations. And consider across projects we might send dozens of ", "context": "maintains C++ open source projects", "use_case": "CI for C++ projects", "switched_from": "", "story": "Why I'm leaving GitHub for Forgejo"}, {"id": 769820720, "item_id": 48113795, "url": "https://news.ycombinator.com/item?id=48113795", "by": "verdverm", "date": "2026-05-12", "stance": "recommend", "quote": "Their free actions and robust ecosystem is a huge moat", "excerpt": "Their free actions and robust ecosystem is a huge moat", "context": "", "use_case": "CI/CD", "switched_from": "", "story": "Ask HN: What would you want in a GitHub alternative?"}, {"id": 769668113, "item_id": 48104257, "url": "https://news.ycombinator.com/item?id=48104257", "by": "verdverm", "date": "2026-05-11", "stance": "recommend", "quote": "the real moat at GitHub is that sweet sweet (free) action time.", "excerpt": "It wouldn't be hosted such that uptimes are an issue, it would get back to git's distributed roots. Like Tangled, but with private repos. Chat would be great (github's biggest missed opportunity imo), but the real moat at GitHub is that sweet sweet (free) action time.", "context": "", "use_case": "CI", "switched_from": "", "story": "Ask HN: What would you want in a GitHub alternative?"}, {"id": 767035200, "item_id": 47939700, "url": "https://news.ycombinator.com/item?id=47939700", "by": "octorian", "date": "2026-04-28", "stance": "warn", "quote": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug.", "excerpt": "I'm personally not a fan of GitHub actions, because of those dependencies outside your control and more because they're a pain to debug. A lot of the time, it feels like I'm tinkering with this huge script then holding my breath and hoping I got it right. The reason I use them, however, is because its more trouble than its worth to maintain build servers for the 3 platforms I care about (Windows, macOS, Linux) myself", "context": "", "use_case": "CI builds for Windows, macOS, Linux", "switched_from": "", "story": "GitHub Actions is the weakest link"}, {"id": 760959200, "item_id": 47559950, "url": "https://news.ycombinator.com/item?id=47559950", "by": "simonw", "date": "2026-03-28", "stance": "recommend", "quote": "I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy", "excerpt": "I used to see supporting multiple versions of Python as an expensive chore... and then I learned how to use the GitHub Actions matrix feature and supporting multiple versions is suddenly easy - my test suites are comprehensive enough that if they pass I'm confident it will work on that version. I expect this should work equally well for Go.", "context": "", "use_case": "testing multiple Python versions", "switched_from": "", "story": "Stop picking my Go version for me"}, {"id": 759704882, "item_id": 47481555, "url": "https://news.ycombinator.com/item?id=47481555", "by": "rahimnathwani", "date": "2026-03-22", "stance": "recommend", "quote": "Building the app for different platforms and architectures was easy with GitHub Actions.", "excerpt": "It had been many years since I last developed a desktop app. A couple of weeks ago I used Tauri to create a simple app for Windows and Mac. Developing the app was easy with Claude. Building the app for different platforms and architectures was easy with GitHub Actions. But after I had the msi and dmg files, my non-techy colleagues couldn't install the apps because they weren't signed. The workaround for Mac was fine ", "context": "", "use_case": "cross-platform builds", "switched_from": "", "story": "Windows native app development is a mess"}, {"id": 750572208, "item_id": 46910763, "url": "https://news.ycombinator.com/item?id=46910763", "by": "999900000999", "date": "2026-02-06", "stance": "recommend", "quote": "It's fantastic for simple jobs, I use it for my hobbyist projects", "excerpt": "At which point did someone force OP to use GH Actions ? It's fantastic for simple jobs, I use it for my hobbyist projects because I just need 20 to 30 lines to build and deploy a web build. Just because a bike isn't good for traveling in freezing weather doesn't mean no one should own a bike. Pick the right tool for the job. Plus CI/CD is the boring part. I always imagined GH Actions as a quick and somewhat sloppy so", "context": "hobbyist", "use_case": "build and deploy hobby projects", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}, {"id": 750547312, "item_id": 46909207, "url": "https://news.ycombinator.com/item?id=46909207", "by": "anttiharju", "date": "2026-02-05", "stance": "warn", "quote": "just the base reliability is going downhill.", "excerpt": "Github being less and less reliable nowadays just makes this more true. In the past week I have seen: - actions/checkout inexplicably failing, sometimes succeeding on 3rd retry (of the built-in retry logic) - release ci jobs scheduling _twice_, causing failures, because ofc the release already exists - jobs just not scheduling. Sometimes for 40m. I have been using it actively for a few years and putting aside everyth", "context": "", "use_case": "CI", "switched_from": "", "story": "GitHub Actions Is Slowly Killing Your Engineering Team"}, {"id": 745871536, "item_id": 46616971, "url": "https://news.ycombinator.com/item?id=46616971", "by": "arximboldi", "date": "2026-01-14", "stance": "recommend", "quote": "I like Github Actions and it is better than what I used before (Travis)", "excerpt": "I like Github Actions and it is better than what I used before (Travis) and I think it solves an important problem. For OSS projects it's a super valuable free resource. For me what worked wonders was adopting Nix. Make sure you have a reproducible dev environment and wrap your commands in `nix-shell --run`, or even better `nix develop --command`, or even better your most of your CI tasks derivations that run with `n", "context": "", "use_case": "CI", "switched_from": "Travis CI", "story": "I Hate GitHub Actions with Passion"}, {"id": 740694224, "item_id": 46293389, "url": "https://news.ycombinator.com/item?id=46293389", "by": "peterldowns", "date": "2025-12-16", "stance": "recommend", "quote": "having the status checks run on every PR, automatically, is great", "excerpt": "I'm happy to see they're investing in Actions \u2014 charging for it should help make sure it continues to work. It's a huge reason Github is so valuable: having the status checks run on every PR, automatically, is great. Even though I'm more of a fan of Buildkite when it comes to configuring the workflows, I still need something to kick them off when PRs change, etc. Charging a per-workflow-minute platform fee makes a lo", "context": "", "use_case": "PR status checks", "switched_from": "", "story": "Pricing Changes for GitHub Actions"}]}