application-dex-auth: 12:24:02 ERROR juju.worker.caasoperator exited "dex-auth/1": executing operation "remote init": caas-unit-init for unit "dex-auth/6" with command: "/var/lib/juju/tools/jujud caas-unit-init --unit unit-dex-auth-6 --charm-dir /tmp/unit-dex-auth-6215732929/charm --upgrade" failed: sh: /var/lib/juju/tools/jujud: not found
I exec'ed into the dex-auth pod, and that file exists. However, trying to run it similarly fails with the "not found" error from sh.
After poking around a bit, I believe this is due to Alpine linux using musl, and Ubuntu using glibc. I ran "ldd /var/lib/juju/tools/jujud" and got this line:
/lib64/ld-linux-x86-64.so.2 (0x7f3ba0a74000)
That file doesn't exist on alpine linux, instead there's a /lib/ld-musl-x86_64.so.1 file.
I was able to install a compatibility layer with "apk add libc6-compat" and it got further, but still errored out:
# ./jujud
Error relocating ./jujud: __vfprintf_chk: symbol not found
Error relocating ./jujud: __fprintf_chk: symbol not found
Which is the same error messages that ldd prints out. This is probably due to different versions of libc in play.
I think this points at the underlying issue:
application -dex-auth: 12:24:02 ERROR juju.worker. caasoperator exited "dex-auth/1": executing operation "remote init": caas-unit-init for unit "dex-auth/6" with command: "/var/lib/ juju/tools/ jujud caas-unit-init --unit unit-dex-auth-6 --charm-dir /tmp/unit- dex-auth- 6215732929/ charm --upgrade" failed: sh: /var/lib/ juju/tools/ jujud: not found
I exec'ed into the dex-auth pod, and that file exists. However, trying to run it similarly fails with the "not found" error from sh.
After poking around a bit, I believe this is due to Alpine linux using musl, and Ubuntu using glibc. I ran "ldd /var/lib/ juju/tools/ jujud" and got this line:
/lib64/ ld-linux- x86-64. so.2 (0x7f3ba0a74000)
That file doesn't exist on alpine linux, instead there's a /lib/ld- musl-x86_ 64.so.1 file.
I was able to install a compatibility layer with "apk add libc6-compat" and it got further, but still errored out:
# ./jujud
Error relocating ./jujud: __vfprintf_chk: symbol not found
Error relocating ./jujud: __fprintf_chk: symbol not found
Which is the same error messages that ldd prints out. This is probably due to different versions of libc in play.