taiki-e / install-action

GitHub Action for installing development tools (mainly from GitHub Releases).
Apache License 2.0
249 stars 32 forks source link

archlinux test container is broken: jq now requires GLIBC_2.39 #521

Closed jayvdb closed 2 months ago

jayvdb commented 2 months ago
Install packages required for installation (jq, curl, and/or tar)
  :: Synchronizing package databases...
   core downloading...
   extra downloading...
  resolving dependencies...
  looking for conflicting packages...

  Package (2)      New Version  Net Change  Download Size

  extra/oniguruma  6.9.9-1        0.87 MiB       0.21 MiB
  extra/jq         1.7.1-2        0.73 MiB       0.28 MiB

  Total Download Size:   0.50 MiB
  Total Installed Size:  1.60 MiB

  :: Proceed with installation? [Y/n] 
  :: Retrieving packages...
   jq-1.7.1-2-x86_64 downloading...
   oniguruma-6.9.9-1-x86_64 downloading...
  checking keyring...
  checking package integrity...
  loading package files...
  checking for file conflicts...
  :: Processing package changes...
  installing oniguruma...
  installing jq...
  :: Running post-transaction hooks...
  (1/1) Arming ConditionNeedsUpdate...
jq: /usr/lib/libm.so.6: version `GLIBC_2.39' not found (required by jq)
jayvdb commented 2 months ago

there was a recent change upstream to jq package https://gitlab.archlinux.org/archlinux/packaging/packages/jq/-/commit/0620080827b37757a876144b701ca7bc48aebbc7

But that doesnt appear to be the problem. And when I attempt to reproduce locally, it works.

> docker run -it alpine
Unable to find image 'alpine:latest' locally
latest: Pulling from library/alpine
d25f557d7f31: Pull complete
Digest: sha256:77726ef6b57ddf65bb551896826ec38bc3e53f75cdde31354fbffb4f25238ebd
Status: Downloaded newer image for alpine:latest
/ # apk --no-cache add jq
fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/community/x86_64/APKINDEX.tar.gz
(1/2) Installing oniguruma (6.9.9-r0)
(2/2) Installing jq (1.7.1-r0)
Executing busybox-1.36.1-r28.trigger
OK: 9 MiB in 16 packages
/ # jq --help
jq - commandline JSON processor [version 1.7.1]
...
NobodyXu commented 2 months ago

looking at the error, /usr/lib/libm.so.6: versionGLIBC_2.39' not found (required by jq)`, it's triggered by libm.

So perhaps it's only triggered when libm is used? e.g. when actually doing some json filter/select?

jayvdb commented 2 months ago

jq . cargo-cyclonedx.json (and similar selecting) was successful. Will look into filtering..

jayvdb commented 2 months ago

Ignore above local success - I was testing on alpine.

with https://github.com/jayvdb/install-action/actions/runs/9433057502/job/25983566199 I've debugged the script to identify this as the jq that is failing

++ call_jq -r .rust_crate /__w/install-action/install-action/./manifests/biome.json
++ [[ -n '' ]]
++ jq -r .rust_crate /__w/install-action/install-action/./manifests/biome.json
jq: /usr/lib/libm.so.6: version `GLIBC_2.39' not found (required by jq)
+ rust_crate=

and I can reproduce locally

> docker run -it archlinux
Unable to find image 'archlinux:latest' locally
latest: Pulling from library/archlinux
d9884827b07b: Pull complete
8bc4fe693d3a: Pull complete
Digest: sha256:e0cdf8208d276f77eaba78e1ef0e94f7a70c15090cfc09299be5521ceb4a0705
Status: Downloaded newer image for archlinux:latest
..
[root@5dfc63cf6ee5 /]# pacman -Sy --noconfirm  jq
:: Synchronizing package databases...
 core downloading...
 extra downloading...
resolving dependencies...
looking for conflicting packages...

Package (2)      New Version  Net Change  Download Size

extra/oniguruma  6.9.9-1        0.87 MiB       0.21 MiB
extra/jq         1.7.1-2        0.73 MiB       0.28 MiB

Total Download Size:   0.50 MiB
Total Installed Size:  1.60 MiB

:: Proceed with installation? [Y/n]
:: Retrieving packages...
 jq-1.7.1-2-x86_64 downloading...
 oniguruma-6.9.9-1-x86_64 downloading...
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing oniguruma...
installing jq...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
[root@5dfc63cf6ee5 /]# jq --version
jq: /usr/lib/libm.so.6: version `GLIBC_2.39' not found (required by jq)