Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] Add support for basic testing of ARM if-branch (e.g. brew fetch) #107586

Closed
cho-m opened this issue Jun 22, 2021 · 3 comments
Closed

[CI] Add support for basic testing of ARM if-branch (e.g. brew fetch) #107586

cho-m opened this issue Jun 22, 2021 · 3 comments

Comments

@cho-m
Copy link
Member

cho-m commented Jun 22, 2021

Provide a detailed description of the proposed feature

This is to improve checks on homebrew-cask CI by adding some support for basic (non-install) tests for ARM branch.

For example, at minimum doing something like a brew fetch to check valid URL/SHA. Perhaps an equivalent of brew audit --online test for livecheck.

This may either require a flag in brew to "fake" Hardware for certain commands, or a CI-specific test logic rather than directly running brew commands.

Potentially consider scoping out if possible to run simple tests for other macOS version branches too (e.g. Mojave and older, or Monterey beta, or ...). This would allow us to detect dead branches better.

What is the motivation for the feature?

Since homebrew-cask don't have an ARM CI node, the CI doesn't seem to test the ARM branch.

Given that ARM-specific download URLs are becoming common, this means Homebrew maintainers may need to manually confirm ARM branch.

Having a test in CI would help check correct url/sha/etc and reduce manual confirmation overhead.

Example use case

I have seen some PRs that showed CI passing, but when I locally checked out PR, the brew fetch failed.

For example, in #107488 (corresponding commit to change ARM url 696bb78)

@SMillerDev
Copy link
Member

I wonder if, instead of faking the OS, it wouldn't be better for casks to implement a DSL similar to a formula bottle block to define what a specific url supports.

@yurikoles
Copy link
Contributor

yurikoles commented Nov 27, 2021

I like ArchLinux' PKGBUILD approach, which allows defining architecture-specific sources as source_x86_64, and corresponding checksum as sha256sums_x86_64. We may apply this approach to HBC DSL as url_x86_64 / sha256_x86_64 and url_aarch64 / sha256_aarch64.

@SMillerDev SMillerDev added this to Help Wanted in Homebrew TODO via automation Mar 14, 2022
@bevanjkay
Copy link
Member

This was completed by #143743

Homebrew TODO automation moved this from Help Wanted to Done May 15, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 15, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
Homebrew TODO
  
Done
Development

No branches or pull requests

4 participants