@@ -3,52 +3,73 @@ name: release
33on :
44 push :
55 tags : ["v*"]
6-
6+ workflow_dispatch :
7+ env :
8+ ALPINE_VERSION : 3.23
79jobs :
810 build-binaries :
9- runs-on : ${{ matrix.runner.label }}
1011 strategy :
12+ fail-fast : false
1113 matrix :
14+ arch : ["i386","amd64","arm32v7","arm64"]
1215 runner :
13- - { arch: amd64, label: ubuntu-24.04 }
14- - { arch: arm64, label: ubuntu-24.04-arm }
16+ - ubuntu-24.04
17+ - ubuntu-24.04-arm
18+ exclude :
19+ - arch : amd64
20+ runner : ubuntu-24.04-arm
21+ - arch : i386
22+ runner : ubuntu-24.04-arm
23+ - arch : arm64
24+ runner : ubuntu-24.04
25+ - arch : arm32v7
26+ runner : ubuntu-24.04
27+ runs-on : ${{ matrix.runner }}
1528 steps :
16- - uses : actions/checkout@v4
17-
18- - run : docker build -o=dist community/fio
19- - run : docker build -o=dist community/libqrencode
20- - run : docker build -o=dist community/redis
21- - run : docker build -o=dist main/7zip
22- - run : docker build -o=dist main/curl
23- - run : docker build -o=dist main/htop
24- - run : docker build -o=dist main/iperf3
25- - run : docker build -o=dist main/iproute2
26- - run : docker build -o=dist main/lsof
27- - run : docker build -o=dist main/mariadb
28- - run : docker build -o=dist main/nano
29- - run : docker build -o=dist main/netcat-openbsd
30- - run : docker build -o=dist main/nmap
31- - run : docker build -o=dist main/pigz
32- - run : docker build -o=dist main/postgresql17
33- - run : docker build -o=dist main/procps-ng
34- - run : docker build -o=dist main/rsync
35- - run : docker build -o=dist main/socat
36- - run : docker build -o=dist main/strace
37- - run : docker build -o=dist main/tcpdump
38- - run : docker build -o=dist main/vim
39- - run : docker build -o=dist main/wget
40- - run : docker build -o=dist custom/mysql57
41- - run : docker build -o=dist custom/mysql80
42- - run : docker build -o=dist custom/mysql84
29+ - uses : actions/checkout@v6
30+ - name : Set build variables
31+ id : set-build-variables
32+ run : |
33+ BUILDARCH="$(echo ${{ matrix.arch }} | sed 's,arm64,arm64v8,')"
34+ export BUILDARCH
35+ echo "BUILDARCH=${BUILDARCH}" >> "$GITHUB_ENV"
36+ DOCKER_DEFAULT_PLATFORM="linux/$(echo ${{ matrix.arch }} | sed 's,arm32v7,arm/v7,')"
37+ export DOCKER_DEFAULT_PLATFORM
38+ echo "DOCKER_DEFAULT_PLATFORM=${DOCKER_DEFAULT_PLATFORM}" >> "$GITHUB_ENV"
39+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist community/fio
40+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist community/libqrencode
41+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist community/redis
42+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/7zip
43+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/curl
44+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/htop
45+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/iperf3
46+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/iproute2
47+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/lsof
48+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/mariadb
49+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/nano
50+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/netcat-openbsd
51+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/nmap
52+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/pigz
53+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/postgresql17
54+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/procps-ng
55+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/rsync
56+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/socat
57+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/strace
58+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/tcpdump
59+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/vim
60+ - run : docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist main/wget
61+ # - run: docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist custom/mysql57
62+ # - run: docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist custom/mysql80
63+ # - run: docker build --build-arg BUILDARCH="${BUILDARCH}" --build-arg ALPINE_VERSION="${ALPINE_VERSION}" -o=dist custom/mysql84
4364
4465 - run : |
4566 for file in dist/*; do
46- mv "$file" "${file}_${GITHUB_REF_NAME}_linux_${{ matrix.runner. arch }}"
67+ mv "$file" "${file}_${GITHUB_REF_NAME}_linux_${{ matrix.arch }}"
4768 done
4869
4970 - uses : actions/upload-artifact@v4
5071 with :
51- name : static-binaries-artifact-${{ matrix.runner. arch }}
72+ name : static-binaries-artifact-${{ matrix.arch }}
5273 path : dist/*
5374 retention-days : 1
5475 if-no-files-found : error
0 commit comments