| ▲ | duggan 3 hours ago |
| A directory over SSH can be your git server. If your CI isn't too complex, a post-receive hook looping into Docker can be enough. I wrote up about self hosting git and builds a few weeks ago[1]. There are heavier solutions, but even setting something like this up as a backstop might be useful. If your blog is being hammered by ChatGPT traffic, spare a thought for Github. I can only imagine their traffic has ballooned phenomenally. 1: https://duggan.ie/posts/self-hosting-git-and-builds-without-... |
|
| ▲ | 35 minutes ago | parent | next [-] |
| [deleted] |
|
| ▲ | arianvanp 2 hours ago | parent | prev | next [-] |
| Doesn't post-receive block the push operation and get cancelled when you cancel the push? |
| |
| ▲ | qudat 2 hours ago | parent | next [-] | | I use https://pipe.pico.sh for this use case. It’s a pubsub over ssh. It’s multicast so you can have multiple listeners on the same topic, and you can have it block or not block the event. | |
| ▲ | duggan 2 hours ago | parent | prev [-] | | It does, you're just running a command over ssh, so if you've a particularly long build then something more involved may make more sense. | | |
| ▲ | VorpalWay 2 hours ago | parent [-] | | Most builds take a long time, at least in C++ and Rust (the two languages I work in). And from what I have seen of people working in Python, the builds aren't fast there either (far faster of course, but still easily a minute or two). Also, how would PRs and code review be handled? Your suggestion really only makes sense for a small single developer hobby project in an interpreted language. Which, if that is what you intended, fair enough. But there really wasn't enough context to ascertain that. | | |
| ▲ | duggan an hour ago | parent [-] | | I did give additional context in the blog post I linked, but yes, to be clear, this is something that will really work best for small projects with reasonably fast build cycles. If you're already at the point where you're fielding pull requests, lots of long running tests, etc., you'll probably already know you need more than git over ssh. |
|
|
|
|
| ▲ | TacticalCoder an hour ago | parent | prev [-] |
| > The origin of a git repo is more or less just the contents of the .git directory in a remote location. That's it. You don't even need to run a git server if you're happy enough using ssh for transport. Yeah. You probably do want to make sure you turn your .git/ into a "bare" git repository but that's basically it. And it's what I do too: an OCI container that gives me access to all my private Git repos (it sets up SSH with U2F so I get to use my Yubikey to push/pull from various machines to those Git repos). |