commit: 0d402a82fd38e399a0b8185734cd796d0215b5fc Author: Magnus Granberg <zorry <AT> gentoo <DOT> org> AuthorDate: Mon May 8 20:14:25 2023 +0000 Commit: Magnus Granberg <zorry <AT> gentoo <DOT> org> CommitDate: Mon May 8 20:14:25 2023 +0000 URL: https://gitweb.gentoo.org/proj/tinderbox-cluster.git/commit/?id=0d402a82
Use user buildbot for log image Signed-off-by: Magnus Granberg <zorry <AT> gentoo.org> docker/GentooBuildbotWorkerLog.Dockerfile | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/docker/GentooBuildbotWorkerLog.Dockerfile b/docker/GentooBuildbotWorkerLog.Dockerfile index a7c7af1..492be36 100644 --- a/docker/GentooBuildbotWorkerLog.Dockerfile +++ b/docker/GentooBuildbotWorkerLog.Dockerfile @@ -1,3 +1,6 @@ +# This docker file is use for the log parser and ebuild parser image +# Use stable arch and gentoo's experimental binhost + # name the portage image FROM gentoo/portage:latest as portage @@ -7,24 +10,27 @@ FROM gentoo/stage3:latest # copy the entire portage volume in COPY --from=portage /var/db/repos/gentoo /var/db/repos/gentoo -# Setup portage -# emerge needed deps buildbot-worker, psycopg, git and sqlalchemy -# get the needed buildbot-worker config +# Setup portage and emerge needed deps buildbot-worker, psycopg, git and sqlalchemy RUN echo -e "[binhost]\npriority = 9999\nsync-uri = https://gentoo.osuosl.org/experimental/amd64/binpkg/default/linux/17.1/x86-64/\n" | cat >> /etc/portage/binrepos.conf\ && echo 'EMERGE_DEFAULT_OPTS="--binpkg-respect-use=n --usepkg=y --getbinpkg=y --autounmask-write --autounmask-continue --autounmask-keep-keywords=y --autounmask-use=y"' | cat >> /etc/portage/make.conf\ && echo 'FEATURES="-ipc-sandbox -pid-sandbox -network-sandbox -usersandbox -mount-sandbox sandbox"' | cat >> /etc/portage/make.conf\ && echo 'FEATURES="${FEATURES} parallel-install parallel-fetch -merge-sync"' | cat >> /etc/portage/make.conf\ && echo 'FEATURES="${FEATURES} buildpkg"' | cat >> /etc/portage/make.conf\ && echo 'MAKEOPTS="-j8"' | cat >> /etc/portage/make.conf\ - && echo 'dev-vcs/git -webdev -gnome-keyring' | cat >> /etc/portage/package.use/git\ - && echo 'dev-util/buildbot-worker' | cat >> /etc/portage/package.accept_keywords/buildbot\ && echo 'dev-libs/glib' | cat >> /etc/portage/package.mask/git\ - && emerge -qv buildbot-worker sqlalchemy dev-python/psycopg rust-bin dev-vcs/git - #&& chown buildbot:buildbot /var/lib/buildbot_worker + && emerge -qv buildbot-worker sqlalchemy dev-python/psycopg:2 rust-bin dev-vcs/git + +# We don't need the gentoo repo any longer +RUN rm -R /var/db/repos/gentoo + +# run on buildbot user +RUN chown buildbot:buildbot /var/lib/buildbot_worker +USER buildbot -#FIXME: run worker as buildbot (git fail) -#USER buildbot WORKDIR /var/lib/buildbot_worker -RUN wget https://raw.githubusercontent.com/buildbot/buildbot/master/worker/docker/buildbot.tac +# Get the needed buildbot-worker config +# Change umask so portage can read the ebuilds in the repos +RUN wget https://raw.githubusercontent.com/buildbot/buildbot/master/worker/docker/buildbot.tac\ + && ( sed -i -e 's/umask = None/umask = 0o22/g' buildbot.tac 2>/dev/null || true ) ENTRYPOINT ["/usr/bin/buildbot-worker"] CMD ["start", "--nodaemon"]