CI: Support disabling timeouts for a build-and-test workflow #815
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds a
timeout_overrideinput to thebuild-and-test-macosandbuild-and-test-ubuntucall-able workflows. It's used to turn off timeouts formacos-13.Homebrew no longer supports macOS 13, so installs are often from source, which can take a long time. The install of dependencies was taking a long time and exceeding the timeout. Because the GitHub VM images can sometimes be old, we added
brew updateto our jobs, to make sure that Homebrew sees the latest packages; but this can possibly cause Homebrew to install packages that don't need updating. We installccache, to help save time by caching C/C++ compiler outputs, but the install of that was requiring the install of things likerustthat would take 80 minutes to compile from source! Potentially, we could add a flag for disabling the use ofccache, but that might be complicated, as it would require a conditional in the install shell scripts and conditionals on and in various steps of the jobs.We only need
macos-13long enough to build a tar-file for the imminent release, then we can remove it. So for now, I've just added a flag for disabling timeouts.