Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update redmine #16017

Merged
merged 1 commit into from Jan 8, 2024
Merged

Update redmine #16017

merged 1 commit into from Jan 8, 2024

Conversation

tianon
Copy link
Member

@tianon tianon commented Jan 8, 2024

Changes:

Changes:

- docker-library/redmine@0b2d09d: Merge pull request docker-library/redmine#311 from infosiftr/mips
- docker-library/redmine@9f8737b: fix nokogiri install on mips64le by using system libraries instead of gem-provided ones
- docker-library/redmine@27ae7a1: install gosu from github to fix crash on mips64le
Copy link

github-actions bot commented Jan 8, 2024

Diff for 1bc49a9:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index d37f21f..504cf53 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -3,7 +3,7 @@ GitRepo: https://github.com/docker-library/redmine.git
 
 Tags: 5.0.7, 5.0, 5.0.7-bookworm, 5.0-bookworm
 Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 739992185fb35540b8a598b867beb54d6b7c4065
+GitCommit: 9f8737bd02cab294935e8ef8521ae51bfad9aee8
 Directory: 5.0/bookworm
 
 Tags: 5.0.7-alpine3.18, 5.0-alpine3.18, 5.0.7-alpine, 5.0-alpine
@@ -13,7 +13,7 @@ Directory: 5.0/alpine3.18
 
 Tags: 5.1.1, 5.1, 5, latest, 5.1.1-bookworm, 5.1-bookworm, 5-bookworm, bookworm
 Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 739992185fb35540b8a598b867beb54d6b7c4065
+GitCommit: 9f8737bd02cab294935e8ef8521ae51bfad9aee8
 Directory: 5.1/bookworm
 
 Tags: 5.1.1-alpine3.18, 5.1-alpine3.18, 5-alpine3.18, alpine3.18, 5.1.1-alpine, 5.1-alpine, 5-alpine, alpine
diff --git a/redmine_5.0-bookworm/Dockerfile b/redmine_5.0-bookworm/Dockerfile
index 92aeef1..61d882e 100644
--- a/redmine_5.0-bookworm/Dockerfile
+++ b/redmine_5.0-bookworm/Dockerfile
@@ -28,8 +28,6 @@ RUN set -eux; \
 		ghostscript \
 		gsfonts \
 		imagemagick \
-# grab gosu for easy step-down from root
-		gosu \
 # grab tini for signal processing and zombie killing
 		tini \
 	; \
@@ -37,6 +35,36 @@ RUN set -eux; \
 	sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml; \
 	rm -rf /var/lib/apt/lists/*
 
+# grab gosu for easy step-down from root
+ENV GOSU_VERSION 1.17
+RUN set -eux; \
+	\
+	savedAptMark="$(apt-mark showmanual)"; \
+	apt-get update; \
+	apt-get install -y --no-install-recommends \
+		gnupg \
+	; \
+	rm -rf /var/lib/apt/lists/*; \
+	\
+	dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; \
+	wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; \
+	wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; \
+	export GNUPGHOME="$(mktemp -d)"; \
+	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; \
+	gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; \
+	gpgconf --kill all; \
+	rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; \
+	\
+	apt-mark auto '.*' > /dev/null; \
+	apt-mark manual $savedAptMark > /dev/null; \
+	apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
+	\
+# smoke test
+	chmod +x /usr/local/bin/gosu; \
+	gosu --version; \
+	gosu nobody true
+
+
 ENV RAILS_ENV production
 WORKDIR /usr/src/redmine
 
@@ -77,6 +105,8 @@ RUN set -eux; \
 		gcc \
 		libpq-dev \
 		libsqlite3-dev \
+		libxml2-dev \
+		libxslt-dev \
 		make \
 		patch \
 		pkgconf \
@@ -96,6 +126,8 @@ RUN set -eux; \
 		echo "$adapter:" >> ./config/database.yml; \
 		echo "  adapter: $adapter" >> ./config/database.yml; \
 	done; \
+# nokogiri's vendored libxml2 + libxslt do not build on mips64le, so use the apt packages when building
+	gosu redmine bundle config build.nokogiri --use-system-libraries; \
 	gosu redmine bundle install --jobs "$(nproc)"; \
 	rm ./config/database.yml; \
 # fix permissions for running as an arbitrary user
diff --git a/redmine_bookworm/Dockerfile b/redmine_bookworm/Dockerfile
index 6805df6..539e958 100644
--- a/redmine_bookworm/Dockerfile
+++ b/redmine_bookworm/Dockerfile
@@ -28,8 +28,6 @@ RUN set -eux; \
 		ghostscript \
 		gsfonts \
 		imagemagick \
-# grab gosu for easy step-down from root
-		gosu \
 # grab tini for signal processing and zombie killing
 		tini \
 	; \
@@ -37,6 +35,36 @@ RUN set -eux; \
 	sed -ri 's/(rights)="none" (pattern="PDF")/\1="read" \2/' /etc/ImageMagick-6/policy.xml; \
 	rm -rf /var/lib/apt/lists/*
 
+# grab gosu for easy step-down from root
+ENV GOSU_VERSION 1.17
+RUN set -eux; \
+	\
+	savedAptMark="$(apt-mark showmanual)"; \
+	apt-get update; \
+	apt-get install -y --no-install-recommends \
+		gnupg \
+	; \
+	rm -rf /var/lib/apt/lists/*; \
+	\
+	dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; \
+	wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; \
+	wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; \
+	export GNUPGHOME="$(mktemp -d)"; \
+	gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; \
+	gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; \
+	gpgconf --kill all; \
+	rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; \
+	\
+	apt-mark auto '.*' > /dev/null; \
+	apt-mark manual $savedAptMark > /dev/null; \
+	apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
+	\
+# smoke test
+	chmod +x /usr/local/bin/gosu; \
+	gosu --version; \
+	gosu nobody true
+
+
 ENV RAILS_ENV production
 WORKDIR /usr/src/redmine
 
@@ -77,6 +105,8 @@ RUN set -eux; \
 		gcc \
 		libpq-dev \
 		libsqlite3-dev \
+		libxml2-dev \
+		libxslt-dev \
 		make \
 		patch \
 		pkgconf \
@@ -96,6 +126,8 @@ RUN set -eux; \
 		echo "$adapter:" >> ./config/database.yml; \
 		echo "  adapter: $adapter" >> ./config/database.yml; \
 	done; \
+# nokogiri's vendored libxml2 + libxslt do not build on mips64le, so use the apt packages when building
+	gosu redmine bundle config build.nokogiri --use-system-libraries; \
 	gosu redmine bundle install --jobs "$(nproc)"; \
 	rm ./config/database.yml; \
 # fix permissions for running as an arbitrary user

Relevant Maintainers:

@yosifkit yosifkit merged commit 985197f into docker-library:master Jan 8, 2024
9 checks passed
@yosifkit yosifkit deleted the redmine branch January 8, 2024 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants