Skip to content

Commit 1a12cb0

Browse files
committed
ci: add curl tool-only daily download artifacts [ci skip]
They contain curl tool executables only, without static libs, shared lib and other bits. Caveats: - curl tool resides under `subdir/` inside the package. Can be fixed locally in the future by renaming curl to unique names, e.g. `curl-x64.exe` or `curl-riscv64`. Maybe even to a more globally unique name, such as `curl-linux-musl-amd64`. - curl tool misses the exec permission so cannot be executed after unzipping on *nix systems. Needs `chmod +x` before doing so. https://github.com/actions/upload-artifact#permission-loss actions/upload-artifact#38 - there is no option to switch to tarball from zip. - uploading a `.tar.gz` will still get it zipped by GitHub. - there is no option to skip zip and offer files as-is. (exec attribute would be lost in this case as well) actions/upload-artifact#39 actions/upload-artifact#3 (closed) actions/upload-artifact#14 (pending upload-artifact@v4) - a workaround for most of this is uploading them to our own server in the exact form we want. 3-4 years old unresolved issues on the side of GitHub.
1 parent d9099ed commit 1a12cb0

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

.github/workflows/daily.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ permissions: {}
1313
env:
1414
CW_MAP: '1'
1515
CW_JOBS: '3'
16+
CW_PKG_NODELETE: '1'
17+
CW_PKG_FLATTEN: '1'
1618
DO_NOT_TRACK: '1'
1719
DOCKER_CONTENT_TRUST: '1'
1820

@@ -39,6 +41,11 @@ jobs:
3941
4042
- name: 'list dependencies'
4143
run: cat urls.txt
44+
- uses: actions/upload-artifact@v3
45+
with:
46+
name: 'curl-linux-glibc-daily-tool'
47+
retention-days: 42
48+
path: curl-*-*-*/curl*
4249
- uses: actions/upload-artifact@v3
4350
with:
4451
name: 'curl-linux-glibc-daily'
@@ -67,6 +74,11 @@ jobs:
6774
6875
- name: 'list dependencies'
6976
run: cat urls.txt
77+
- uses: actions/upload-artifact@v3
78+
with:
79+
name: 'curl-linux-musl-daily-tool'
80+
retention-days: 42
81+
path: curl-*-*-*/curl*
7082
- uses: actions/upload-artifact@v3
7183
with:
7284
name: 'curl-linux-musl-daily'
@@ -87,6 +99,11 @@ jobs:
8799
88100
- name: 'list dependencies'
89101
run: cat urls.txt
102+
- uses: actions/upload-artifact@v3
103+
with:
104+
name: 'curl-macos-universal-daily-tool'
105+
retention-days: 42
106+
path: curl-*-*-*/curl*
90107
- uses: actions/upload-artifact@v3
91108
with:
92109
name: 'curl-macos-universal-daily'
@@ -121,6 +138,11 @@ jobs:
121138
- name: 'list dependencies'
122139
run: cat urls.txt
123140
# https://github.com/actions/upload-artifact
141+
- uses: actions/upload-artifact@v3
142+
with:
143+
name: 'curl-windows-daily-tool'
144+
retention-days: 42
145+
path: curl-*-*-*/curl*
124146
- uses: actions/upload-artifact@v3
125147
with:
126148
name: 'curl-windows-daily'

_build.sh

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,6 @@ set -o xtrace -o errexit -o nounset; [ -n "${BASH:-}${ZSH_NAME:-}" ] && set -o p
9999
# TODO:
100100
# - quictls: build with no-deprecated option (pending libssh2 support)
101101
# - delete curl-gnumake.sh and libssh2-gnumake.sh.
102-
# - publish curl tool as direct downloads:
103-
# curl-linux-musl / curl-mac / curl-x64.exe / curl-x86.exe / curl-a64.exe
104-
# (or similar) [not possible in GHA, the max we can do is flatten the
105-
# package possibly by offering a 'tool-only' artifact.]
106102
# - change default TLS to BoringSSL (with OPENSSL_SMALL?) or LibreSSL?
107103
# - prepare for Xcode 15 with new ld_prime (-Wl,-ld_new) linker (vs. -Wl,-ld_classic).
108104
# https://developer.apple.com/forums/thread/715385

0 commit comments

Comments
 (0)