Commit f7a7829
authored
MINOR: Don't install Homebrew's aws-sdk-cpp and gRPC for JNI macOS build (#1269)
### Rationale for this change
The `JNI macos-15-intel x86_64` job in the RC workflow fails in `Install
dependencies`, before anything is built:
```
##[error]aws-sdk-cpp: no bottle available!
##[error]grpc: no bottle available!
This is a Tier 3 configuration:
https://docs.brew.sh/Support-Tiers#tier-3
`brew bundle` failed! 2 Brewfile dependencies failed to install
```
Homebrew treats x86_64 macOS as a [tier 3
configuration](https://docs.brew.sh/Support-Tiers#tier-3) and rarely
publishes bottles for it. `brew bundle` doesn't build from source, so
`arrow/cpp/Brewfile` can no longer be installed as-is there.
This breaks `main` too, not just PRs, so nightly RC runs are red.
### What changes are included in this PR?
We don't use Homebrew's `aws-sdk-cpp` and gRPC anyway:
* The JNI macOS build uses the `ninja-release-jni-macos` preset, which
sets `ARROW_DEPENDENCY_USE_SHARED=OFF`.
* Homebrew provides only shared libraries for `aws-sdk-cpp` and gRPC.
* So both are uninstalled just after `brew bundle` to ensure the bundled
ones are used.
We skip installing them with `HOMEBREW_BUNDLE_BREW_SKIP` instead of
installing and uninstalling them. This also makes the `macos-14`
`aarch_64` job a bit faster because it no longer installs two formulae
it immediately removes.
`brew uninstall aws-sdk-cpp` needs `|| :` now because it's no longer
installed by `brew bundle`. It's still called because it may be
pre-installed on GitHub Actions runner images.
Note that this keeps building the x86_64 macOS shared libraries.
Dropping the `macos-15-intel` entry would remove `.dylib` files for
x86_64 macOS from our release JARs, which needs a separate discussion.
### Are these changes tested?
Yes, by CI. The `JNI macos-15-intel x86_64` and `JNI macos-14 aarch_64`
jobs in this PR exercise the changed step.
### Are there any user-facing changes?
No.1 parent a11339d commit f7a7829
1 file changed
Lines changed: 18 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
236 | 236 | | |
237 | 237 | | |
238 | 238 | | |
239 | | - | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
240 | 253 | | |
241 | 254 | | |
242 | 255 | | |
243 | 256 | | |
244 | 257 | | |
245 | | - | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
246 | 262 | | |
247 | 263 | | |
248 | 264 | | |
| |||
0 commit comments