26 Commits

Author SHA1 Message Date
Bo Anderson
d756d7b356
github_runner_matrix: discontinue non-ephemeral runners 2024-01-18 23:22:18 +00:00
Issy Long
149b0e4f31
Fix new Style/MutableConstant RuboCop offenses for Ruby 3.1
- A follow-up to de592af20bbff5bcb548d2474f0722e59ff1129a, resetting the previous disabled comments too.
2023-12-16 11:57:06 +00:00
Issy Long
de592af20b
rubocop: Set TargetRubyVersion to 3.1 & disable all cops that fail
- As discussed in
  https://github.com/Homebrew/brew/pull/16337#issuecomment-1855668516,
  then we won't have the chicken/egg problem of fixing cops for syntax
  that's unsupported on Ruby 2.6 _before_ we set the TargetRubyVersion
  to 3.1, but if we set it too early then all the taps will fail.
2023-12-14 23:19:43 +00:00
Bo Anderson
ca549fa10d
dev-cmd/determine-test-runner: add --all-supported 2023-11-17 02:11:01 +00:00
Carlo Cabrera
40166eb5e7
github_runner_matrix: remove GITHUB_RUN_ATTEMPT
This should no longer be needed after
Homebrew/ci-orchestrator@845d26ccc0.
2023-05-29 22:36:00 +08:00
Markus Reiter
8274920217
Rename OS::Mac::Version to MacOSVersion. 2023-05-09 05:08:38 +02:00
Carlo Cabrera
0b33a09090
github_runner_matrix: align Intel and ARM timeouts
This prevents situations where the Intel runners have a 360 minute
timeout but the ARM runners only have 45 minutes.

See Homebrew/homebrew-core#130284.
2023-05-07 00:14:54 +08:00
Carlo Cabrera
27eed480ee
github_runner_matrix: improve macOS timeout handling
1. Use the maximum timeout possible for GitHub-hosted macOS runners
2. When using a short timeout, use an even shorter timeout on ARM
   runners.

Our ARM runners are typically at least twice as fast as our Intel
runners on any given job. So, if it takes an ARM runner over half the
timeout to complete a job, it's almost certain that the Intel runner
will not complete the job within the timeout.

Setting an even shorter timeout on the ARM runners will help us abandon
jobs that are unlikely to be completed within the timeout well before we
hit the requested timeout.
2023-05-03 17:55:57 +08:00
Mike McQuaid
9d5b017bb9
Merge pull request #15322 from carlocab/rm-linux-cleanup
github_runner_matrix: remove `HOMEBREW_LINUX_CLEANUP`
2023-04-27 12:28:45 +01:00
Carlo Cabrera
ff728da97b
github_runner_matrix: remove HOMEBREW_LINUX_CLEANUP
This will allow us to remove handling of this in our workflow files in
Homebrew/core.
2023-04-27 16:45:51 +08:00
Carlo Cabrera
b339d9f8be
github_runner_matrix: cleanup GitHub macOS runner
These come with some pre-installed software that we probably want to
clean up first.
2023-04-27 09:59:22 +08:00
Mike McQuaid
6b33197d54
Merge pull request #15313 from carlocab/deps-build-on-github
github_runner_matrix: test dependents on GitHub runners
2023-04-27 00:34:54 +01:00
Carlo Cabrera
947a37d794
github_runner_matrix: test dependents on GitHub runners
This makes our dependent tests run on a GitHub macOS runner if
compatible with the requested timeout.

This will also allow builds on a GitHub runner on macOS if requested
with the environment variable `HOMEBREW_MACOS_BUILD_ON_GITHUB_RUNNER`.
This environment variable will need to be set in the workflow as
appropriate (e.g. when requested by a label).
2023-04-26 11:51:40 +08:00
Douglas Eichelberger
08af78a2a5 brew style --fix 2023-04-25 09:26:24 -07:00
Carlo Cabrera
e69e8e04c1
Merge pull request #15309 from carlocab/longer-big-sur-timeout
github_runner_matrix: set `timeout` on macOS
2023-04-25 17:52:51 +08:00
Carlo Cabrera
97655276b2
github_runner_matrix: simplify 2023-04-25 14:54:44 +08:00
Carlo Cabrera
3baacbbc72
github_runner_matrix: set timeout on macOS
This will allow us to set a slightly longer timeout on Intel Big Sur,
which is useful because the Intel Big Sur runner often exceeds our short
time limit by itself.
2023-04-25 14:42:36 +08:00
Douglas Eichelberger
24cf6076e8 brew style --fix 2023-04-24 20:42:39 -07:00
Carlo Cabrera
90f8bd5127
github_runner_matrix: fix dependent runner assignment 2023-04-12 02:37:37 +08:00
Carlo Cabrera
fdc113d85c
os/mac/version: add unsupported_release? helper 2023-04-07 22:21:08 +08:00
Carlo Cabrera
3d5218892d
github_runner_matrix: split into separate files 2023-04-07 19:10:28 +08:00
Carlo Cabrera
5ecd24ba20
Prefer public_send to send 2023-04-07 01:47:11 +08:00
Carlo Cabrera
d1b782fd68
github_runner_matrix: simplify 2023-04-06 03:33:34 +08:00
Carlo Cabrera
87373ff12a
Move more code out of dev-cmd 2023-04-06 02:13:15 +08:00
Carlo Cabrera
0c56540831
Fix --dependents breakage
Without this, we sometimes mistakenly assign runners to dependents jobs
when we don't have to.
2023-04-05 04:25:28 +08:00
Carlo Cabrera
868f9395b6
Extract code to GitHubRunnerMatrix class
The `GitHubRunnerMatrix` takes a list of testing formulae, deleted
formulae, and the available runners and constructs the matrix of active
runners for any given test job.
2023-04-05 03:52:26 +08:00