mirror of
https://github.com/certbot/certbot.git
synced 2026-10-23 11:28:56 +03:00
Fixes https://github.com/certbot/certbot/issues/9345 Splitting out test branch and cleaner review branch instead of https://github.com/certbot/certbot/pull/10666 In the process of splitting out the tests, I noticed that it's a little silly to have the chart and keep track of statuses when it's just one build, and it's actually nice to just print the output as it comes out. But then there's really no reason to keep around the infrastructure to handle simultaneous builds, because that's just complex code there's no more reason to maintain. `build_remote_single.py` is modified from `build_remote.py` with the parallel builds code ripped out. I removed timeouts. The main reasoning for timeouts imo is that if we end the process slightly before the github actions timeout, it will cancel more neatly, and we'll therefore get more error output. Unfortunately, you can't have both a timeout and printing of captured stdout without using threading (or `preexec_fn`, but I don't trust snapcraft to not have any threading, which means we can't use that either). So our options are really 1) deal with threading just to get a timeout or 2) don't have a timeout. I don't think having timeouts is worth dealing with threading on its own. If we really want to get those logs, we could do some things with try/except or perhaps using `Popen` as a context manager. It's hard to compare timing exactly because it depends so heavily on launchpad, but this PR seems to take a little longer to run than the current way, with the benefit of being able to rerun individual launchpad build jobs. The total listed github actions runner times is longer, but the jobs do run in parallel, and the limiting factor is still the slowest launchpad individual build. --------- Co-authored-by: Will Greenberg <willg@eff.org>