curl-curl/.github/scripts
Viktor Szakats 17a669426f
CI: fix zizmor 1.9.0 warnings, shellcheck verify CI shell code, fix fallouts
zizmor 1.9.0 effectively bans using GHA macros within shell script
snippets. Rework them to pass GHA macro values via envs and use those
envs in shell snippets. `${{ env.* }}` macros could be converted
to native env references after making their names shell-compatible.

Envs and shell commands can no longer be used in GHA macro values. Most
cases could be fixed by using literals. Passing quoted values with
spaces combined with other args also doesn't work anymore. This was
replaced by passing them separately.

Despite the initial complications, avoiding GHA macros in scripts does
seems to make the CI code reasonable cleaner. It also makes it possible
to analyze the scripts with shellcheck, finding subtle issues that went
unnoticed till now.

Also:
- un-ignore and fix three existing zizmor `template-injection` issues.
- add script to extract and shellcheck all shell code stored within GHA
  and Circle CI YAML files.
- add CI job to run this script.
- fix shellcheck issues discovered.
- fix minor differences between cmake and autotools FreeBSD jobs.
- merge cmake/autotools FreeBSD jobs to avoid developing unwanted
  differences again.
- fix/sync quote use across shell code.
- replace `$HOME` with `~` or literal where it made sense.
- replace most `brew --prefix` with literals.
- move all curl install tests to the `curl-install*` prefix.
- add missing curl install tests to cygwin/msys/mingw/*bsd.
- pipe to `tar` instead of storing downloads on disk.
- drop unnecessary `PKG_CONFIG_PATH` when building nghttp3.

Ref: https://github.com/curl/curl/actions/runs/15461461371/job/43523546041
Ref: https://github.com/zizmorcore/zizmor/releases/tag/v1.9.0

Follow-up to e522f47986 #17278

Closes #17537
2025-06-06 21:30:43 +02:00
..
badwords.pl docs: use lowercase curl and libcurl 2025-01-02 17:15:54 +01:00
badwords.txt misc: we write *an* IPv6 address 2025-05-30 07:53:31 +02:00
cleancmd.pl GHA: spellcheck curl symbols better 2025-02-27 13:15:21 +01:00
cmp-config.pl autotools: detect wolfSSL_set_quic_use_legacy_code like cmake does 2025-04-24 19:46:28 +02:00
cmp-pkg-config.sh GHA/configure-vs-cmake: check libcurl.pc/curl-config, fix issues 2024-09-21 12:08:35 +02:00
codespell-ignore.txt mbedTLS: implement CURLOPT_SSL_CIPHER_LIST option 2024-04-24 14:30:37 +02:00
distfiles.sh build: drop tool_hugehelp.c.cvs, tidy up macros, drop buildconf.bat 2025-01-26 14:22:49 +01:00
randcurl.pl GHA: run random curl command lines for N seconds in CI 2025-04-01 11:31:48 +02:00
shellcheck-ci.sh CI: fix zizmor 1.9.0 warnings, shellcheck verify CI shell code, fix fallouts 2025-06-06 21:30:43 +02:00
shellcheck.sh CI: fix zizmor 1.9.0 warnings, shellcheck verify CI shell code, fix fallouts 2025-06-06 21:30:43 +02:00
spacecheck.pl spacecheck.pl: drop more exceptions 2025-05-13 16:01:07 +02:00
spellcheck.curl GHA: spellcheck curl symbols better 2025-02-27 13:15:21 +01:00
spellcheck.words VULN-DISCLOSURE-POLICY: use of weak algos 2025-04-29 13:11:07 +02:00
spellcheck.yaml wcurl: import v2025.04.20 script + docs 2025-04-21 11:06:44 +02:00
trimmarkdownheader.pl GHA: trim markdown headers before proselinting 2024-08-22 23:45:40 +02:00
verify-examples.pl docs/libcurl: fix type and prototype problems in examples 2025-04-29 22:44:05 +02:00
verify-synopsis.pl verify-synopsis.pl: work with .md files 2024-06-27 12:45:06 +02:00
yamlcheck.sh GHA: add yamlcheck 2024-08-23 18:42:55 +02:00
yamlcheck.yaml GHA: add yamlcheck 2024-08-23 18:42:55 +02:00