Fork me on GitHub
#circleci
<
2022-12-10
>
borkdude08:12:12

I'm building dynamically linked binaries on cimg/clojure:1.11.1-openjdk-17.0 Can this image be consided immutable or has anything changed lately with glibc on there? Users are getting errors like:

clj-kondo: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32\' not found (required by clj-kondo)\nclj-kondo: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34\' not found (required by clj-kondo)\n

borkdude09:12:42

cc @U0FTAT30E @U0JUDLCQM @U7ERLH6JX I see here "last modified 28 november" https://circleci.com/developer/images/image/cimg/clojure How can I make my build environment immutable and predictable? I don't want to deal with issues like this :)

glenjamin09:12:56

Use the full hash of the image

borkdude09:12:09

How can I see the previous hash of the image?

glenjamin09:12:28

Expand the setup step of the last green build

borkdude09:12:56

ok. small detail: the builds were always green until you run the binary on another machine which doesn't have this super new glibc this docker image suddenly has, so I only noticed it after release

glenjamin09:12:09

That’s harder then, you might have to download an image to see what’s on it

glenjamin09:12:32

Or maybe check the Ubuntu release notes for glibc

borkdude09:12:59

Ah I see:

$ docker run --rm -it cimg/clojure@sha256:8298383d7753a2305663403871c31f238c3c5f0200e13f2394e32d4598a9fdf2 ldd --version

borkdude09:12:04

ldd (Ubuntu GLIBC 2.31-0ubuntu9.7) 2.31

borkdude09:12:11

That's better, I'll downgrade to that one

👍 1
borkdude09:12:46

thanks for the help!