diff --git a/lib/worker_multibuild.py b/lib/worker_multibuild.py index d889bae..a2c8df4 100644 --- a/lib/worker_multibuild.py +++ b/lib/worker_multibuild.py @@ -17,9 +17,13 @@ dockerfile_extra_contents['focal'] = """ # Buildbot RUN apt-get install -yq --no-install-suggests --no-install-recommends \ - buildbot-worker git subversion python3-dev libffi-dev python3-setuptools \ + git subversion python3-dev libffi-dev python3-setuptools \ python3-pip dumb-init curl openssh-client wget +RUN pip install --upgrade pip + +RUN pip install buildbot-worker + # buildbot entrypoint RUN wget -O /usr/local/bin/buildbot_entrypoint.sh https://git.bitmessage.org/Bitmessage/buildbot-scripts/raw/branch/master/docker/bionic/entrypoint.sh RUN chmod +x /usr/local/bin/buildbot_entrypoint.sh @@ -51,6 +55,48 @@ ENTRYPOINT /usr/local/bin/buildbot_entrypoint.sh "$BUILDMASTER" "$WORKERNAME" "$ """ +dockerfile_extra_contents['jammy'] = """ + +# Buildbot +RUN apt-get install -yq --no-install-suggests --no-install-recommends \ + git subversion python3-dev libffi-dev python3-setuptools \ + python3-pip dumb-init curl openssh-client wget + +RUN pip install --upgrade pip + +RUN pip install buildbot-worker + +# buildbot entrypoint +RUN wget -O /usr/local/bin/buildbot_entrypoint.sh https://git.bitmessage.org/Bitmessage/buildbot-scripts/raw/branch/master/docker/bionic/entrypoint.sh +RUN chmod +x /usr/local/bin/buildbot_entrypoint.sh + +RUN echo 'buildbot ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +USER buildbot + +ENTRYPOINT /usr/local/bin/buildbot_entrypoint.sh "$BUILDMASTER" "$WORKERNAME" "$WORKERPASS" + +""" + +dockerfile_extra_contents['xenial'] = """ + +# Buildbot +RUN apt-get install -yq --no-install-suggests --no-install-recommends \ + buildbot-slave git subversion python3-dev libffi-dev python3-setuptools \ + python3-pip dumb-init curl openssh-client wget \ + python-setuptools python-psutil libssl-dev python-dev libgmp-dev python-virtualenv + +# buildbot entrypoint +RUN wget -O /usr/local/bin/buildbot_entrypoint.sh https://git.bitmessage.org/Bitmessage/buildbot-scripts/raw/branch/master/docker/bionic/entrypoint.sh +RUN chmod +x /usr/local/bin/buildbot_entrypoint.sh + +RUN echo 'buildbot ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +USER buildbot + +ENTRYPOINT /usr/local/bin/buildbot_entrypoint.sh "$BUILDMASTER" "$WORKERNAME" "$WORKERPASS" + +""" def get_secret(): with open("multibuild_parent_key.key", 'r') as f: @@ -102,10 +148,11 @@ def _get_dockerfile_contents(dockerfile): Read contents of a Dockerfile and add buildbot worker bootstrap for a given os_codename """ - os_codename = 'bionic' + # os_codename = 'bionic' res = "" with open(dockerfile, "r") as file: contents = file.readlines() + os_codename = contents[1].split()[1].split(":")[1] has_from = False # accept any line containing FROM and RUN keywords res = ""