Skip to content

Commit b4c3d8c

Browse files
bigfootjonsdwilsh
authored andcommitted
Fix arch detection inside aarch64 containers
This change also starts testing on arm systems.
1 parent 83b5341 commit b4c3d8c

2 files changed

Lines changed: 16 additions & 5 deletions

File tree

.github/workflows/test.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,16 @@ on:
1010

1111
jobs:
1212
test-devcontainer-feature-autogenerated:
13-
runs-on: ubuntu-latest
1413
strategy:
1514
matrix:
1615
baseImage:
1716
- debian:latest
1817
- ubuntu:latest
1918
- mcr.microsoft.com/devcontainers/base:ubuntu
19+
runsOn:
20+
- ubuntu-24.04-arm
21+
- ubuntu-latest
22+
runs-on: ${{ matrix.runsOn }}
2023
steps:
2124
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2225
- name: Install the latest devcontainer CLI

devcontainer-features/src/dotslash/install.sh

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,11 @@ ensure_dependencies() {
2626
download() {
2727
local version="$1"
2828
local url
29-
url="https://github.com/facebook/dotslash/releases/download/${version}/dotslash-linux-musl.$(uname -m).${version}.tar.gz"
29+
local arch=$(uname -m)
30+
if [ "${arch}" -eq "aarch64" ]; then
31+
arch="arm64"
32+
fi
33+
url="https://github.com/facebook/dotslash/releases/download/${version}/dotslash-linux-musl.${arch}.${version}.tar.gz"
3034

3135
# First, verify the release exists!
3236
echo "Fetching version ${version} from ${url}..."
@@ -43,8 +47,8 @@ download() {
4347
}
4448

4549
list_releases() {
46-
local url="https://api.github.com/repos/facebook/dotslash/releases"
47-
curl -s "${url}" | jq -c '.[] | select(.draft == false and .prerelease == false) | .tag_name'
50+
local releases_file="$1"
51+
jq -c '.[] | select(.draft == false and .prerelease == false) | .tag_name' "${releases_file}"
4852
}
4953

5054
echo "Activating feature 'dotslash' with version ${VERSION}"
@@ -58,7 +62,11 @@ ensure_dependencies
5862

5963
if [ "${VERSION}" = "latest" ]; then
6064
echo "Determining latest release since 'latest' version specified..."
61-
VERSION=$(list_releases | head -n 1)
65+
local url="https://api.github.com/repos/facebook/dotslash/releases"
66+
local releases_file=$(mktemp -t releases.jsonXXX)
67+
local releases=$(curl -s "${url}" -o "${releases_file}")
68+
cat "${releases_file}"
69+
VERSION=$(list_releases($releases_file) | head -n 1)
6270
fi
6371

6472
# Remove any double quotes that might be in the version string.

0 commit comments

Comments
 (0)