redhat-actions / openshift-tools-installer

Download, install and cache OpenShift binaries into your GitHub Actions runners.
https://github.com/marketplace/actions/openshift-tools-installer
MIT License
23 stars 24 forks source link

Provide binaries for oc on arm64 runners #80

Open meibensteiner opened 2 years ago

meibensteiner commented 2 years ago

Is your feature request related to a problem? Please describe.

My self-hosted runner on ARM hardware is unable to use oc, the openshift client. I see in the Actions logs that the architecture is correctly read as arm64, but oc is still downloading x86, while helm is being downloaded correctly.

Describe the solution you'd like

Please download the correct binaries on arm64.

Describe alternatives you've considered

None. It would be possible to download the binaries manually, but I would rather use the plugin, if possible

Additional context

##[group]Run redhat-actions/openshift-tools-installer@v1
with:
  oc: latest
  helm: latest
  github_pat: ***
  source: mirror
  skip_cache: false
##[endgroup]
Installing helm matching version "latest"
Installing oc matching version "latest"
ℹ️ Tools will be installed from "mirror".

🔎 Searching for the latest version of helm
Download directory for helm is https://mirror.openshift.com/pub/openshift-v4/clients/helm/
Latest release of helm is 3.7.1
Current operating system is linux
Current architecture is arm64
Selecting helm-linux-arm64.tar.gz
Using temporary directory for storage
📁 CLIs will be downloaded to /runner/_work/_temp/openshift-bin
Added /runner/_work/_temp/openshift-bin to PATH
Checking the cache for helm 3.7.1...
Received 0 of 11088217 (0.0%), 0.0 MBs/sec
Received 4194304 of 11088217 (37.8%), 2.0 MBs/sec
Received 6893913 of 11088217 (62.2%), 2.2 MBs/sec
Received 6893913 of 11088217 (62.2%), 1.6 MBs/sec
Received 11088217 of 11088217 (100.0%), 2.4 MBs/sec
Cache Size: ~11 MB (11088217 B)
[command]/usr/bin/tar --use-compress-program zstd -d -xf /runner/_work/_temp/aed44aa4-afb3-48a5-8080-9bffc8085500/cache.tzst -P -C /runner/_work/homelab/homelab
Cache restored successfully
📂 helm 3.7.1 was found in the cache.
helm installed into /runner/_work/_temp/openshift-bin/helm
[command]/runner/_work/_temp/openshift-bin/helm version
version.BuildInfo{Version:"v3.7.1+7.el8", GitCommit:"8f33223fe17957f11ba7a88b016bc860f034c4e6", GitTreeState:"clean", GoVersion:"go1.16.7"}
✅ Successfully installed helm 3.7.1 from the cache.

🔎 Searching for the latest version of oc
Download directory for oc is https://mirror.openshift.com/pub/openshift-v4/clients/ocp/
Latest release of oc is 4.10.20
Selecting openshift-client-linux-4.10.20.tar.gz
Checking the cache for oc 4.10.20...
oc 4.10.20 was not found in the cache.
⬇️ Downloading 47.23MB https://mirror.openshift.com/pub/openshift-v4/clients/ocp/4.10.20/openshift-client-linux-4.10.20.tar.gz ...
Downloaded openshift-client-linux-4.10.20.tar.gz in 5.9s
⬇️ Downloading hash file https://mirror.openshift.com/pub/openshift-v4/clients/ocp/4.10.20/sha256sum.txt
sha256 verification of openshift-client-linux-4.10.20.tar.gz succeeded.
[command]/usr/bin/tar xz --warning=no-unknown-keyword -C /runner/_work/_temp/aa14112e-d631-49a2-a53d-e1f6c77aad4b -f /runner/_work/_temp/e9e0f643cdd77f60c7a333fafb823c43-openshift-client-linux-4.10.20.tar.gz
Removed /runner/_work/_temp/e9e0f643cdd77f60c7a333fafb823c43-openshift-client-linux-4.10.20.tar.gz
oc installed into /runner/_work/_temp/openshift-bin/oc
[command]/runner/_work/_temp/openshift-bin/oc version --client
/runner/_work/_temp/openshift-bin/oc: 1: ELF: not found
/runner/_work/_temp/openshift-bin/oc: 1: /runner/_work/_temp/openshift-bin/oc: 2: �
: not found
cannot open : No such file
/runner/_work/_temp/openshift-bin/oc: 1: J: not found
/runner/_work/_temp/openshift-bin/oc: 1: /runner/_work/_temp/openshift-bin/oc: 1: cannot open : No such filecannot open �J��J���@�@��: No such file

/runner/_work/_temp/openshift-bin/oc: 1: /runner/_work/_temp/openshift-bin/oc: 1: J: not foundJ�Y��{: not found

/runner/_work/_temp/openshift-bin/oc: 1: /runner/_work/_temp/openshift-bin/oc: 1: J�: not found
J���/lib64/ld-linux-x86-64.so.2GNU: not found/runner/_work/_temp/openshift-bin/oc: 2: cannot open �G: No such file

/runner/_work/_temp/openshift-bin/oc: 3: ��Q�tdR�tdJ��!�,: not found
/runner/_work/_temp/openshift-bin/oc: 2: Syntax error: "&" unexpected (expecting ")")
##[error]The process '/runner/_work/_temp/openshift-bin/oc' failed with exit code 2

✅ Successfully installed 1/2 client, 1/1 from the cache:
  - helm 3.7.1

❌ Failed to install oc.

Wrote out installed versions to /runner/_work/_temp/openshift-bin/openshift-clients-installed.json
Post job cleanup.