Skip to content

Commit 56684e8

Browse files
committed
Merge branch 'master' into v1
2 parents ae0610f + e840c5e commit 56684e8

File tree

4 files changed

+15
-3
lines changed

4 files changed

+15
-3
lines changed

.github/workflows/main.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
matrix:
1717
os:
1818
- ubuntu-latest
19+
- ubuntu-24.04-arm
1920
- macos-latest # arm64
2021
- macos-15-intel # x64
2122
- windows-latest
@@ -27,6 +28,12 @@ jobs:
2728
- {shards: latest, crystal: latest}
2829
- {shards: nightly, crystal: nightly}
2930
- {crystal: 'branch:master'}
31+
exclude:
32+
- os: ubuntu-24.04-arm
33+
config: {shards: '0.14', crystal: '1.3'}
34+
include:
35+
- os: ubuntu-24.04-arm
36+
config: {shards: '0.19', crystal: '1.18'}
3037

3138
name: crystal ${{ matrix.config.crystal }} + shards ${{ matrix.config.shards }} (${{ matrix.os }})
3239
runs-on: ${{ matrix.os }}

.github/workflows/release.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
matrix:
1717
os:
1818
- ubuntu-latest
19+
- ubuntu-24.04-arm
1920
- macos-latest # arm64
2021
- macos-15-intel # x64
2122
- windows-latest

action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ inputs:
66
shards:
77
description: The version of Shards to install (true, "latest", "nightly", "0.13.0" etc)
88
arch:
9-
description: The architecture of the build of Crystal ("x86_64")
9+
description: The architecture of the build of Crystal ("x86_64", "aarch64")
1010
destination:
1111
description: The directory to store Crystal in
1212
annotate:

index.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ function getPlatform() {
7373
}
7474

7575
function getArch() {
76-
return {"ia32": "x86", "x64": "x86_64"}[process.arch] || process.arch;
76+
return {"arm64": "aarch64", "ia32": "x86", "x64": "x86_64"}[process.arch] || process.arch;
7777
}
7878

7979
function checkArch(arch, allowed) {
@@ -122,7 +122,11 @@ async function subprocess(command, options) {
122122

123123
async function installCrystalForLinux({crystal, shards, arch = getArch(), path}) {
124124
checkVersion(crystal, [Latest, Nightly, NumericVersion, BranchVersion]);
125-
const filePatterns = {"x86_64": /-linux-x86_64\.tar\.gz$/, "x86": /-linux-i686\.tar\.gz$/};
125+
const filePatterns = {
126+
"aarch64": /-linux-aarch64\.tar\.gz$/,
127+
"x86_64": /-linux-x86_64\.tar\.gz$/,
128+
"x86": /-linux-i686\.tar\.gz$/,
129+
};
126130
checkArch(arch, Object.keys(filePatterns));
127131

128132
const packages = "libevent-dev libgmp-dev libpcre3-dev libssl-dev libxml2-dev libyaml-dev".split(" ");

0 commit comments

Comments
 (0)