Skip to content

Commit

Permalink
feat: migrate to new homebrew constuctions (on_arm, on_intel) (#4822)
Browse files Browse the repository at this point in the history
<!--

Hi, thanks for contributing!

Please make sure you read our CONTRIBUTING guide.

Also, add tests and the respective documentation changes as well.

-->


<!-- If applied, this commit will... -->

...

<!-- Why is this change being made? -->
Brew linter says that old constructions can't be used in case of
submitting to brew-core

<!-- # Provide links to any relevant tickets, URLs or other resources
-->

...
  • Loading branch information
kvendingoldo committed May 2, 2024
1 parent a138a11 commit b05a62f
Show file tree
Hide file tree
Showing 23 changed files with 172 additions and 136 deletions.
38 changes: 21 additions & 17 deletions internal/pipe/brew/templates/linux_packages.rb
@@ -1,27 +1,31 @@
{{- define "linux_packages" }}
{{- range $element := .LinuxPackages }}
{{- if eq $element.Arch "amd64" }}
if Hardware::CPU.intel?
on_intel do
{{- end }}
{{- if eq $element.Arch "arm" }}
if Hardware::CPU.arm? && !Hardware::CPU.is_64_bit?
{{- end }}
{{- if eq $element.Arch "arm64" }}
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
{{- end }}
url "{{ $element.DownloadURL }}"
{{- if .DownloadStrategy }}, using: {{ .DownloadStrategy }}{{- end }}
{{- if .Headers }},
headers: [{{ printf "\n" }}
{{- join .Headers | indent 10 }}
]
on_arm do
if !Hardware::CPU.is_64_bit?
{{- end }}
sha256 "{{ $element.SHA256 }}"

def install
{{- range $index, $element := .Install }}
{{ . -}}
{{- if eq $element.Arch "arm64" }}
on_arm do
if Hardware::CPU.is_64_bit?
{{- end }}
url "{{ $element.DownloadURL }}"
{{- if .DownloadStrategy }}, using: {{ .DownloadStrategy }}{{- end }}
{{- if .Headers }},
headers: [{{ printf "\n" }}
{{- join .Headers | indent 10 }}
]
{{- end }}
sha256 "{{ $element.SHA256 }}"

def install
{{- range $index, $element := .Install }}
{{ . -}}
{{- end }}
end
end
end
end
{{- end }}
Expand Down
2 changes: 1 addition & 1 deletion internal/pipe/brew/templates/macos_packages.rb
Expand Up @@ -31,7 +31,7 @@ def install
{{- end }}
end

if Hardware::CPU.arm?
on_arm do
def caveats
<<~EOS
The darwin_arm64 architecture is not supported for the {{ $.Name }}
Expand Down
34 changes: 19 additions & 15 deletions internal/pipe/brew/testdata/TestFullFormulae.rb.golden
Expand Up @@ -30,29 +30,33 @@ class Test < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Linux_x86_64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
end
if Hardware::CPU.arm? && !Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm6.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
on_arm do
if !Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm6.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
on_arm do
if Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
end
end
end

Expand Down
30 changes: 17 additions & 13 deletions internal/pipe/brew/testdata/TestFullFormulaeLinuxOnly.rb.golden
Expand Up @@ -8,28 +8,32 @@ class Test < Formula
version "0.1.3"
depends_on :linux

if Hardware::CPU.intel?
on_intel do
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Linux_x86_64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
end
if Hardware::CPU.arm? && !Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm6.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"
on_arm do
if !Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm6.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
def install
bin.install "test"
end
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"
on_arm do
if Hardware::CPU.is_64_bit?
url "https://github.com/caarlos0/test/releases/download/v0.1.3/test_Arm64.tar.gz"
sha256 "1633f61598ab0791e213135923624eb342196b3494909c91899bcd0560f84c67"

def install
bin.install "test"
end
def install
bin.install "test"
end
end
end
end
Expand Up @@ -33,7 +33,7 @@ class CustomBlock < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -33,7 +33,7 @@ class CustomDownloadStrategy < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz", using: GitHubPrivateRepositoryReleaseDownloadStrategy
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -34,7 +34,7 @@ class CustomRequire < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz", using: CustomDownloadStrategy
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
2 changes: 1 addition & 1 deletion internal/pipe/brew/testdata/TestFullPipe/default.rb.golden
Expand Up @@ -33,7 +33,7 @@ class Default < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -33,7 +33,7 @@ class DefaultGitlab < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -33,7 +33,7 @@ class GitRemote < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
2 changes: 1 addition & 1 deletion internal/pipe/brew/testdata/TestFullPipe/open_pr.rb.golden
Expand Up @@ -33,7 +33,7 @@ class OpenPr < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -33,7 +33,7 @@ class ValidRepositoryTemplates < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand Down
Expand Up @@ -39,7 +39,7 @@ class WithHeader < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz",
headers: [
"Authorization: bearer #{ENV["HOMEBREW_GITHUB_API_TOKEN"]}"
Expand Down
Expand Up @@ -41,7 +41,7 @@ class WithManyHeaders < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/bin.tar.gz",
headers: [
"Accept: application/octet-stream",
Expand Down
Expand Up @@ -20,7 +20,7 @@ class V1 < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/amd64v2.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand All @@ -29,14 +29,16 @@ class V1 < Formula
man1.install "./man/foo.1.gz"
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
on_arm do
if Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
end
end
end
end
Expand Up @@ -20,7 +20,7 @@ class V2 < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/amd64v2.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand All @@ -29,14 +29,16 @@ class V2 < Formula
man1.install "./man/foo.1.gz"
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
on_arm do
if Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
end
end
end
end
Expand Up @@ -20,7 +20,7 @@ class V3 < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/amd64v3.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand All @@ -29,14 +29,16 @@ class V3 < Formula
man1.install "./man/foo.1.gz"
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
on_arm do
if Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
end
end
end
end
Expand Up @@ -20,7 +20,7 @@ class V4 < Formula
end

on_linux do
if Hardware::CPU.intel?
on_intel do
url "https://dummyhost/download/v1.0.1/amd64v3.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

Expand All @@ -29,14 +29,16 @@ class V4 < Formula
man1.install "./man/foo.1.gz"
end
end
if Hardware::CPU.arm? && Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
on_arm do
if Hardware::CPU.is_64_bit?
url "https://dummyhost/download/v1.0.1/arm64.tar.gz"
sha256 "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"

def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
def install
bin.install "foo"
man1.install "./man/foo.1.gz"
end
end
end
end
end

0 comments on commit b05a62f

Please sign in to comment.