Skip to content

Commit 1b8d452

Browse files
committed
1 parent d125c0a commit 1b8d452

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,9 @@ jobs:
4747
include:
4848
# NB: Sync list with https://github.com/taiki-e/checkout-action/blob/HEAD/.github/workflows/ci.yml
4949
- os: ubuntu-22.04
50+
- os: ubuntu-22.04-arm
5051
- os: ubuntu-24.04
52+
- os: ubuntu-24.04-arm
5153
- os: ubuntu-22.04
5254
tool: major.minor.patch
5355
- os: ubuntu-22.04

main.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -740,9 +740,9 @@ for tool in "${tools[@]}"; do
740740
read_manifest "${tool}" "${version}"
741741
if [[ "${download_info}" == "null" ]]; then
742742
if [[ "${rust_crate}" == "null" ]]; then
743-
bail "${tool}@${version} for '${host_os}' is not supported"
743+
bail "${tool}@${version} for '${host_arch}_${host_os}' is not supported"
744744
fi
745-
warn "${tool}@${version} for '${host_os}' is not supported; fallback to cargo-binstall"
745+
warn "${tool}@${version} for '${host_arch}_${host_os}' is not supported; fallback to cargo-binstall"
746746
case "${version}" in
747747
latest) unsupported_tools+=("${rust_crate}") ;;
748748
*) unsupported_tools+=("${rust_crate}@${version}") ;;

tools/ci/tool-list.sh

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,12 @@ case "$(uname -s)" in
110110
;;
111111
*) bail "unrecognized OS type '$(uname -s)'" ;;
112112
esac
113+
# See main.sh
114+
case "$(uname -m)" in
115+
aarch64 | arm64) host_arch=aarch64 ;;
116+
xscale | arm | armv*l) bail "32-bit Arm runner is not supported yet by this action; if you need support for this platform, please submit an issue at <https://github.com/taiki-e/install-action>" ;;
117+
*) host_arch=x86_64 ;;
118+
esac
113119

114120
tools=()
115121
for manifest in tools/codegen/base/*.json; do
@@ -120,9 +126,13 @@ for manifest in tools/codegen/base/*.json; do
120126
continue
121127
fi
122128
case "${host_os}" in
123-
linux*) ;;
129+
linux*)
130+
if [[ "${host_arch}" != "x86_64" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}_gnu" "${manifest}")" == "null" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}_musl" "${manifest}")" == "null" ]]; then
131+
continue
132+
fi
133+
;;
124134
*)
125-
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]]; then
135+
if [[ "$(jq -r ".platform.x86_64_${host_os}" "${manifest}")" == "null" ]] && [[ "$(jq -r ".platform.${host_arch}_${host_os}" "${manifest}")" == "null" ]]; then
126136
continue
127137
fi
128138
;;

0 commit comments

Comments
 (0)