diff --git a/bitnami/jenkins/2/debian-11/Dockerfile b/bitnami/jenkins/2/debian-11/Dockerfile index b91feb5466cf..6f101f61cd44 100644 --- a/bitnami/jenkins/2/debian-11/Dockerfile +++ b/bitnami/jenkins/2/debian-11/Dockerfile @@ -7,7 +7,7 @@ ENV HOME="/" \ ARG JAVA_EXTRA_SECURITY_DIR="/bitnami/java/extra-security" LABEL org.opencontainers.image.authors="https://bitnami.com/contact" \ org.opencontainers.image.description="Application packaged by Bitnami" \ - org.opencontainers.image.ref.name="2.346.3-debian-11-r3" \ + org.opencontainers.image.ref.name="2.346.3-debian-11-r4" \ org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/jenkins" \ org.opencontainers.image.title="jenkins" \ org.opencontainers.image.vendor="VMware, Inc." \ @@ -17,10 +17,34 @@ COPY prebuildfs / SHELL ["/bin/bash", "-o", "pipefail", "-c"] # Install required system packages and dependencies RUN install_packages acl ca-certificates curl fontconfig git gzip libc6 libfontconfig1 openssh-client procps tar unzip zlib1g -RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "render-template" "1.0.3-153" --checksum c1f2cdabdcc920512e8936ab2c8a033e1aeb97801fa026f0b12432581bf849ae -RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "java" "11.0.15-1-3" --checksum 7214b8ab81c9d919f87f027590ca80c198f65fe50c5e2886d8e5e20691aee8d7 -RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "gosu" "1.14.0-154" --checksum e36c3d90f4fbfbe989f40947fa7c8ab817f12fcf97d3aef893c753a20ce976ab -RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "jenkins" "2.346.3-2" --checksum 49bc87f7e77b08874fbc1185a08df21c6c6576211729f42c6dd1228ab784544a +RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ + if [ ! -f render-template-1.0.3-153-linux-amd64-debian-11.tar.gz ]; then \ + curl -SsLf https://downloads.bitnami.com/files/stacksmith/render-template-1.0.3-153-linux-amd64-debian-11.tar.gz -O ; \ + fi && \ + echo "c1f2cdabdcc920512e8936ab2c8a033e1aeb97801fa026f0b12432581bf849ae render-template-1.0.3-153-linux-amd64-debian-11.tar.gz" | sha256sum -c - && \ + tar -zxf render-template-1.0.3-153-linux-amd64-debian-11.tar.gz -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' && \ + rm -rf render-template-1.0.3-153-linux-amd64-debian-11.tar.gz +RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ + if [ ! -f java-11.0.15-1-3-linux-amd64-debian-11.tar.gz ]; then \ + curl -SsLf https://downloads.bitnami.com/files/stacksmith/java-11.0.15-1-3-linux-amd64-debian-11.tar.gz -O ; \ + fi && \ + echo "7214b8ab81c9d919f87f027590ca80c198f65fe50c5e2886d8e5e20691aee8d7 java-11.0.15-1-3-linux-amd64-debian-11.tar.gz" | sha256sum -c - && \ + tar -zxf java-11.0.15-1-3-linux-amd64-debian-11.tar.gz -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' && \ + rm -rf java-11.0.15-1-3-linux-amd64-debian-11.tar.gz +RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ + if [ ! -f gosu-1.14.0-154-linux-amd64-debian-11.tar.gz ]; then \ + curl -SsLf https://downloads.bitnami.com/files/stacksmith/gosu-1.14.0-154-linux-amd64-debian-11.tar.gz -O ; \ + fi && \ + echo "e36c3d90f4fbfbe989f40947fa7c8ab817f12fcf97d3aef893c753a20ce976ab gosu-1.14.0-154-linux-amd64-debian-11.tar.gz" | sha256sum -c - && \ + tar -zxf gosu-1.14.0-154-linux-amd64-debian-11.tar.gz -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' && \ + rm -rf gosu-1.14.0-154-linux-amd64-debian-11.tar.gz +RUN mkdir -p /tmp/bitnami/pkg/cache/ && cd /tmp/bitnami/pkg/cache/ && \ + if [ ! -f jenkins-2.346.3-3-linux-amd64-debian-11.tar.gz ]; then \ + curl -SsLf https://downloads.bitnami.com/files/stacksmith/jenkins-2.346.3-3-linux-amd64-debian-11.tar.gz -O ; \ + fi && \ + echo "2982be1fd525e16c1834d81fce96d47af22cd5d9d0c4bbc50abee19e7ac5badf jenkins-2.346.3-3-linux-amd64-debian-11.tar.gz" | sha256sum -c - && \ + tar -zxf jenkins-2.346.3-3-linux-amd64-debian-11.tar.gz -C /opt/bitnami --strip-components=2 --no-same-owner --wildcards '*/files' && \ + rm -rf jenkins-2.346.3-3-linux-amd64-debian-11.tar.gz RUN apt-get update && apt-get upgrade -y && \ rm -r /var/lib/apt/lists /var/cache/apt/archives RUN chmod g+rwX /opt/bitnami diff --git a/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json index 738dee2240f1..a3a1885d61c8 100644 --- a/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/.bitnami_components.json @@ -15,10 +15,10 @@ }, "jenkins": { "arch": "amd64", - "digest": "49bc87f7e77b08874fbc1185a08df21c6c6576211729f42c6dd1228ab784544a", + "digest": "2982be1fd525e16c1834d81fce96d47af22cd5d9d0c4bbc50abee19e7ac5badf", "distro": "debian-11", "type": "NAMI", - "version": "2.346.3-2" + "version": "2.346.3-3" }, "render-template": { "arch": "amd64", diff --git a/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/scripts/libcomponent.sh b/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/scripts/libcomponent.sh deleted file mode 100644 index a7b60696daa6..000000000000 --- a/bitnami/jenkins/2/debian-11/prebuildfs/opt/bitnami/scripts/libcomponent.sh +++ /dev/null @@ -1,65 +0,0 @@ -#!/bin/bash -# -# Library for managing Bitnami components - -# Constants -CACHE_ROOT="/tmp/bitnami/pkg/cache" -DOWNLOAD_URL="https://downloads.bitnami.com/files/stacksmith" - -# Functions - -######################## -# Download and unpack a Bitnami package -# Globals: -# OS_NAME -# OS_ARCH -# OS_FLAVOUR -# Arguments: -# $1 - component's name -# $2 - component's version -# Returns: -# None -######################### -component_unpack() { - local name="${1:?name is required}" - local version="${2:?version is required}" - local base_name="${name}-${version}-${OS_NAME}-${OS_ARCH}-${OS_FLAVOUR}" - local package_sha256="" - local directory="/opt/bitnami" - - # Validate arguments - shift 2 - while [ "$#" -gt 0 ]; do - case "$1" in - -c|--checksum) - shift - package_sha256="${1:?missing package checksum}" - ;; - *) - echo "Invalid command line flag $1" >&2 - return 1 - ;; - esac - shift - done - - echo "Downloading $base_name package" - if [ -f "${CACHE_ROOT}/${base_name}.tar.gz" ]; then - echo "${CACHE_ROOT}/${base_name}.tar.gz already exists, skipping download." - cp "${CACHE_ROOT}/${base_name}.tar.gz" . - rm "${CACHE_ROOT}/${base_name}.tar.gz" - if [ -f "${CACHE_ROOT}/${base_name}.tar.gz.sha256" ]; then - echo "Using the local sha256 from ${CACHE_ROOT}/${base_name}.tar.gz.sha256" - package_sha256="$(< "${CACHE_ROOT}/${base_name}.tar.gz.sha256")" - rm "${CACHE_ROOT}/${base_name}.tar.gz.sha256" - fi - else - curl --remote-name --silent --show-error --fail "${DOWNLOAD_URL}/${base_name}.tar.gz" - fi - if [ -n "$package_sha256" ]; then - echo "Verifying package integrity" - echo "$package_sha256 ${base_name}.tar.gz" | sha256sum --check - || return "$?" - fi - tar --directory "${directory}" --extract --gunzip --file "${base_name}.tar.gz" --no-same-owner --strip-components=2 || return "$?" - rm "${base_name}.tar.gz" -} diff --git a/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins-swarm.groovy.tpl b/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins-swarm.groovy.tpl index b3f3bbd269cf..20c06d0f06ab 100644 --- a/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins-swarm.groovy.tpl +++ b/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins-swarm.groovy.tpl @@ -70,12 +70,6 @@ strategy.add(hudson.model.Computer.CONNECT, new PermissionEntry(AuthorizationTyp strategy.add(hudson.model.Computer.CREATE, new PermissionEntry(AuthorizationType.USER, adminUsername)) strategy.add(hudson.model.Computer.DELETE, new PermissionEntry(AuthorizationType.USER, adminUsername)) strategy.add(hudson.model.Computer.DISCONNECT, new PermissionEntry(AuthorizationType.USER, adminUsername)) -// Credential Permissions -strategy.add(com.cloudbees.plugins.credentials.CredentialsProvider.CREATE, new PermissionEntry(AuthorizationType.USER, adminUsername)) -strategy.add(com.cloudbees.plugins.credentials.CredentialsProvider.DELETE, new PermissionEntry(AuthorizationType.USER, adminUsername)) -strategy.add(com.cloudbees.plugins.credentials.CredentialsProvider.MANAGE_DOMAINS, new PermissionEntry(AuthorizationType.USER, adminUsername)) -strategy.add(com.cloudbees.plugins.credentials.CredentialsProvider.UPDATE, new PermissionEntry(AuthorizationType.USER, adminUsername)) -strategy.add(com.cloudbees.plugins.credentials.CredentialsProvider.VIEW, new PermissionEntry(AuthorizationType.USER, adminUsername)) // Overall Permissions strategy.add(hudson.model.Hudson.ADMINISTER, new PermissionEntry(AuthorizationType.USER, adminUsername)) strategy.add(hudson.PluginManager.CONFIGURE_UPDATECENTER, new PermissionEntry(AuthorizationType.USER, adminUsername)) @@ -162,13 +156,6 @@ println " [bitnami/groovy-init-jenkins] Setting master executors to 0" jenkins.setNumExecutors(0); println " [bitnami/groovy-init-jenkins] master executors set" -// Setting email address -println " [bitnami/groovy-init-jenkins] Configuring Jenkins adminstrator email address" -location = jenkins.model.JenkinsLocationConfiguration.get() -location.setAdminAddress("{{JENKINS_EMAIL}}") -println " [bitnami/groovy-init-jenkins] Jenkins email is set to '{{JENKINS_EMAIL}}'" -location.save() - jenkins.save() // Complete wizard diff --git a/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins.groovy.tpl b/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins.groovy.tpl index 7058e0691751..3507419e0fa3 100644 --- a/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins.groovy.tpl +++ b/bitnami/jenkins/2/debian-11/rootfs/opt/bitnami/scripts/jenkins/bitnami-templates/init-jenkins.groovy.tpl @@ -46,13 +46,6 @@ println " [bitnami/groovy-init-jenkins] Setting master-slave security" jenkins.getInjector().getInstance(AdminWhitelistRule.class).setMasterKillSwitch(false); println " [bitnami/groovy-init-jenkins] master-slave security set" -// Setting email address -println " [bitnami/groovy-init-jenkins] Configuring Jenkins adminstrator email address" -location = jenkins.model.JenkinsLocationConfiguration.get() -location.setAdminAddress("{{JENKINS_EMAIL}}") -location.save() -println " [bitnami/groovy-init-jenkins] Jenkins email is set to '{{JENKINS_EMAIL}}'" - jenkins.save() // Complete wizard diff --git a/bitnami/jenkins/README.md b/bitnami/jenkins/README.md index 774b8d1daad2..e2b5f393773a 100644 --- a/bitnami/jenkins/README.md +++ b/bitnami/jenkins/README.md @@ -41,7 +41,7 @@ Non-root container images add an extra layer of security and are generally recom Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://docs.bitnami.com/tutorials/understand-rolling-tags-containers/). -* [`2`, `2-debian-11`, `2.346.3`, `2.346.3-debian-11-r3`, `latest` (2/debian-11/Dockerfile)](https://github.com/bitnami/containers/blob/main/bitnami/jenkins/2/debian-11/Dockerfile) +* [`2`, `2-debian-11`, `2.346.3`, `2.346.3-debian-11-r4`, `latest` (2/debian-11/Dockerfile)](https://github.com/bitnami/containers/blob/main/bitnami/jenkins/2/debian-11/Dockerfile) Subscribe to project updates by watching the [bitnami/containers GitHub repo](https://github.com/bitnami/containers).