ci: nDPI build issue inside drone-run fedora:34 #1
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
nDPI builds fail on the
./configurestep with⇒ https://drone.dotya.ml/wanderer/fastnetmon-ng/51/3/4
what's curious is that:
fedora:34docker container under:⇒ https://drone.dotya.ml/wanderer/fastnetmon-ng/51/2/4
This has been at first misdiagnosed as an
nDPIissue.What has really been going on was that due to the nature of drone's atomic step execution, there was no knowledge preserved of the step before inside of the container running the step after (that's kind of the feature of the docker ephemeral pipelines with each step being run in a fresh container, could have thought of that...).
That is, at first deps were installed into the image (
fedora:34) required for building both nDPI and fastnetmon, then in the following steps they were to be utilised, naturally, but since they were installed in/bin, some configs in/etc, these were not preserved and a fresh image was used in the next step.A working solution appeared to be a little ugly - telling drone to preserve the whole
/usrdirectory (of which/bin--->/usr/binis a part of) as a temporary "cache" volume and mounting that into every pipeline step that required it.This still wasn't enough since we installed both
lldandbinutilspackages, both coming with a linked. Programs, however, expect to find just/bin/ldand in case of multiple linkers installed, on fedora this is transparently managed bydnf(the package manager) that symlinks one of the linkers to its expected place (/bin/ld)...from/etc/alternatives...whatever.To come around this issue,
/etchas also had to be mounted as a "cache" volume in pipeline steps that required a linker.⇒ https://git.dotya.ml/wanderer/fastnetmon-ng/src/branch/cmakelists-pimp-up/.drone.yml#L178-L182
First successful build since introducing the above mentioned approach:
⇒ https://drone.dotya.ml/wanderer/fastnetmon-ng/89/3/3
Commit fixing this:
⇒
8dd5fdabe4