@@ -19,95 +19,27 @@ concurrency:
1919 cancel-in-progress : ${{ github.event_name == 'pull_request' }}
2020
2121jobs :
22- package-linux-amd64 :
23- name : x86-64 Linux build
24- runs-on : ubuntu-latest
25- timeout-minutes : 15
26- needs : npm-version
27- container : " centos:8"
28- env :
29- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
30-
31- steps :
32- - name : Checkout repo
33- uses : actions/checkout@v4
34-
35- - name : Install Node.js
36- uses : actions/setup-node@v4
37- with :
38- node-version-file : .node-version
39- cache : npm
40- cache-dependency-path : |
41- package-lock.json
42- test/package-lock.json
43-
44- - run : SKIP_SUBMODULE_DEPS=1 npm ci
45-
46- - name : Install development tools
47- run : |
48- cd /etc/yum.repos.d/
49- sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
50- sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
51- yum install -y gcc-c++ make jq rsync python3 libsecret-devel krb5-devel
52-
53- - name : Install nfpm and envsubst
54- run : |
55- mkdir -p ~/.local/bin
56- curl -sSfL https://github.com/goreleaser/nfpm/releases/download/v2.22.2/nfpm_2.22.2_`uname -s`_`uname -m`.tar.gz | tar -C ~/.local/bin -zxv nfpm
57- curl -sSfL https://github.com/a8m/envsubst/releases/download/v1.1.0/envsubst-`uname -s`-`uname -m` -o envsubst
58- chmod +x envsubst
59- mv envsubst ~/.local/bin
60- echo "$HOME/.local/bin" >> $GITHUB_PATH
61-
62- - name : Download npm package
63- uses : actions/download-artifact@v4
64- with :
65- name : npm-release-package
66-
67- - run : tar -xzf package.tar.gz
68-
69- - run : npm run release:standalone
70-
71- - run : npm run test:integration
72-
73- - name : Upload coverage report to Codecov
74- uses : codecov/codecov-action@v5
75- with :
76- token : ${{ secrets.CODECOV_TOKEN }}
77- if : success()
78- continue-on-error : true
79-
80- # Strip out the v (v4.9.1 -> 4.9.1).
81- - name : Get and set VERSION
82- run : |
83- TAG="${{ inputs.version || github.ref_name }}"
84- echo "VERSION=${TAG#v}" >> $GITHUB_ENV
85-
86- - env :
87- VERSION : ${{ env.VERSION }}
88- run : npm run package
89-
90- - uses : softprops/action-gh-release@v1
91- with :
92- draft : true
93- discussion_category_name : " 📣 Announcements"
94- files : ./release-packages/*
95-
9622 package-linux-cross :
97- name : Linux cross-compile builds
23+ name : ${{ matrix.prefix }}
9824 runs-on : ubuntu-latest
9925 timeout-minutes : 15
10026 needs : npm-version
101- container : " debian: buster"
27+ container : " python:3.8-slim- buster"
10228 strategy :
10329 matrix :
10430 include :
31+ - prefix : x86_64-linux-gnu
32+ npm_arch : x64
33+ apt_arch : amd64
34+ package_arch : amd64
10535 - prefix : aarch64-linux-gnu
10636 npm_arch : arm64
10737 apt_arch : arm64
38+ package_arch : arm64
10839 - prefix : arm-linux-gnueabihf
10940 npm_arch : armv7l
11041 apt_arch : armhf
42+ package_arch : armv7l
11143
11244 env :
11345 AR : ${{ format('{0}-ar', matrix.prefix) }}
12153 PKG_CONFIG_PATH : ${{ format('/usr/lib/{0}/pkgconfig', matrix.prefix) }}
12254 TARGET_ARCH : ${{ matrix.apt_arch }}
12355 npm_config_arch : ${{ matrix.npm_arch }}
56+ PKG_ARCH : ${{ matrix.package_arch }}
12457 # Not building from source results in an x86_64 argon2, as if
12558 # npm_config_arch is being ignored.
12659 npm_config_build_from_source : true
@@ -141,16 +74,15 @@ jobs:
14174 - name : Install cross-compiler and system dependencies
14275 run : |
14376 dpkg --add-architecture $TARGET_ARCH
144- apt-get update && apt-get install -y --no-install-recommends \
77+ apt update && apt install -y --no-install-recommends \
14578 crossbuild-essential-$TARGET_ARCH \
14679 libx11-dev:$TARGET_ARCH \
14780 libx11-xcb-dev:$TARGET_ARCH \
14881 libxkbfile-dev:$TARGET_ARCH \
14982 libsecret-1-dev:$TARGET_ARCH \
15083 libkrb5-dev:$TARGET_ARCH \
15184 ca-certificates \
152- curl wget rsync gettext-base \
153- python3
85+ curl wget rsync gettext-base
15486
15587 - run : SKIP_SUBMODULE_DEPS=1 npm ci
15688
@@ -183,7 +115,7 @@ jobs:
183115
184116 - env :
185117 VERSION : ${{ env.VERSION }}
186- run : npm run package ${npm_config_arch}
118+ run : npm run package $PKG_ARCH
187119
188120 - uses : softprops/action-gh-release@v1
189121 with :
0 commit comments