*** ssam2 has joined #baserock | 00:45 | |
*** ChanServ sets mode: +v ssam2 | 00:45 | |
*** ssam2 has quit IRC | 01:24 | |
*** franred has joined #baserock | 07:09 | |
*** paulwaters_ has joined #baserock | 08:26 | |
*** toscalix has joined #baserock | 08:27 | |
* paulsherwood is failing completely to understand what's happening in https://gitlab.com/baserock/ybd/issues/244 | 08:31 | |
paulsherwood | as you can see from https://gitlab.com/baserock/definitions/builds/9082604... | 08:32 |
---|---|---|
*** paulwaters_ has quit IRC | 08:33 | |
paulsherwood | 'env: /root/ybd/tmp/tmpZ_bnpe: No such file or directory' is reported, but at the point the command is executed, that's not true... | 08:33 |
paulsherwood | 12 -rwx------. 1 root root 5386 Jan 22 18:17 tmpZ_bnpe | 08:33 |
*** bfletcher has left #baserock | 08:36 | |
*** ctbruce has joined #baserock | 08:37 | |
*** rdale has joined #baserock | 08:59 | |
*** jonathanmaw has joined #baserock | 09:18 | |
rjek | paulsherwood: Are you sure that directory listing is of /root/ybd/tmp/ ? | 09:32 |
rjek | Also, try invoking env under strace so you can see what it's actually trying to do before producing the error | 09:32 |
*** tiagogomes has quit IRC | 09:33 | |
*** tiagogomes has joined #baserock | 09:50 | |
*** tiagogomes has quit IRC | 09:57 | |
paulsherwood | rjek: i'm sure it's that dir, yes. i've never used strace, sadly | 09:58 |
paulsherwood | anyway, i'm now thinking that the problen is the shebang in the extension... i expect python2 does not exist | 09:59 |
*** CTtpollard has joined #baserock | 10:06 | |
*** ssam2 has joined #baserock | 10:07 | |
*** ChanServ sets mode: +v ssam2 | 10:07 | |
paulsherwood | ok, it's not that... but https://gitlab.com/baserock/definitions/builds/9104501#down-build-trace | 10:07 |
paulsherwood | so the issue is that something required in the extension is not available in the docker image | 10:08 |
paulsherwood | definitely not a ybd issue | 10:08 |
*** tiagogomes has joined #baserock | 10:09 | |
paulsherwood | jjardon: ^^ | 10:09 |
jjardon | We only install what the ybd script install_dependencies.sh requires, so maybe there is something missing there? | 10:12 |
paulsherwood | hah | 10:13 |
rjek | paulsherwood: Ah, yes, the error may be confusing if the shebang points somewhere that is not executable, does not exist, or depends on shared libraries that are not available | 10:13 |
*** locallycompact has joined #baserock | 10:17 | |
jjardon | paulsherwood: the docker image and the build-system-x86_64-chroot has python2 | 10:18 |
jjardon | s/has/have | 10:18 |
paulsherwood | jjardon: ack. as i said above 'it's not that...' | 10:19 |
paulsherwood | i'm trying https://gitlab.com/baserock/definitions/builds/9105525 with some debug statements in the extension itself | 10:19 |
*** jude_ has quit IRC | 10:30 | |
*** jude_ has joined #baserock | 10:31 | |
*** leeming has quit IRC | 11:25 | |
*** leeming has joined #baserock | 11:29 | |
*** jude_ has quit IRC | 11:43 | |
*** jude_ has joined #baserock | 11:56 | |
*** edcragg has quit IRC | 12:08 | |
*** edcragg has joined #baserock | 12:10 | |
paulsherwood | so, it doesn't get into the extension - none of the debugs print out | 12:27 |
*** edcragg has quit IRC | 12:27 | |
paulsherwood | so.... changing the shebang to /bin/sh shows that the ybd part of this works. | 12:45 |
paulsherwood | which python gives /usr/local/bin/python, not /usr/bin/python... | 12:45 |
paulsherwood | jjardon: ^^ | 12:46 |
paulsherwood | https://gitlab.com/baserock/definitions/builds/9112592 | 12:46 |
jjardon | mmm, the extensions use the python version from the host or the one built as part of the base- system? | 12:56 |
jjardon | paulsherwood: ^ the one we build is being build with --prefix="$PREFIX" | 12:57 |
paulsherwood | i think it's the one built. anyway, i notice that some shebangs are already set as /usr/bin/env python... am trying that at https://gitlab.com/baserock/definitions/builds/9113959 | 13:00 |
paulsherwood | and, w00t :) | 13:08 |
paulsherwood | so, patch is to fix extensions to use whatever python is available | 13:09 |
persia | /usr/bin/env python doesn't promise a reliable python, so should be avoided for reproducibility | 13:10 |
persia | (yes, all the python docs say to use that ...) | 13:10 |
* paulsherwood has no idea what to do next | 13:13 | |
jjardon | yeah, I though about the env thing but what persia said ... I think we really need to fix definitions to install python in /usr, not /usr/local | 13:18 |
persia | Um, that's not important to what I said. I only said that if python is being executed, and you want bug-for-bug compatible bahviour to specific code, you need to know which python was run, which `/usr/bin/env python` doesn't achieve. No reason you can't use /usr/local/bin/python-mycustom-fork-with-4.0-support if you want. | 13:19 |
jjardon | sure, but the problem is that python should not be installed in /usr/local | 13:26 |
SotK | does this work outside of gitlab? | 13:27 |
SotK | I'm pretty sure the deployment extensions use the host python rather than the built python | 13:30 |
SotK | if it works elsewhere, I expect that the problem is that the docker image has python in /usr/local for whatever reason, rather than some weirdness in definitions/ybd | 13:32 |
*** gtristan has joined #baserock | 14:28 | |
*** edcragg has joined #baserock | 14:30 | |
*** gtristan has quit IRC | 14:33 | |
*** paulwaters_ has joined #baserock | 15:48 | |
jjardon | ah, that would make sense then! can anyone confirm what the extensions are meant to use?? | 15:55 |
jjardon | paulsherwood: what do you think about https://gitlab.com/baserock/ybd/merge_requests/287 | 15:56 |
SotK | we've always used host tools with them afaik | 15:57 |
ssam2 | indeed | 15:57 |
SotK | they need to be able to access files on the host system | 15:57 |
*** ctbruce has quit IRC | 15:57 | |
ssam2 | they also need to be the same architecture as the system doing the deployment | 15:58 |
ssam2 | and at least in the past we've wanted to be able to deploy e.g. an ARM system from an x86 machine | 15:58 |
ssam2 | the ARM Python binary inside the system being deployed would not be much use in that situation | 15:58 |
*** ctbruce has joined #baserock | 15:59 | |
*** paulwaters_ has quit IRC | 16:01 | |
*** jude_ has quit IRC | 16:15 | |
jjardon | ok, so seems a "problem" in the docker image then! | 16:16 |
SotK | can you just create a /usr/bin/python symlink before running the build? | 16:18 |
*** jude_ has joined #baserock | 16:37 | |
jjardon | yep, Im trying that | 16:37 |
jjardon | lets see | 16:37 |
paulsherwood | 16:16 < jjardon> ok, so seems a "problem" in the docker image then! | 16:49 |
* paulsherwood has been saying that for some time :) | 16:49 | |
jjardon | seems so, yes | 16:54 |
*** ctbruce has quit IRC | 16:55 | |
jjardon | paulsherwood: seems yaml module cannot be found now: https://gitlab.com/baserock/definitions/builds/9126952 | 16:57 |
jjardon | any idea why docker images install python in /usr/local ? | 16:57 |
ssam2 | which Docker images? | 16:58 |
paulsherwood | jjardon: no, but i suggest that we go with the /usr/bin/env python hack | 16:58 |
jjardon | ssam2: python2.7-slim from https://hub.docker.com/_/python/ | 16:59 |
jjardon | sorry, python:2.7-slim | 16:59 |
paulsherwood | ssam2: we switched to using python:2.7-slim docker image for ybd runners... but they appear to have python in an unexpected place | 17:00 |
ssam2 | right | 17:00 |
ssam2 | maybe use a better Docker image? :-) | 17:00 |
ssam2 | the Alpine Linux ones seem interesting | 17:00 |
jjardon | we would like one that already include python, so we save some time as we do not need to install it | 17:01 |
locallycompact | alpine is funny | 17:01 |
ssam2 | you can install Python once, then save that as a new Docker image | 17:01 |
jjardon | I know, but the idea was to use an available stock image, so I do not have to create docker images myself :) | 17:06 |
paulsherwood | jjardon: devcurmudgeon:foo is an available stock image :) | 17:07 |
* jjardon should create an image with baserock and put it in docker image some day | 17:08 | |
jjardon | paulsherwood: what are the contents of that? | 17:08 |
paulsherwood | this is all spurious though... unless/until we can do bit-for-bit comparisons, we have no good reason to trust any docker image | 17:08 |
paulsherwood | jjardon: i can't remember :) | 17:09 |
jjardon | paulsherwood: well, if you can reproduce it (even not bit-for-bit) with baserock is at least an improvement | 17:09 |
jjardon | paulsherwood: exactly :) | 17:09 |
paulsherwood | jjardon: yup | 17:11 |
paulsherwood | jjardon: there is a baserock docker image already | 17:12 |
paulsherwood | i did that years ago | 17:12 |
jjardon | paulsherwood: are you volunteering to update it?? :) | 17:12 |
paulsherwood | http://wiki.baserock.org/guides/docker/ | 17:13 |
paulsherwood | i suppose i could :) | 17:14 |
*** franred has quit IRC | 17:23 | |
*** ssam2 has quit IRC | 17:32 | |
*** ssam2 has joined #baserock | 17:32 | |
*** ChanServ sets mode: +v ssam2 | 17:32 | |
*** ssam2 has quit IRC | 17:38 | |
*** ssam2 has joined #baserock | 17:41 | |
*** ChanServ sets mode: +v ssam2 | 17:41 | |
jjardon | paulsherwood: ybd doesn't cound "max-jobs: 1" as part of the cache key calculation, right? Should we consider this a bug? | 17:48 |
*** jonathanmaw has quit IRC | 18:02 | |
paulsherwood | jjardon: it's not a bug in ybd. it's a bug that some upstreams can't be built at > 1 | 18:03 |
paulsherwood | there's no need to include max-jobs in the cache-key | 18:03 |
jjardon | yeah, agree | 18:04 |
jjardon | but | 18:04 |
jjardon | if I have definitions that are using "max-jobs: 1", and I remove it, the component will not be rebuilt | 18:06 |
paulsherwood | are you *sure*? | 18:06 |
* paulsherwood notes that if definitions have max-jobs: 1, it's because they didn't build reliably without it | 18:07 | |
jjardon | so it can happen that the build succed (because is taking the artifact from kbas), but if I rebuild everything from scratch it will fail | 18:07 |
jjardon | yeah, thats my point | 18:07 |
paulsherwood | erk | 18:11 |
* paulsherwood will check | 18:12 | |
*** ssam2 has quit IRC | 18:42 | |
*** locallycompact has quit IRC | 18:42 | |
*** jude_ has quit IRC | 18:44 | |
*** jude_ has joined #baserock | 19:03 | |
*** ctbruce has joined #baserock | 19:16 | |
*** toscalix has quit IRC | 19:36 | |
*** toscalix has joined #baserock | 19:36 | |
*** toscalix has quit IRC | 19:41 | |
*** paulwaters_ has joined #baserock | 20:21 | |
*** paulwaters_ has quit IRC | 20:22 | |
*** ctbruce has quit IRC | 22:00 | |
*** ctbruce has joined #baserock | 22:01 | |
*** jude_ has quit IRC | 22:22 | |
*** rdale has quit IRC | 22:40 | |
*** ctbruce has quit IRC | 23:14 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!