[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: 8d645de922bf12cea3c53a1ffb608682c31643a9 Author: pastalian gmail com> AuthorDate: Sat May 18 05:59:56 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun May 26 16:18:44 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=8d645de9 Rename systemd-mergedusr to systemd 23.0 profile renamed the old systemd-mergedusr profile to systemd. Image builds has been failing for some time because of this change. https://www.gentoo.org/support/news-items/2024-03-22-new-23-profiles.html Signed-off-by: Takuya Wakazono gmail.com> Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 30 +++--- README.md | 34 +- deploy.sh | 4 ++-- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c2bc5dd..d0e22e8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,41 +21,41 @@ jobs: - stage3-amd64-musl - stage3-amd64-musl-hardened - stage3-amd64-nomultilib-openrc - - stage3-amd64-nomultilib-systemd-mergedusr + - stage3-amd64-nomultilib-systemd - stage3-amd64-openrc - stage3-amd64-desktop-openrc - - stage3-amd64-systemd-mergedusr - - stage3-amd64-desktop-systemd-mergedusr + - stage3-amd64-systemd + - stage3-amd64-desktop-systemd - stage3-armv5tel-openrc - - stage3-armv5tel-systemd-mergedusr + - stage3-armv5tel-systemd - stage3-armv6j-openrc - - stage3-armv6j-systemd-mergedusr + - stage3-armv6j-systemd - stage3-armv6j_hardfp-openrc - - stage3-armv6j_hardfp-systemd-mergedusr + - stage3-armv6j_hardfp-systemd - stage3-armv7a-openrc - - stage3-armv7a-systemd-mergedusr + - stage3-armv7a-systemd - stage3-armv7a_hardfp_musl-openrc - stage3-armv7a_hardfp-openrc - - stage3-armv7a_hardfp-systemd-mergedusr + - stage3-armv7a_hardfp-systemd - stage3-arm64-desktop-openrc - - stage3-arm64-desktop-systemd-mergedusr + - stage3-arm64-desktop-systemd - stage3-arm64-musl - stage3-arm64-musl-hardened - stage3-arm64-openrc - - stage3-arm64-systemd-mergedusr + - stage3-arm64-systemd - stage3-i686-hardened-openrc - stage3-i686-musl - stage3-i686-openrc - - stage3-i686-systemd-mergedusr + - stage3-i686-systemd - stage3-ppc64le-musl-hardened-openrc - stage3-ppc64le-openrc - - stage3-ppc64le-systemd-mergedusr + - stage3-ppc64le-systemd - stage3-rv64_lp64-openrc - - stage3-rv64_lp64-systemd-mergedusr + - stage3-rv64_lp64-systemd - stage3-rv64_lp64d-openrc - - stage3-rv64_lp64d-systemd-mergedusr + - stage3-rv64_lp64d-systemd - stage3-s390x-openrc - - stage3-s390x-systemd-mergedusr + - stage3-s390x-systemd name: ${{ matrix.target }} runs-on: ubuntu-latest steps: diff --git a/README.md b/README.md index 2ef6a80..dcee7ce 100644 --- a/README.md +++ b/README.md @@ -23,46 +23,46 @@ The following targets are built and pushed to Docker Hub: * `stage3-amd64-musl` * `stage3-amd64-musl-hardened` * `stage3-amd64-nomultilib-openrc` - * `stage3-amd64-nomultilib-systemd-mergedusr` + * `stage3-amd64-nomultilib-systemd` * `stage3-amd64-openrc` * `stage3-amd64-desktop-openrc` - * `stage3-amd64-systemd-mergedusr` - * `stage3-amd64-desktop-systemd-mergedusr` + * `stage3-amd64-systemd` + * `stage3-amd64-desktop-systemd` * `arm` * `stage3-armv5tel-openrc` - * `stage3-armv5tel-systemd-mergedusr` + * `stage3-armv5tel-systemd` * `stage3-armv6j-openrc` - * `stage3-armv6j-systemd-mergedusr` + * `stage3-armv6j-systemd` * `stage3-armv6j_hardfp-openrc` - * `stage3-armv6j_hardfp-systemd-mergedusr` + * `stage3-armv6j_hardfp-systemd` * `stage3-armv7a-openrc` - * `stage3-armv7a-systemd-mergedusr` + * `stage3-armv7a-systemd` * `stage3-armv7a_hardfp_musl-openrc` * `stage3-armv7a_hardfp-openrc` - * `stage3-armv7a_hardfp-systemd-mergedusr` + * `stage3-armv7a_hardfp-systemd` * `arm64` * `stage3-arm64-desktop-openrc` - * `stage3-arm64-desktop-systemd-mergedusr` + * `stage3-arm64-desktop-systemd` * `stage3-arm64-musl` * `stage3-arm64-musl-hardened` * `stage3-arm64-openrc` - * `stage3-arm64-systemd-mergedusr` + * `stage3-arm64-systemd` * `ppc` * `stage3-ppc64le-musl-hardened-openrc` * `stage3-ppc64le-openrc` - * `stage3-ppc64le-systemd-mergedusr` + * `stage3-ppc64le-systemd` * `riscv`
[gentoo-commits] proj/docker-images:master commit in: /
commit: 0cab53490d21558b2b2188a8cd28e39422f6d05d Author: pastalian gmail com> AuthorDate: Sat May 18 06:16:08 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun May 26 16:18:44 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=0cab5349 Fix the example build command `stage3-amd64` is not a correct target and the build fails. Signed-off-by: Takuya Wakazono gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/140 Signed-off-by: John Helmert III gentoo.org> README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index dcee7ce..171e3aa 100644 --- a/README.md +++ b/README.md @@ -117,7 +117,7 @@ The following upstream stage3 targets are not built at all: The containers are created using a multi-stage build, which requires Docker >= 19.03.0. The container being built is defined by the TARGET environment variable: -`` TARGET=stage3-amd64 ./build.sh `` +`` TARGET=stage3-amd64-openrc ./build.sh `` # Using the portage container as a data volume
[gentoo-commits] proj/docker-images:master commit in: /
commit: 9d8b571948f9cf810282a7c95b6023e33bf5cc75 Author: Michał Górny gentoo org> AuthorDate: Sun May 26 14:04:57 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun May 26 14:27:14 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=9d8b5719 python.Dockerfile: Include python:3.13 Signed-off-by: Michał Górny gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/141 Signed-off-by: John Helmert III gentoo.org> python.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python.Dockerfile b/python.Dockerfile index 7d93383..a5d9bf4 100644 --- a/python.Dockerfile +++ b/python.Dockerfile @@ -21,7 +21,7 @@ RUN <<-EOF # main job emerge -1vnt --jobs dev-python/tox app-arch/lzip dev-vcs/git \ dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite dev-libs/mpdecimal -emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12} \ +emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12,3.13} \ dev-python/pypy{,3_9,3_10,3} # cleanup
[gentoo-commits] proj/docker-images:master commit in: /
commit: a7c2121202dd44e3df4f25307ac5f072bbe254ad Author: Michał Górny gentoo org> AuthorDate: Sun May 26 14:04:26 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun May 26 14:27:14 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=a7c21212 python.Dockerfile: pull dev-libs/mpdecimal dep Signed-off-by: Michał Górny gentoo.org> Signed-off-by: John Helmert III gentoo.org> python.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python.Dockerfile b/python.Dockerfile index b0a5bd3..7d93383 100644 --- a/python.Dockerfile +++ b/python.Dockerfile @@ -20,7 +20,7 @@ RUN <<-EOF # main job emerge -1vnt --jobs dev-python/tox app-arch/lzip dev-vcs/git \ -dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite +dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite dev-libs/mpdecimal emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12} \ dev-python/pypy{,3_9,3_10,3}
[gentoo-commits] proj/docker-images:master commit in: /
commit: b34b40552fb2c632908967b55bc6972068565fd7 Author: Rahil Bhimjiani rahil rocks> AuthorDate: Tue Feb 27 16:31:26 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun Mar 3 04:22:48 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=b34b4055 python.Dockerfile: use HEREDOC syntax for RUN command HEREDOC syntax is supported in docker https://docs.docker.com/reference/dockerfile/#here-documents Why: 1) better readability 2) ability to add comments 3) can treat it like another bash script Signed-off-by: Rahil Bhimjiani rahil.rocks> Signed-off-by: John Helmert III gentoo.org> python.Dockerfile | 35 +-- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/python.Dockerfile b/python.Dockerfile index 7b61532..b0a5bd3 100644 --- a/python.Dockerfile +++ b/python.Dockerfile @@ -1,16 +1,31 @@ +# syntax=docker/dockerfile:1 + +# FIRST LINE IS VERY IMPORTANT. DO NOT MODIFY + FROM gentoo/stage3:amd64-nomultilib-openrc # derived from https://github.com/projg2/gentoo-python-image/blob/master/Dockerfile -RUN echo '*/* ~amd64' >> /etc/portage/package.accept_keywords/base.conf \ - && echo '*/* full-stdlib sqlite' >> /etc/portage/package.use/python \ - && echo 'dev-vcs/git -perl' >> /etc/portage/package.use/git \ - && wget --progress=dot:mega -O - https://github.com/gentoo-mirror/gentoo/archive/master.tar.gz | tar -xz \ - && mv gentoo-master /var/db/repos/gentoo \ - && emerge -1vnt --jobs dev-python/tox app-arch/lzip dev-vcs/git \ -dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite \ - && emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12} \ -dev-python/pypy{,3_9,3_10,3} \ - && rm -r /var/db/repos/* /var/cache/distfiles/* +RUN <<-EOF +set -e + +# configure portage +echo '*/* ~amd64' >> /etc/portage/package.accept_keywords/base.conf +echo '*/* full-stdlib sqlite' >> /etc/portage/package.use/python +echo 'dev-vcs/git -perl' >> /etc/portage/package.use/git + +# install ::gentoo +wget --progress=dot:mega -O - https://github.com/gentoo-mirror/gentoo/archive/master.tar.gz | tar -xz +mv gentoo-master /var/db/repos/gentoo + +# main job +emerge -1vnt --jobs dev-python/tox app-arch/lzip dev-vcs/git \ +dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite +emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12} \ +dev-python/pypy{,3_9,3_10,3} + +# cleanup +rm -r /var/db/repos/* /var/cache/distfiles/* +EOF CMD ["/bin/bash"]
[gentoo-commits] proj/docker-images:master commit in: /
commit: 41303173bdf08e407fb2c39b173efaf6c33051df Author: Rahil Bhimjiani rahil rocks> AuthorDate: Tue Feb 27 16:26:11 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun Mar 3 04:22:46 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=41303173 stage3.Dockerfile: use HEREDOC syntax for RUN command HEREDOC syntax is supported in docker https://docs.docker.com/reference/dockerfile/#here-documents Why: 1) better readability 2) ability to add comments 3) can use HEREDOC in RUN command itself (i.e. configuring ~/.gnupg/dirmngr.conf) 4) by using modern syntax, we can't be labelled as "conservative"[1] [1] https://github.com/systemd/systemd/pull/31424#issuecomment-1956318843 Signed-off-by: Rahil Bhimjiani rahil.rocks> Signed-off-by: John Helmert III gentoo.org> stage3.Dockerfile | 57 +-- 1 file changed, 39 insertions(+), 18 deletions(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 2aeb250..21235de 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -1,3 +1,7 @@ +# syntax=docker/dockerfile:1 + +# FIRST LINE IS VERY IMPORTANT. DO NOT MODIFY + # This Dockerfile creates a gentoo stage3 container image. By default it # creates a stage3-amd64 image. It utilizes a multi-stage build and requires # docker-17.05.0 or later. It fetches a daily snapshot from the official @@ -14,24 +18,41 @@ ARG SUFFIX ARG DIST="https://ftp-osl.osuosl.org/pub/gentoo/releases/${ARCH}/autobuilds; ARG SIGNING_KEY="0xBB572E0E2D182910" -RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${DIST}" \ - && apk --no-cache add ca-certificates gnupg tar wget xz \ - && gpg --list-keys \ - && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ - && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ - && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} || \ - gpg --auto-key-locate=clear,nodefault,wkd --locate-key rel...@gentoo.org \ - && wget -q "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" \ - && gpg --verify "latest-stage3-${MICROARCH}${SUFFIX}.txt" \ - && STAGE3PATH="$(sed -n '6p' "latest-stage3-${MICROARCH}${SUFFIX}.txt" | cut -f 1 -d ' ')" \ - && echo "STAGE3PATH:" ${STAGE3PATH} \ - && STAGE3="$(basename ${STAGE3PATH})" \ - && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.asc" \ - && gpg --verify "${STAGE3}.asc" \ - && tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner \ - && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \ - && echo 'UTC' > etc/timezone \ - && rm ${STAGE3}.asc ${STAGE3}.CONTENTS.gz ${STAGE3} +RUN <<-EOF +set -e + +echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${DIST}" + +apk --no-cache add ca-certificates gnupg tar wget xz + +# setup GPG +gpg --list-keys +# make sure to have in following heredoc +# https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_07_04 + cat <<-GPG >> ~/.gnupg/dirmngr.conf + honor-http-proxy + disable-ipv6 + GPG +gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} || \ + gpg --auto-key-locate=clear,nodefault,wkd --locate-key rel...@gentoo.org + +# obtain and extract stage3 +wget -q "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" +gpg --verify "latest-stage3-${MICROARCH}${SUFFIX}.txt" +STAGE3PATH="$(sed -n '6p' "latest-stage3-${MICROARCH}${SUFFIX}.txt" | cut -f 1 -d ' ')" +echo "STAGE3PATH:" ${STAGE3PATH} +STAGE3="$(basename ${STAGE3PATH})" +wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.asc" +gpg --verify "${STAGE3}.asc" +tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner + +# modify stage3 +( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) +echo 'UTC' > etc/timezone + +# cleanup +rm ${STAGE3}.asc ${STAGE3}.CONTENTS.gz ${STAGE3} +EOF FROM scratch
[gentoo-commits] proj/docker-images:master commit in: /
commit: ee2fbe2c8354887ff90dd908bc87964bc85f6e9f Author: Rahil Bhimjiani rahil rocks> AuthorDate: Tue Feb 27 16:34:06 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun Mar 3 04:22:48 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=ee2fbe2c portage.Dockerfile: use HEREDOC syntax for RUN command HEREDOC syntax is supported in docker https://docs.docker.com/reference/dockerfile/#here-documents Why: 1) better readability 2) ability to add comments 3) can use HEREDOC in RUN command itself (i.e. configuring ~/.gnupg/dirmngr.conf) What else changed: 1) added fallback method to retrieve gpg keys using wkd Signed-off-by: Rahil Bhimjiani rahil.rocks> Closes: https://github.com/gentoo/gentoo-docker-images/pull/139 Signed-off-by: John Helmert III gentoo.org> portage.Dockerfile | 39 +++ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/portage.Dockerfile b/portage.Dockerfile index deb7969..01aa307 100644 --- a/portage.Dockerfile +++ b/portage.Dockerfile @@ -1,3 +1,7 @@ +# syntax=docker/dockerfile:1 + +# FIRST LINE IS VERY IMPORTANT. DO NOT MODIFY + # This Dockerfile creates a portage snapshot that can be mounted as a # container volume. It utilizes a multi-stage build and requires # docker-17.05.0 or later. It fetches a daily snapshot from the official @@ -11,18 +15,29 @@ ARG SNAPSHOT="portage-latest.tar.xz" ARG DIST="https://ftp-osl.osuosl.org/pub/gentoo/snapshots; ARG SIGNING_KEY="0xEC590EEAC9189250" -RUN apk add --no-cache ca-certificates gnupg tar wget xz \ - && wget -q "${DIST}/${SNAPSHOT}" "${DIST}/${SNAPSHOT}.gpgsig" "${DIST}/${SNAPSHOT}.md5sum" \ - && gpg --list-keys \ - && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ - && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ - && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ - && gpg --verify "${SNAPSHOT}.gpgsig" "${SNAPSHOT}" \ - && md5sum -c ${SNAPSHOT}.md5sum \ - && mkdir -p var/db/repos var/cache/binpkgs var/cache/distfiles \ - && tar xJpf ${SNAPSHOT} -C var/db/repos \ - && mv var/db/repos/portage var/db/repos/gentoo \ - && rm ${SNAPSHOT} ${SNAPSHOT}.gpgsig ${SNAPSHOT}.md5sum +RUN <<-EOF +set -e + +apk add --no-cache ca-certificates gnupg tar wget xz +wget -q "${DIST}/${SNAPSHOT}" "${DIST}/${SNAPSHOT}.gpgsig" "${DIST}/${SNAPSHOT}.md5sum" + +# setup GPG +gpg --list-keys +# make sure to have in following heredoc +# https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_07_04 +cat <<-GPG >> ~/.gnupg/dirmngr.conf + honor-http-proxy + disable-ipv6 + GPG +gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} || \ + gpg --auto-key-locate=clear,nodefault,wkd --locate-key infrastruct...@gentoo.org +gpg --verify "${SNAPSHOT}.gpgsig" "${SNAPSHOT}" +md5sum -c ${SNAPSHOT}.md5sum +mkdir -p var/db/repos var/cache/binpkgs var/cache/distfiles +tar xJpf ${SNAPSHOT} -C var/db/repos +mv var/db/repos/portage var/db/repos/gentoo +rm ${SNAPSHOT} ${SNAPSHOT}.gpgsig ${SNAPSHOT}.md5sum +EOF FROM busybox:latest
[gentoo-commits] proj/docker-images:master commit in: /
commit: 3071064e1d28f1b7056ca9afb51dcc6f01f36bde Author: Sam James gentoo org> AuthorDate: Sun Feb 18 02:12:30 2024 + Commit: John Helmert III gentoo org> CommitDate: Sun Feb 18 17:11:57 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=3071064e stage3.Dockerfile: try harder to find releng's gpg key On a recent build action, we got: ``` 1.106 gpg: directory '/root/.gnupg' created 1.107 gpg: /root/.gnupg/trustdb.gpg: trustdb created 64.28 gpg: keyserver receive failed: Operation timed out ``` Try to use gpg --auto-key-locate=clear,nodefault,wkd --locate-key releng gentoo.org like we do in the handbook as a fallback. Signed-off-by: Sam James gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/138 Signed-off-by: John Helmert III gentoo.org> stage3.Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 3289fcf..2aeb250 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -19,7 +19,8 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && gpg --list-keys \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ - && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ + && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} || \ + gpg --auto-key-locate=clear,nodefault,wkd --locate-key rel...@gentoo.org \ && wget -q "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" \ && gpg --verify "latest-stage3-${MICROARCH}${SUFFIX}.txt" \ && STAGE3PATH="$(sed -n '6p' "latest-stage3-${MICROARCH}${SUFFIX}.txt" | cut -f 1 -d ' ')" \
[gentoo-commits] proj/docker-images:master commit in: .github/actions/container_build/
commit: 6f21df87717f8a871b4ae292faff107bde9d214d Author: John Helmert III gentoo org> AuthorDate: Thu Feb 8 04:59:57 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 05:21:07 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=6f21df87 actions: limit pushes to master branch We don't want these steps to run on branches in this repository, even if they're in a pull request to the master branch. We only want pushes to happen from the master branch. Closes: !137 Signed-off-by: John Helmert III gentoo.org> .github/actions/container_build/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/container_build/action.yml b/.github/actions/container_build/action.yml index f4f2378..fc2b9b9 100644 --- a/.github/actions/container_build/action.yml +++ b/.github/actions/container_build/action.yml @@ -35,14 +35,14 @@ runs: - name: Login to DockerHub uses: docker/login-action@v2 if: | -github.repository_owner == 'gentoo' && +github.ref_name == 'master' && github.repository_owner == 'gentoo' && (github.event_name == 'schedule' || github.event_name == 'push') with: username: ${{ inputs.dockerhub_username }} password: ${{ inputs.dockerhub_password }} - name: Push image if: | -github.repository_owner == 'gentoo' && +github.ref_name == 'master' && github.repository_owner == 'gentoo' && (github.event_name == 'schedule' || github.event_name == 'push') shell: bash env:
[gentoo-commits] proj/docker-images:master commit in: .github/actions/container_build/
commit: 9b60a58e6b78d12d82afe857b8bb9649176542b8 Author: John Helmert III gentoo org> AuthorDate: Thu Feb 8 04:34:52 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 04:48:02 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=9b60a58e actions: also push to Dockerhub on push Limiting Dockerhub pushes to "scheduled" Actions runs was intended to prevent these bits from running in PRs, but we also want changes to be applied for regular pushes to the repository, so we allow 'push'. To avoid this failing in forks without the requisite secrets, we also limit these to repositories in Gentoo's namespace. Signed-off-by: John Helmert III gentoo.org> .github/actions/container_build/action.yml | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/actions/container_build/action.yml b/.github/actions/container_build/action.yml index bef1441..f4f2378 100644 --- a/.github/actions/container_build/action.yml +++ b/.github/actions/container_build/action.yml @@ -34,12 +34,16 @@ runs: run: docker run --rm "${ORG}/${TARGET/-/:}" emerge --info - name: Login to DockerHub uses: docker/login-action@v2 - if: github.event_name == 'schedule' + if: | +github.repository_owner == 'gentoo' && +(github.event_name == 'schedule' || github.event_name == 'push') with: username: ${{ inputs.dockerhub_username }} password: ${{ inputs.dockerhub_password }} - name: Push image - if: github.event_name == 'schedule' + if: | +github.repository_owner == 'gentoo' && +(github.event_name == 'schedule' || github.event_name == 'push') shell: bash env: DOCKER_CLI_EXPERIMENTAL: enabled
[gentoo-commits] proj/docker-images:master commit in: /
commit: 1908ecdaa1366dc3c841d94d13ac5933f623a9a8 Author: Sam James gentoo org> AuthorDate: Thu Feb 8 00:51:59 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 03:16:37 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=1908ecda deploy.sh: add amd64-systemd-mergedusr, amd64-desktop-systemd, amd64-desktop-systemd-mergedusr Fixes: f28266e3db21e05a40f57e88b8e794732474b9ce Fixes: 78f6a455521e956923fa5ccf9c667c30ee0b363a Signed-off-by: Sam James gentoo.org> Signed-off-by: John Helmert III gentoo.org> deploy.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deploy.sh b/deploy.sh index 71d5d90..b619d35 100755 --- a/deploy.sh +++ b/deploy.sh @@ -17,14 +17,14 @@ docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64-openrc;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" - [stage3:desktop]="amd64-desktop-openrc;arm64-desktop-openrc" + [stage3:desktop]="amd64-desktop-openrc;amd64-desktop-systemd;amd64-desktop-systemd-mergedusr;arm64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;armv7a_hardfp_musl-openrc;arm64-musl;i686-musl" [stage3:musl-hardened]="amd64-musl-hardened;arm64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd" - [stage3:systemd]="amd64-systemd;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd" + [stage3:systemd]="amd64-systemd;amd64-systemd-mergedusr;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd" ) # Find latest manifest
[gentoo-commits] proj/docker-images:master commit in: /
commit: e3f8c60364bdfb7aa93a250ef4db1cc0b1dd2f5f Author: Sam James gentoo org> AuthorDate: Thu Feb 8 01:02:46 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 03:16:38 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=e3f8c603 Revert "deploy.sh: add amd64-systemd-mergedusr, amd64-desktop-systemd, amd64-desktop-systemd-mergedusr" This reverts commit e2828573f7d52c72e8f1cf4370b6d33b9f7a4588. Signed-off-by: John Helmert III gentoo.org> deploy.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deploy.sh b/deploy.sh index b619d35..71d5d90 100755 --- a/deploy.sh +++ b/deploy.sh @@ -17,14 +17,14 @@ docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64-openrc;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" - [stage3:desktop]="amd64-desktop-openrc;amd64-desktop-systemd;amd64-desktop-systemd-mergedusr;arm64-desktop-openrc" + [stage3:desktop]="amd64-desktop-openrc;arm64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;armv7a_hardfp_musl-openrc;arm64-musl;i686-musl" [stage3:musl-hardened]="amd64-musl-hardened;arm64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd" - [stage3:systemd]="amd64-systemd;amd64-systemd-mergedusr;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd" + [stage3:systemd]="amd64-systemd;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd" ) # Find latest manifest
[gentoo-commits] proj/docker-images:master commit in: /
commit: e60a0dc885101fb64a14e4d44b4b09f5ea90de3c Author: Sam James gentoo org> AuthorDate: Thu Feb 8 01:11:07 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 03:16:39 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=e60a0dc8 Dockerfiles: use modern Alpine (3.11->3.19) for builds 3.11 was EOL'd on 2021-11-01. Signed-off-by: Sam James gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/135 Signed-off-by: John Helmert III gentoo.org> portage.Dockerfile | 2 +- stage3.Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/portage.Dockerfile b/portage.Dockerfile index 23261d2..deb7969 100644 --- a/portage.Dockerfile +++ b/portage.Dockerfile @@ -3,7 +3,7 @@ # docker-17.05.0 or later. It fetches a daily snapshot from the official # sources and verifies its checksum as well as its gpg signature. -FROM --platform=$BUILDPLATFORM alpine:3.11 as builder +FROM --platform=$BUILDPLATFORM alpine:3.19 as builder WORKDIR /portage diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 111ae96..3289fcf 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -4,7 +4,7 @@ # sources and verifies its checksum as well as its gpg signature. ARG BOOTSTRAP -FROM --platform=$BUILDPLATFORM ${BOOTSTRAP:-alpine:3.11} as builder +FROM --platform=$BUILDPLATFORM ${BOOTSTRAP:-alpine:3.19} as builder WORKDIR /gentoo
[gentoo-commits] proj/docker-images:master commit in: /
commit: 118859f09e0420798d9daa09416ae4622d83cfc4 Author: Sam James gentoo org> AuthorDate: Thu Feb 8 01:08:11 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 03:16:39 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=118859f0 Drop references to uclibc uclibc was removed from Gentoo a while ago - see the 2021-08-18-uclibc-ng-retirement news item. Bug: https://bugs.gentoo.org/820905 Signed-off-by: Sam James gentoo.org> Signed-off-by: John Helmert III gentoo.org> README.md | 4 1 file changed, 4 deletions(-) diff --git a/README.md b/README.md index 998b810..2ef6a80 100644 --- a/README.md +++ b/README.md @@ -75,8 +75,6 @@ The following upstream stage3 targets are not built at all: * `stage3-amd64-musl-vanilla` [[deprecated](#deprecated)] * `stage3-amd64-nomultilib` [[deprecated](#deprecated)] * `stage3-amd64-nomultilib-selinux-openrc` [[selinux](#selinux)] - * `stage3-amd64-uclibc-hardened` [[deprecated](#deprecated)] - * `stage3-amd64-uclibc-vanilla` [[deprecated](#deprecated)] * `stage3-x32` [[deprecated](#deprecated), [unsupported](#unsupported)] * `stage3-x32-openrc` [[unsupported](#unsupported)] * `arm` @@ -105,8 +103,6 @@ The following upstream stage3 targets are not built at all: * `stage3-i686` [[deprecated](#deprecated)] * `stage3-i686-hardened` [[deprecated](#deprecated)] * `stage3-i686-musl-vanilla` [[deprecated](#deprecated)] - * `stage3-i686-uclibc-hardened` [[deprecated](#deprecated)] - * `stage3-i686-uclibc-vanilla` [[deprecated](#deprecated)] [deprecated]: Deprecated stage3 target
[gentoo-commits] proj/docker-images:master commit in: /, .github/workflows/
commit: 4f11bfd241fc1681b7bde2aae3e05dd21a779907 Author: Sam James gentoo org> AuthorDate: Thu Feb 8 01:05:05 2024 + Commit: John Helmert III gentoo org> CommitDate: Thu Feb 8 03:16:39 2024 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=4f11bfd2 Switch systemd images to mergedusr In bug #917143, we stopped building non-merged-usr stage3s following the 2022-12-01-systemd-usrmerge news item a while prior, as upstream systemd no longer support non-merged-usr. The stages for systemd w/ non-merged-usr are no being built, so the last one we picked up was stage3-amd64-systemd-20231210T170356Z.tar.xz (and so on). Switch all systemd images accordingly to merged-usr. Bug: https://bugs.gentoo.org/915958 Bug: https://bugs.gentoo.org/917143 Closes: https://github.com/gentoo/gentoo-docker-images/issues/136 Signed-off-by: Sam James gentoo.org> Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 28 +--- README.md | 32 +++- deploy.sh | 4 ++-- 3 files changed, 30 insertions(+), 34 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a22ace1..c2bc5dd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,43 +21,41 @@ jobs: - stage3-amd64-musl - stage3-amd64-musl-hardened - stage3-amd64-nomultilib-openrc - - stage3-amd64-nomultilib-systemd + - stage3-amd64-nomultilib-systemd-mergedusr - stage3-amd64-openrc - stage3-amd64-desktop-openrc - - stage3-amd64-systemd - stage3-amd64-systemd-mergedusr - - stage3-amd64-desktop-systemd - stage3-amd64-desktop-systemd-mergedusr - stage3-armv5tel-openrc - - stage3-armv5tel-systemd + - stage3-armv5tel-systemd-mergedusr - stage3-armv6j-openrc - - stage3-armv6j-systemd + - stage3-armv6j-systemd-mergedusr - stage3-armv6j_hardfp-openrc - - stage3-armv6j_hardfp-systemd + - stage3-armv6j_hardfp-systemd-mergedusr - stage3-armv7a-openrc - - stage3-armv7a-systemd + - stage3-armv7a-systemd-mergedusr - stage3-armv7a_hardfp_musl-openrc - stage3-armv7a_hardfp-openrc - - stage3-armv7a_hardfp-systemd + - stage3-armv7a_hardfp-systemd-mergedusr - stage3-arm64-desktop-openrc - - stage3-arm64-desktop-systemd + - stage3-arm64-desktop-systemd-mergedusr - stage3-arm64-musl - stage3-arm64-musl-hardened - stage3-arm64-openrc - - stage3-arm64-systemd + - stage3-arm64-systemd-mergedusr - stage3-i686-hardened-openrc - stage3-i686-musl - stage3-i686-openrc - - stage3-i686-systemd + - stage3-i686-systemd-mergedusr - stage3-ppc64le-musl-hardened-openrc - stage3-ppc64le-openrc - - stage3-ppc64le-systemd + - stage3-ppc64le-systemd-mergedusr - stage3-rv64_lp64-openrc - - stage3-rv64_lp64-systemd + - stage3-rv64_lp64-systemd-mergedusr - stage3-rv64_lp64d-openrc - - stage3-rv64_lp64d-systemd + - stage3-rv64_lp64d-systemd-mergedusr - stage3-s390x-openrc - - stage3-s390x-systemd + - stage3-s390x-systemd-mergedusr name: ${{ matrix.target }} runs-on: ubuntu-latest steps: diff --git a/README.md b/README.md index 0301c7f..998b810 100644 --- a/README.md +++ b/README.md @@ -23,48 +23,46 @@ The following targets are built and pushed to Docker Hub: * `stage3-amd64-musl` * `stage3-amd64-musl-hardened` * `stage3-amd64-nomultilib-openrc` - * `stage3-amd64-nomultilib-systemd` + * `stage3-amd64-nomultilib-systemd-mergedusr` * `stage3-amd64-openrc` * `stage3-amd64-desktop-openrc` - * `stage3-amd64-systemd` * `stage3-amd64-systemd-mergedusr` - * `stage3-amd64-desktop-systemd` * `stage3-amd64-desktop-systemd-mergedusr` * `arm` * `stage3-armv5tel-openrc` - * `stage3-armv5tel-systemd` + * `stage3-armv5tel-systemd-mergedusr` * `stage3-armv6j-openrc` - * `stage3-armv6j-systemd` + * `stage3-armv6j-systemd-mergedusr` * `stage3-armv6j_hardfp-openrc` - * `stage3-armv6j_hardfp-systemd` + * `stage3-armv6j_hardfp-systemd-mergedusr` * `stage3-armv7a-openrc` - * `stage3-armv7a-systemd` + * `stage3-armv7a-systemd-mergedusr` * `stage3-armv7a_hardfp_musl-openrc` * `stage3-armv7a_hardfp-openrc` - * `stage3-armv7a_hardfp-systemd` + * `stage3-armv7a_hardfp-systemd-mergedusr` * `arm64` * `stage3-arm64-desktop-openrc` - * `stage3-arm64-desktop-systemd` + * `stage3-arm64-desktop-systemd-mergedusr` * `stage3-arm64-musl` *
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: 78f6a455521e956923fa5ccf9c667c30ee0b363a Author: td5038 <93895804+td5038 users noreply github com> AuthorDate: Sun Jan 29 20:54:23 2023 + Commit: John Helmert III gentoo org> CommitDate: Sun Nov 26 20:53:23 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=78f6a455 Round out systemd desktop containers Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f65817a..d0e22e8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,6 +25,7 @@ jobs: - stage3-amd64-openrc - stage3-amd64-desktop-openrc - stage3-amd64-systemd + - stage3-amd64-desktop-systemd - stage3-armv5tel-openrc - stage3-armv5tel-systemd - stage3-armv6j-openrc
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: f28266e3db21e05a40f57e88b8e794732474b9ce Author: td5038 <93895804+td5038 users noreply github com> AuthorDate: Sun Jan 29 21:00:23 2023 + Commit: John Helmert III gentoo org> CommitDate: Sun Nov 26 20:53:38 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=f28266e3 Add mergedusr support on amd64 Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d0e22e8..a22ace1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,7 +25,9 @@ jobs: - stage3-amd64-openrc - stage3-amd64-desktop-openrc - stage3-amd64-systemd + - stage3-amd64-systemd-mergedusr - stage3-amd64-desktop-systemd + - stage3-amd64-desktop-systemd-mergedusr - stage3-armv5tel-openrc - stage3-armv5tel-systemd - stage3-armv6j-openrc
[gentoo-commits] proj/docker-images:master commit in: /
commit: ee1a9e680c5154865a90ebe1c30815ba6682a92f Author: td5038 <93895804+td5038 users noreply github com> AuthorDate: Sun Jan 29 21:02:33 2023 + Commit: John Helmert III gentoo org> CommitDate: Sun Nov 26 20:53:44 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=ee1a9e68 Document new image types I added Closes: https://github.com/gentoo/gentoo-docker-images/pull/124 Signed-off-by: John Helmert III gentoo.org> README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index b7ac576..0301c7f 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,9 @@ The following targets are built and pushed to Docker Hub: * `stage3-amd64-openrc` * `stage3-amd64-desktop-openrc` * `stage3-amd64-systemd` + * `stage3-amd64-systemd-mergedusr` + * `stage3-amd64-desktop-systemd` + * `stage3-amd64-desktop-systemd-mergedusr` * `arm` * `stage3-armv5tel-openrc` * `stage3-armv5tel-systemd`
[gentoo-commits] proj/docker-images:master commit in: /
commit: 829b55c1c8263f277c7deb6c536f466df2c20817 Author: Sam James gentoo org> AuthorDate: Mon Oct 9 05:30:02 2023 + Commit: John Helmert III gentoo org> CommitDate: Sat Oct 14 17:34:55 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=829b55c1 Handle new clearsigned 'latest' files The latest*.txt files are now clear-signed which confuses our awk line. Signed-off-by: Sam James gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/132 Signed-off-by: John Helmert III gentoo.org> stage3.Dockerfile | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index df82bc2..111ae96 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -16,14 +16,16 @@ ARG SIGNING_KEY="0xBB572E0E2D182910" RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${DIST}" \ && apk --no-cache add ca-certificates gnupg tar wget xz \ - && STAGE3PATH="$(wget -O- "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" | tail -n 1 | cut -f 1 -d ' ')" \ - && echo "STAGE3PATH:" $STAGE3PATH \ - && STAGE3="$(basename ${STAGE3PATH})" \ - && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.asc" \ && gpg --list-keys \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ + && wget -q "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" \ + && gpg --verify "latest-stage3-${MICROARCH}${SUFFIX}.txt" \ + && STAGE3PATH="$(sed -n '6p' "latest-stage3-${MICROARCH}${SUFFIX}.txt" | cut -f 1 -d ' ')" \ + && echo "STAGE3PATH:" ${STAGE3PATH} \ + && STAGE3="$(basename ${STAGE3PATH})" \ + && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.asc" \ && gpg --verify "${STAGE3}.asc" \ && tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner \ && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, .github/actions/container_build/
commit: d7e9b1ab0b92cc81c0cc6c589e713c78e8b8df2b Author: John Helmert III gentoo org> AuthorDate: Sat Oct 14 17:19:46 2023 + Commit: John Helmert III gentoo org> CommitDate: Sat Oct 14 17:19:46 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=d7e9b1ab split iamge build steps into dedicated actions file Signed-off-by: John Helmert III gentoo.org> .github/actions/container_build/action.yml | 46 ++ .github/workflows/build.yml| 32 - 2 files changed, 51 insertions(+), 27 deletions(-) diff --git a/.github/actions/container_build/action.yml b/.github/actions/container_build/action.yml new file mode 100644 index 000..bef1441 --- /dev/null +++ b/.github/actions/container_build/action.yml @@ -0,0 +1,46 @@ +--- +name: Build +inputs: + target: +required: true + dockerhub_username: +required: true + dockerhub_password: +required: true +runs: + using: composite + steps: +- name: Set up QEMU + uses: docker/setup-qemu-action@v2 +- name: Set up buildx + uses: docker/setup-buildx-action@v2 +- name: Set up TARGET + run: echo "TARGET=${{ inputs.target }}" | tee $GITHUB_ENV + shell: bash +- name: Build image + if: startswith(inputs.target, 'stage3') || startswith(inputs.target, 'portage') + shell: bash + run: ./build.sh +- name: Build python image + if: startswith(inputs.target, 'python') + shell: bash + run: ./build-python.sh +- name: Inspect image + shell: bash + run: docker image inspect "${ORG}/${TARGET/-/:}" +- name: Inspect portage + if: matrix.target != 'portage' + shell: bash + run: docker run --rm "${ORG}/${TARGET/-/:}" emerge --info +- name: Login to DockerHub + uses: docker/login-action@v2 + if: github.event_name == 'schedule' + with: +username: ${{ inputs.dockerhub_username }} +password: ${{ inputs.dockerhub_password }} +- name: Push image + if: github.event_name == 'schedule' + shell: bash + env: +DOCKER_CLI_EXPERIMENTAL: enabled + run: ./deploy.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ef4e56f..cb95b19 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -58,34 +58,12 @@ jobs: - stage3-s390x-systemd name: ${{ matrix.target }} runs-on: ubuntu-latest -env: - TARGET: ${{ matrix.target }} steps: - name: Checkout code uses: actions/checkout@v3 - - name: Set up QEMU -uses: docker/setup-qemu-action@v2 - - name: Set up buildx -uses: docker/setup-buildx-action@v2 - - name: Build image -if: startswith(matrix.target, 'stage3') || startswith(matrix.target, 'portage') -run: ./build.sh - - name: Build python image -if: startswith( matrix.target, 'python') -run: ./build-python.sh - - name: Inspect image -run: docker image inspect "${ORG}/${TARGET/-/:}" - - name: Inspect portage -if: matrix.target != 'portage' -run: docker run --rm "${ORG}/${TARGET/-/:}" emerge --info - - name: Login to DockerHub -uses: docker/login-action@v2 -if: github.event_name == 'schedule' + - name: Build ${{ matrix.target }} +uses: ./.github/actions/container_build with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_PASSWORD }} - - name: Push image -if: github.event_name == 'schedule' -env: - DOCKER_CLI_EXPERIMENTAL: enabled -run: ./deploy.sh + target: ${{ matrix.target }} + dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }} + dockerhub_password: ${{ secrets.DOCKERHUB_PASSWORD }}
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: 52fbc593365dba5717f9f98997632ed1afa20a2b Author: John Helmert III gentoo org> AuthorDate: Sat Oct 14 17:19:48 2023 + Commit: John Helmert III gentoo org> CommitDate: Sat Oct 14 17:19:48 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=52fbc593 actions: move portage to its own daily job gentoo.git is updated far more than weekly, so only rebuilding weekly makes little sense in this case. Instead, rebuild it daily so that syncing downstream is less necessary. Closes: https://github.com/gentoo/gentoo-docker-images/issues/129 Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 1 - .github/workflows/portage.yml | 30 ++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cb95b19..f65817a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,7 +16,6 @@ jobs: matrix: target: - python - - portage - stage3-amd64-hardened-nomultilib-openrc - stage3-amd64-hardened-openrc - stage3-amd64-musl diff --git a/.github/workflows/portage.yml b/.github/workflows/portage.yml new file mode 100644 index 000..a305bb8 --- /dev/null +++ b/.github/workflows/portage.yml @@ -0,0 +1,30 @@ +name: portage + +on: + schedule: +- cron: '0 1 * * *' + push: + pull_request: + +env: + ORG: gentoo + +jobs: + portage: +# some boilerplate kept for alignment with build.yml +strategy: + fail-fast: false + matrix: +target: + - portage +name: ${{ matrix.target }} +runs-on: ubuntu-latest +steps: + - name: Checkout code +uses: actions/checkout@v3 + - name: Build ${{ matrix.target }} +uses: ./.github/actions/container_build +with: + target: ${{ matrix.target }} + dockerhub_username: ${{ secrets.DOCKERHUB_USERNAME }} + dockerhub_password: ${{ secrets.DOCKERHUB_PASSWORD }}
[gentoo-commits] proj/docker-images:master commit in: /, .github/workflows/
commit: c98033b1dc679a5e3ded53ee52ad15e738eeb0a0 Author: John Helmert III gentoo org> AuthorDate: Thu Jun 29 02:22:56 2023 + Commit: John Helmert III gentoo org> CommitDate: Thu Jun 29 15:22:35 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=c98033b1 add plumbing to produce a python testing image Closes: #73 Signed-off-by: John Helmert III gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/128 .github/workflows/build.yml | 5 + build-python.sh | 17 + python.Dockerfile | 16 3 files changed, 38 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 021efcc..ef4e56f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,6 +15,7 @@ jobs: fail-fast: false matrix: target: + - python - portage - stage3-amd64-hardened-nomultilib-openrc - stage3-amd64-hardened-openrc @@ -67,7 +68,11 @@ jobs: - name: Set up buildx uses: docker/setup-buildx-action@v2 - name: Build image +if: startswith(matrix.target, 'stage3') || startswith(matrix.target, 'portage') run: ./build.sh + - name: Build python image +if: startswith( matrix.target, 'python') +run: ./build-python.sh - name: Inspect image run: docker image inspect "${ORG}/${TARGET/-/:}" - name: Inspect portage diff --git a/build-python.sh b/build-python.sh new file mode 100755 index 000..6289c05 --- /dev/null +++ b/build-python.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env bash + +NAME=python +VERSION=${VERSION:-$(date -u +%Y%m%d)} +VERSION_SUFFIX="-${VERSION}" + +ORG=${ORG:-gentoo} + +docker buildx build \ + --file "${NAME}.Dockerfile" \ + --build-arg ARCH="amd64" \ + --build-arg MICROARCH="amd64" \ + --tag "${ORG}/python" \ + --platform "linux/amd64" \ + --progress plain \ + --load \ + . diff --git a/python.Dockerfile b/python.Dockerfile new file mode 100644 index 000..7b61532 --- /dev/null +++ b/python.Dockerfile @@ -0,0 +1,16 @@ +FROM gentoo/stage3:amd64-nomultilib-openrc + +# derived from https://github.com/projg2/gentoo-python-image/blob/master/Dockerfile + +RUN echo '*/* ~amd64' >> /etc/portage/package.accept_keywords/base.conf \ + && echo '*/* full-stdlib sqlite' >> /etc/portage/package.use/python \ + && echo 'dev-vcs/git -perl' >> /etc/portage/package.use/git \ + && wget --progress=dot:mega -O - https://github.com/gentoo-mirror/gentoo/archive/master.tar.gz | tar -xz \ + && mv gentoo-master /var/db/repos/gentoo \ + && emerge -1vnt --jobs dev-python/tox app-arch/lzip dev-vcs/git \ +dev-python/pypy{,3_9,3_10}-exe-bin dev-db/sqlite \ + && emerge -1v --jobs --nodeps dev-lang/python:{2.7,3.8,3.9,3.10,3.11,3.12} \ +dev-python/pypy{,3_9,3_10,3} \ + && rm -r /var/db/repos/* /var/cache/distfiles/* + +CMD ["/bin/bash"]
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: 8a6a93d76ceec93ee59159f40b7375176744388d Author: Konstantinos Smanis gmail com> AuthorDate: Sun Apr 2 20:29:59 2023 + Commit: John Helmert III gentoo org> CommitDate: Sun Apr 2 22:36:30 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=8a6a93d7 Bump CI actions to silence warnings Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/127 Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 21ac503..021efcc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -61,11 +61,11 @@ jobs: TARGET: ${{ matrix.target }} steps: - name: Checkout code -uses: actions/checkout@v2 +uses: actions/checkout@v3 - name: Set up QEMU -uses: docker/setup-qemu-action@v1 +uses: docker/setup-qemu-action@v2 - name: Set up buildx -uses: docker/setup-buildx-action@v1 +uses: docker/setup-buildx-action@v2 - name: Build image run: ./build.sh - name: Inspect image @@ -74,7 +74,7 @@ jobs: if: matrix.target != 'portage' run: docker run --rm "${ORG}/${TARGET/-/:}" emerge --info - name: Login to DockerHub -uses: docker/login-action@v1 +uses: docker/login-action@v2 if: github.event_name == 'schedule' with: username: ${{ secrets.DOCKERHUB_USERNAME }}
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: 86cf8901ad40b9cfd2d8ccc0211f2a0978f131f0 Author: John Helmert III gentoo org> AuthorDate: Sun Jan 8 02:31:12 2023 + Commit: John Helmert III gentoo org> CommitDate: Sun Jan 8 02:48:30 2023 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=86cf8901 adjust s390x image names Should fix s390x builds. Closes: https://github.com/gentoo/gentoo-docker-images/pull/123 Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b13e6a9..21ac503 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -53,7 +53,8 @@ jobs: - stage3-rv64_lp64-systemd - stage3-rv64_lp64d-openrc - stage3-rv64_lp64d-systemd - - stage3-s390x + - stage3-s390x-openrc + - stage3-s390x-systemd name: ${{ matrix.target }} runs-on: ubuntu-latest env:
[gentoo-commits] proj/docker-images:master commit in: /
commit: 097b55539b1b56f16daa5d41a0626afd47e25cda Author: John Helmert III gentoo org> AuthorDate: Wed Dec 21 19:55:32 2022 + Commit: John Helmert III gentoo org> CommitDate: Wed Dec 21 19:56:20 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=097b5553 empty commit to trigger image rebuild (#122) Signed-off-by: John Helmert III gentoo.org>
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/
commit: 448f4fc3f3d4be9e65e5e3894048f6d3a11b2947 Author: John Helmert III gentoo org> AuthorDate: Thu Sep 29 04:56:03 2022 + Commit: John Helmert III gentoo org> CommitDate: Thu Sep 29 04:56:03 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=448f4fc3 Only rebuild images weekly Doing it any more than this is wasteful, because the underlying stages aren't actually changing at all. Closes: https://bugs.gentoo.org/870619 Signed-off-by: John Helmert III gentoo.org> .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1fb11d8..b13e6a9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: build on: schedule: -- cron: '0 1 * * *' +- cron: '0 0 * * 1' push: pull_request:
[gentoo-commits] proj/docker-images:master commit in: /
commit: 3e757d311f59ba4b4a4000492ea1343ea5c3c9e7 Author: John Helmert III gentoo org> AuthorDate: Tue May 17 17:24:24 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Mon May 23 08:24:19 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=3e757d31 Update README portage tree path and stage3-amd64 -> stage3 Signed-off-by: John Helmert III gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/120 Signed-off-by: Alexys Jacob gentoo.org> README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ebbb88d..b7ac576 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ A collection of Dockerfiles for generating Gentoo docker images. These images are intended to be created automatically by a cron job and pushed to [docker hub](https://hub.docker.com/u/gentoo/). -This repository include basic stage3 images and an image usable as a `/usr/portage` volume +This repository include basic stage3 images and an image usable as a `/var/db/repos/gentoo` volume # DockerHub @@ -125,8 +125,8 @@ The container being built is defined by the TARGET environment variable: # Using the portage container as a data volume ``` -docker create -v /usr/portage --name myportagesnapshot gentoo/portage:latest /bin/true -docker run --interactive --tty --volumes-from myportagesnapshot gentoo/stage3-amd64:latest /bin/bash +docker create -v /var/db/repos/gentoo --name myportagesnapshot gentoo/portage:latest /bin/true +docker run --interactive --tty --volumes-from myportagesnapshot gentoo/stage3:latest /bin/bash ``` # Using the portage container in a multi-stage build
[gentoo-commits] proj/docker-images:master commit in: /, .github/workflows/
commit: 4f7db8bb687e27d46c22560bc881c85fbf614220 Author: Konstantinos Smanis gmail com> AuthorDate: Sun Mar 20 13:34:18 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Tue Apr 12 08:04:02 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=4f7db8bb Fix arm64 stage3 builds Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/119 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 5 - README.md | 5 - deploy.sh | 6 +++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a2284dd..1fb11d8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -36,8 +36,11 @@ jobs: - stage3-armv7a_hardfp_musl-openrc - stage3-armv7a_hardfp-openrc - stage3-armv7a_hardfp-systemd - - stage3-arm64 + - stage3-arm64-desktop-openrc + - stage3-arm64-desktop-systemd - stage3-arm64-musl + - stage3-arm64-musl-hardened + - stage3-arm64-openrc - stage3-arm64-systemd - stage3-i686-hardened-openrc - stage3-i686-musl diff --git a/README.md b/README.md index a95ee11..ebbb88d 100644 --- a/README.md +++ b/README.md @@ -40,8 +40,11 @@ The following targets are built and pushed to Docker Hub: * `stage3-armv7a_hardfp-openrc` * `stage3-armv7a_hardfp-systemd` * `arm64` - * `stage3-arm64` + * `stage3-arm64-desktop-openrc` + * `stage3-arm64-desktop-systemd` * `stage3-arm64-musl` + * `stage3-arm64-musl-hardened` + * `stage3-arm64-openrc` * `stage3-arm64-systemd` * `ppc` * `stage3-ppc64le-musl-hardened-openrc` diff --git a/deploy.sh b/deploy.sh index eb584f5..71d5d90 100755 --- a/deploy.sh +++ b/deploy.sh @@ -16,12 +16,12 @@ ORG=${ORG:-gentoo} docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( - [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" - [stage3:desktop]="amd64-desktop-openrc" + [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64-openrc;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" + [stage3:desktop]="amd64-desktop-openrc;arm64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;armv7a_hardfp_musl-openrc;arm64-musl;i686-musl" - [stage3:musl-hardened]="amd64-musl-hardened;ppc64le-musl-hardened-openrc" + [stage3:musl-hardened]="amd64-musl-hardened;arm64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd" [stage3:systemd]="amd64-systemd;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd"
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: 7d51c9af872c7277bfb07001ca3cd22dcb5b58cb Author: Sam James gentoo org> AuthorDate: Sun Feb 20 23:36:37 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Wed Mar 2 11:24:18 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=7d51c9af Build arm64-musl image Bug: https://github.com/rui314/mold/issues/281 Signed-off-by: Sam James gentoo.org> Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 1 + README.md | 1 + deploy.sh | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a58b93c..c177b11 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -36,6 +36,7 @@ jobs: - stage3-armv7a_hardfp-openrc - stage3-armv7a_hardfp-systemd - stage3-arm64 + - stage3-arm64-musl - stage3-arm64-systemd - stage3-i686-hardened-openrc - stage3-i686-musl diff --git a/README.md b/README.md index bc76134..5242b60 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,7 @@ The following targets are built and pushed to Docker Hub: * `stage3-armv7a_hardfp-systemd` * `arm64` * `stage3-arm64` + * `stage3-arm64-musl` * `stage3-arm64-systemd` * `ppc` * `stage3-ppc64le-musl-hardened-openrc` diff --git a/deploy.sh b/deploy.sh index bd8ee55..1659f5e 100755 --- a/deploy.sh +++ b/deploy.sh @@ -20,7 +20,7 @@ declare -A MANIFEST_TAGS=( [stage3:desktop]="amd64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" - [stage3:musl]="amd64-musl;i686-musl" + [stage3:musl]="amd64-musl;arm64-musl;i686-musl" [stage3:musl-hardened]="amd64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd"
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: 2d6db82c10268ee20b7ced2e32e013142ded4b2b Author: Sam James gentoo org> AuthorDate: Sun Feb 20 23:38:40 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Wed Mar 2 11:24:21 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=2d6db82c Build armv7a_hardfp_musl-openrc image Signed-off-by: Sam James gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/118 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 1 + README.md | 1 + deploy.sh | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c177b11..a2284dd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -33,6 +33,7 @@ jobs: - stage3-armv6j_hardfp-systemd - stage3-armv7a-openrc - stage3-armv7a-systemd + - stage3-armv7a_hardfp_musl-openrc - stage3-armv7a_hardfp-openrc - stage3-armv7a_hardfp-systemd - stage3-arm64 diff --git a/README.md b/README.md index 5242b60..a95ee11 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ The following targets are built and pushed to Docker Hub: * `stage3-armv6j_hardfp-systemd` * `stage3-armv7a-openrc` * `stage3-armv7a-systemd` + * `stage3-armv7a_hardfp_musl-openrc` * `stage3-armv7a_hardfp-openrc` * `stage3-armv7a_hardfp-systemd` * `arm64` diff --git a/deploy.sh b/deploy.sh index 1659f5e..eb584f5 100755 --- a/deploy.sh +++ b/deploy.sh @@ -20,7 +20,7 @@ declare -A MANIFEST_TAGS=( [stage3:desktop]="amd64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" - [stage3:musl]="amd64-musl;arm64-musl;i686-musl" + [stage3:musl]="amd64-musl;armv7a_hardfp_musl-openrc;arm64-musl;i686-musl" [stage3:musl-hardened]="amd64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd"
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: cfd6eff35b999bfe1677a3bd0a5564af5a7035db Author: Sam James gentoo org> AuthorDate: Tue Feb 15 02:57:41 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Feb 18 17:39:07 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=cfd6eff3 Add stage3:desktop (just amd64-desktop-openrc for now) In particular, this is useful for CI for upstreams who don't want to have to build X etc just to run their test suite. Signed-off-by: Sam James gentoo.org> Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 1 + README.md | 1 + deploy.sh | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7d93d8f..a58b93c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,6 +23,7 @@ jobs: - stage3-amd64-nomultilib-openrc - stage3-amd64-nomultilib-systemd - stage3-amd64-openrc + - stage3-amd64-desktop-openrc - stage3-amd64-systemd - stage3-armv5tel-openrc - stage3-armv5tel-systemd diff --git a/README.md b/README.md index 647eaf9..bc76134 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ The following targets are built and pushed to Docker Hub: * `stage3-amd64-nomultilib-openrc` * `stage3-amd64-nomultilib-systemd` * `stage3-amd64-openrc` + * `stage3-amd64-desktop-openrc` * `stage3-amd64-systemd` * `arm` * `stage3-armv5tel-openrc` diff --git a/deploy.sh b/deploy.sh index da691f3..bd8ee55 100755 --- a/deploy.sh +++ b/deploy.sh @@ -17,6 +17,7 @@ docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" + [stage3:desktop]="amd64-desktop-openrc" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;i686-musl"
[gentoo-commits] proj/docker-images:master commit in: /
commit: 7aea4fa952454731779696bda1fdd3d605b8f07b Author: Sam James gentoo org> AuthorDate: Tue Feb 15 03:03:07 2022 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Feb 18 17:39:09 2022 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=7aea4fa9 Update for new .asc layout Signed-off-by: Sam James gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/117 Signed-off-by: Alexys Jacob gentoo.org> stage3.Dockerfile | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index b9909ee..df82bc2 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -19,17 +19,16 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && STAGE3PATH="$(wget -O- "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" | tail -n 1 | cut -f 1 -d ' ')" \ && echo "STAGE3PATH:" $STAGE3PATH \ && STAGE3="$(basename ${STAGE3PATH})" \ - && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.DIGESTS.asc" \ + && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.asc" \ && gpg --list-keys \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ - && gpg --verify "${STAGE3}.DIGESTS.asc" \ - && awk '/# SHA512 HASH/{getline; print}' ${STAGE3}.DIGESTS.asc | sha512sum -c \ + && gpg --verify "${STAGE3}.asc" \ && tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner \ && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \ && echo 'UTC' > etc/timezone \ - && rm ${STAGE3}.DIGESTS.asc ${STAGE3}.CONTENTS.gz ${STAGE3} + && rm ${STAGE3}.asc ${STAGE3}.CONTENTS.gz ${STAGE3} FROM scratch
[gentoo-commits] proj/docker-images:master commit in: /, .github/workflows/
commit: 72f09f90c16350954c623b5f6e3c403dea847ce1 Author: Konstantinos Smanis gmail com> AuthorDate: Mon Nov 22 19:27:45 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Wed Dec 1 11:31:36 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=72f09f90 Fix armv*-openrc stage3 builds Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/112 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 10 +- README.md | 10 +- deploy.sh | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index eb666ee..7d93d8f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,15 +24,15 @@ jobs: - stage3-amd64-nomultilib-systemd - stage3-amd64-openrc - stage3-amd64-systemd - - stage3-armv5tel + - stage3-armv5tel-openrc - stage3-armv5tel-systemd - - stage3-armv6j + - stage3-armv6j-openrc - stage3-armv6j-systemd - - stage3-armv6j_hardfp + - stage3-armv6j_hardfp-openrc - stage3-armv6j_hardfp-systemd - - stage3-armv7a + - stage3-armv7a-openrc - stage3-armv7a-systemd - - stage3-armv7a_hardfp + - stage3-armv7a_hardfp-openrc - stage3-armv7a_hardfp-systemd - stage3-arm64 - stage3-arm64-systemd diff --git a/README.md b/README.md index a103766..647eaf9 100644 --- a/README.md +++ b/README.md @@ -27,15 +27,15 @@ The following targets are built and pushed to Docker Hub: * `stage3-amd64-openrc` * `stage3-amd64-systemd` * `arm` - * `stage3-armv5tel` + * `stage3-armv5tel-openrc` * `stage3-armv5tel-systemd` - * `stage3-armv6j` + * `stage3-armv6j-openrc` * `stage3-armv6j-systemd` - * `stage3-armv6j_hardfp` + * `stage3-armv6j_hardfp-openrc` * `stage3-armv6j_hardfp-systemd` - * `stage3-armv7a` + * `stage3-armv7a-openrc` * `stage3-armv7a-systemd` - * `stage3-armv7a_hardfp` + * `stage3-armv7a_hardfp-openrc` * `stage3-armv7a_hardfp-systemd` * `arm64` * `stage3-arm64` diff --git a/deploy.sh b/deploy.sh index 871f901..da691f3 100755 --- a/deploy.sh +++ b/deploy.sh @@ -16,7 +16,7 @@ ORG=${ORG:-gentoo} docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( - [stage3:latest]="amd64-openrc;armv5tel;armv6j_hardfp;armv7a_hardfp;arm64;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" + [stage3:latest]="amd64-openrc;armv5tel-openrc;armv6j_hardfp-openrc;armv7a_hardfp-openrc;arm64;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;i686-musl"
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: 40604346053c47a0ae23590f47053d3b56801b6a Author: alexfanqi yahoo com> AuthorDate: Wed Sep 22 01:48:48 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Oct 21 11:13:13 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=40604346 generate containers for riscv64 (lp64 & lp64d one-level) multilib support is still under testing. leave it out for now Signed-off-by: alexfanqi yahoo.com> Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 4 build.sh| 6 ++ deploy.sh | 4 ++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a5ec941..eb666ee 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -43,6 +43,10 @@ jobs: - stage3-ppc64le-musl-hardened-openrc - stage3-ppc64le-openrc - stage3-ppc64le-systemd + - stage3-rv64_lp64-openrc + - stage3-rv64_lp64-systemd + - stage3-rv64_lp64d-openrc + - stage3-rv64_lp64d-systemd - stage3-s390x name: ${{ matrix.target }} runs-on: ubuntu-latest diff --git a/build.sh b/build.sh index f17641b..0687c46 100755 --- a/build.sh +++ b/build.sh @@ -43,6 +43,12 @@ case $ARCH in MICROARCH="${ARCH}" ARCH="ppc" ;; + "rv64_"*) + # only support riscv64 for now + DOCKER_ARCH=riscv64 + MICROARCH="${ARCH}" + ARCH="riscv" + ;; "s390x") DOCKER_ARCH="${ARCH}" MICROARCH="${ARCH}" diff --git a/deploy.sh b/deploy.sh index 877c6eb..871f901 100755 --- a/deploy.sh +++ b/deploy.sh @@ -16,14 +16,14 @@ ORG=${ORG:-gentoo} docker push --all-tags "${ORG}/${NAME}" declare -A MANIFEST_TAGS=( - [stage3:latest]="amd64-openrc;armv5tel;armv6j_hardfp;armv7a_hardfp;arm64;i686-openrc;ppc64le-openrc;s390x" + [stage3:latest]="amd64-openrc;armv5tel;armv6j_hardfp;armv7a_hardfp;arm64;i686-openrc;ppc64le-openrc;rv64_lp64d-openrc;s390x" [stage3:hardened]="amd64-hardened-openrc;i686-hardened-openrc" [stage3:hardened-nomultilib]="amd64-hardened-nomultilib-openrc" [stage3:musl]="amd64-musl;i686-musl" [stage3:musl-hardened]="amd64-musl-hardened;ppc64le-musl-hardened-openrc" [stage3:nomultilib]="amd64-nomultilib-openrc" [stage3:nomultilib-systemd]="amd64-nomultilib-systemd" - [stage3:systemd]="amd64-systemd;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd" + [stage3:systemd]="amd64-systemd;armv5tel-systemd;armv6j_hardfp-systemd;armv7a_hardfp-systemd;arm64-systemd;i686-systemd;ppc64le-systemd;rv64_lp64d-systemd" ) # Find latest manifest
[gentoo-commits] proj/docker-images:master commit in: /
commit: 8e49c8eec53097a7c9c9e5667064bc01f684a1ae Author: alexfanqi yahoo com> AuthorDate: Wed Sep 22 06:34:15 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Oct 21 11:13:17 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=8e49c8ee Add riscv to README.md currently only support riscv64. And multilib is not ready yet. Signed-off-by: alexfanqi yahoo.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/111 Signed-off-by: Alexys Jacob gentoo.org> README.md | 10 ++ 1 file changed, 10 insertions(+) diff --git a/README.md b/README.md index 13da7b5..a103766 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,11 @@ The following targets are built and pushed to Docker Hub: * `stage3-ppc64le-musl-hardened-openrc` * `stage3-ppc64le-openrc` * `stage3-ppc64le-systemd` + * `riscv` + * `stage3-rv64_lp64-openrc` + * `stage3-rv64_lp64-systemd` + * `stage3-rv64_lp64d-openrc` + * `stage3-rv64_lp64d-systemd` * `s390` * `stage3-s390x` * `x86` @@ -82,6 +87,9 @@ The following upstream stage3 targets are not built at all: * `stage3-ppc64-systemd` [[unsupported](#unsupported)] * `stage3-ppc64le` [[deprecated](#deprecated)] * `stage3-ppc64le-musl-hardened` [[deprecated](#deprecated)] + * `riscv` + * `stage3-rv32_*` [[unsupported](#unsupported)] + * `stage3-rv64_multilib` [[under testing](#testing)] * `s390` * `stage3-s390` [[unsupported](#unsupported)] * `x86` @@ -97,6 +105,8 @@ The following upstream stage3 targets are not built at all: [selinux]: [SELinux doesn't seem to make sense inside containers](https://serverfault.com/q/757606/) +[under testing]: Not ready for container. Our arch team is working on testing it + [unsupported]: [Unsupported Docker architecture](https://github.com/docker-library/official-images#architectures-other-than-amd64) # Building the containers
[gentoo-commits] proj/docker-images:master commit in: /
commit: bcf0c8256bc00a0609c51b64b80ea0f6f3df9992 Author: alsotoes gmail com> AuthorDate: Sat Aug 28 05:12:41 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Mon Aug 30 07:33:45 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=bcf0c825 changing readme file as irc channel moved away from freenode to libera Closes: https://github.com/gentoo/gentoo-docker-images/pull/110 Signed-off-by: Alexys Jacob gentoo.org> README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b474e04..13da7b5 100644 --- a/README.md +++ b/README.md @@ -139,7 +139,7 @@ RUN emerge -qv www-servers/apache # or whichever packages you need We'd love to hear any ideas. Feel free to contact us via any of the following methods: -* IRC: irc://freenode.net/#gentoo-containers +* IRC: irc://irc.libera.chat:6697/#gentoo-containers * EMAIL: gentoo-contain...@lists.gentoo.org * GITHUB: https://github.com/gentoo/gentoo-docker-images
[gentoo-commits] proj/docker-images:master commit in: /, .github/workflows/
commit: 7d477af788c1b206bd22d1268ed75e842d3fe00e Author: Konstantinos Smanis gmail com> AuthorDate: Wed Aug 4 20:35:41 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Aug 20 18:05:13 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=7d477af7 Update stage3 targets Closes: #109 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/108 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 38 ++ README.md | 94 +++-- build.sh| 16 +++- deploy.sh | 71 +++--- 4 files changed, 131 insertions(+), 88 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0f7349b..a5ec941 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,30 +16,34 @@ jobs: matrix: target: - portage - - stage3-amd64 - - stage3-amd64-hardened - - stage3-amd64-hardened-nomultilib + - stage3-amd64-hardened-nomultilib-openrc + - stage3-amd64-hardened-openrc + - stage3-amd64-musl - stage3-amd64-musl-hardened - - stage3-amd64-musl-vanilla - - stage3-amd64-nomultilib + - stage3-amd64-nomultilib-openrc + - stage3-amd64-nomultilib-systemd + - stage3-amd64-openrc - stage3-amd64-systemd - - stage3-amd64-uclibc-hardened - - stage3-amd64-uclibc-vanilla - - stage3-arm64 - - stage3-arm64-systemd - stage3-armv5tel + - stage3-armv5tel-systemd + - stage3-armv6j + - stage3-armv6j-systemd - stage3-armv6j_hardfp + - stage3-armv6j_hardfp-systemd + - stage3-armv7a + - stage3-armv7a-systemd - stage3-armv7a_hardfp - - stage3-ppc64le - - stage3-ppc64le-musl-hardened + - stage3-armv7a_hardfp-systemd + - stage3-arm64 + - stage3-arm64-systemd + - stage3-i686-hardened-openrc + - stage3-i686-musl + - stage3-i686-openrc + - stage3-i686-systemd + - stage3-ppc64le-musl-hardened-openrc + - stage3-ppc64le-openrc - stage3-ppc64le-systemd - stage3-s390x - - stage3-x86 - - stage3-x86-hardened - - stage3-x86-musl-vanilla - - stage3-x86-systemd - - stage3-x86-uclibc-hardened - - stage3-x86-uclibc-vanilla name: ${{ matrix.target }} runs-on: ubuntu-latest env: diff --git a/README.md b/README.md index 651b940..b474e04 100644 --- a/README.md +++ b/README.md @@ -18,50 +18,86 @@ The following targets are built and pushed to Docker Hub: * `portage` * `stage3` * `amd64` - * `stage3-amd64` - * `stage3-amd64-hardened` - * `stage3-amd64-hardened-nomultilib` + * `stage3-amd64-hardened-nomultilib-openrc` + * `stage3-amd64-hardened-openrc` + * `stage3-amd64-musl` * `stage3-amd64-musl-hardened` - * `stage3-amd64-musl-vanilla` - * `stage3-amd64-nomultilib` + * `stage3-amd64-nomultilib-openrc` + * `stage3-amd64-nomultilib-systemd` + * `stage3-amd64-openrc` * `stage3-amd64-systemd` - * `stage3-amd64-uclibc-hardened` - * `stage3-amd64-uclibc-vanilla` - * `arm64` - * `stage3-arm64` - * `stage3-arm64-systemd` * `arm` * `stage3-armv5tel` + * `stage3-armv5tel-systemd` + * `stage3-armv6j` + * `stage3-armv6j-systemd` * `stage3-armv6j_hardfp` + * `stage3-armv6j_hardfp-systemd` + * `stage3-armv7a` + * `stage3-armv7a-systemd` * `stage3-armv7a_hardfp` + * `stage3-armv7a_hardfp-systemd` + * `arm64` + * `stage3-arm64` + * `stage3-arm64-systemd` * `ppc` - * `stage3-ppc64le` + * `stage3-ppc64le-musl-hardened-openrc` + * `stage3-ppc64le-openrc` + * `stage3-ppc64le-systemd` * `s390` * `stage3-s390x` * `x86` - * `stage3-x86` - * `stage3-x86-hardened` - * `stage3-x86-musl-vanilla` - * `stage3-x86-systemd` - * `stage3-x86-uclibc-hardened` - * `stage3-x86-uclibc-vanilla` - -The following upstream stage3 targets are not built at all (see [rationale](https://github.com/gentoo/gentoo-docker-images/issues/75#issuecomment-680776939)): + * `stage3-i686-hardened-openrc` + * `stage3-i686-musl` + * `stage3-i686-openrc` + * `stage3-i686-systemd` + +The following upstream stage3 targets are not built at all: * `amd64` - * `stage3-amd64-hardened-selinux` - * `stage3-amd64-hardened-selinux+nomultilib` - * `stage3-x32` + * `stage3-amd64` [[deprecated](#deprecated)] + * `stage3-amd64-hardened` [[deprecated](#deprecated)] + * `stage3-amd64-hardened+nomultilib` [[deprecated](#deprecated)] + *
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: afde5561b639eab659fef11a441bf4df1a9670f3 Author: Lino Bigatti protonmail com> AuthorDate: Sun May 2 12:36:05 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Mon May 3 07:23:47 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=afde5561 Add support for systemd and musl-hardened profiles to ppc64le. Closes: https://github.com/gentoo/gentoo-docker-images/pull/105 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 2 ++ deploy.sh | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ce80e8..0f7349b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,6 +31,8 @@ jobs: - stage3-armv6j_hardfp - stage3-armv7a_hardfp - stage3-ppc64le + - stage3-ppc64le-musl-hardened + - stage3-ppc64le-systemd - stage3-s390x - stage3-x86 - stage3-x86-hardened diff --git a/deploy.sh b/deploy.sh index 8aa89a8..0a49525 100755 --- a/deploy.sh +++ b/deploy.sh @@ -22,10 +22,10 @@ declare -A MANIFEST_ARCHES=( [stage3:latest]="amd64;arm64;armv5tel;armv6j_hardfp;armv7a_hardfp;ppc64le;s390x;x86" [stage3:hardened]="amd64;x86" [stage3:hardened-nomultilib]="amd64" - [stage3:musl-hardened]="amd64" + [stage3:musl-hardened]="amd64;ppc64le" [stage3:musl-vanilla]="amd64;x86" [stage3:nomultilib]="amd64" - [stage3:systemd]="amd64;arm64;x86" + [stage3:systemd]="amd64;arm64;x86;ppc64le" [stage3:uclibc-hardened]="amd64;x86" [stage3:uclibc-vanilla]="amd64;x86" )
[gentoo-commits] proj/docker-images:master commit in: /
commit: d9efdc25d4dfb97a546d3e134e044ef4331d928b Author: Brett Holman gmail com> AuthorDate: Fri Apr 30 03:46:07 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Apr 30 07:57:25 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=d9efdc25 update example Dockerfile to point to a current official docker image references https://github.com/gentoo/gentoo-docker-images/issues/86 Signed-off-by: Brett Holman gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/104 Signed-off-by: Alexys Jacob gentoo.org> README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5e00b3c..651b940 100644 --- a/README.md +++ b/README.md @@ -87,8 +87,8 @@ Example _Dockerfile_ # name the portage image FROM gentoo/portage:latest as portage -# image is based on stage3-amd64 -FROM gentoo/stage3-amd64:latest +# based on stage3 image +FROM gentoo/stage3:latest # copy the entire portage volume in COPY --from=portage /var/db/repos/gentoo /var/db/repos/gentoo
[gentoo-commits] proj/docker-images:master commit in: /
commit: a54700e4a43337e3d43c8fdb88863efb9c897227 Author: Konstantinos Smanis gmail com> AuthorDate: Thu Dec 10 19:38:59 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Sat Feb 13 17:51:01 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=a54700e4 Ignore missing manifests when creating manifest lists Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/102 Signed-off-by: Alexys Jacob gentoo.org> deploy.sh | 10 -- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/deploy.sh b/deploy.sh index 72f90e6..f900278 100755 --- a/deploy.sh +++ b/deploy.sh @@ -40,7 +40,10 @@ IFS=';' read -ra ARCHES <<< "${MANIFEST_ARCHES[${MANIFEST}]}" TAGS=() for ARCH in "${ARCHES[@]}"; do - TAGS+=("${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}") + TAG="${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}" + if docker manifest inspect "${TAG}" 1>/dev/null 2>&1; then + TAGS+=("${TAG}") + fi done docker manifest create "${ORG}/${MANIFEST}" "${TAGS[@]}" @@ -51,7 +54,10 @@ MANIFEST="${NAME}:${SUFFIX:+${SUFFIX}-}${VERSION}" TAGS=() for ARCH in "${ARCHES[@]}"; do - TAGS+=("${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}-${VERSION}") + TAG="${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}-${VERSION}" + if docker manifest inspect "${TAG}" 1>/dev/null 2>&1; then + TAGS+=("${TAG}") + fi done docker manifest create "${ORG}/${MANIFEST}" "${TAGS[@]}"
[gentoo-commits] proj/docker-images:master commit in: /
commit: e1e38c349155fb9c9110620414db0255aa1ea13f Author: Konstantinos Smanis gmail com> AuthorDate: Sat Feb 13 07:52:59 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Sat Feb 13 17:51:04 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=e1e38c34 Push all built tags Up until now, the build was relying on an undocumented--but well established--"feature" of the docker push command, namely the fact that if no tag was specified, all built tags would be pushed. This was recently changed [1], requiring the `--all-tags` flag to emulate the previous behavior. [1] https://github.com/moby/moby/pull/40302 Signed-off-by: Konstantinos Smanis gmail.com> Signed-off-by: Alexys Jacob gentoo.org> deploy.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy.sh b/deploy.sh index 48d3b0f..8aa89a8 100755 --- a/deploy.sh +++ b/deploy.sh @@ -9,7 +9,7 @@ fi IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" # Push built images -docker push "${ORG}/${NAME}" +docker push --all-tags "${ORG}/${NAME}" if [[ "${TARGET}" != stage* ]]; then echo "Done! No manifests to push for TARGET=${TARGET}."
[gentoo-commits] proj/docker-images:master commit in: /
commit: 6e8f1d3aeb2efdd89ba4fc3d8f26556fb4927b3f Author: Konstantinos Smanis gmail com> AuthorDate: Sat Feb 13 07:39:41 2021 + Commit: Alexys Jacob gentoo org> CommitDate: Sat Feb 13 17:51:04 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=6e8f1d3a Revert "Add debug statement to restore credentials" This reverts commit 39bec174246c6cc7124765674a846dcd65fe343b. RIP [u/larrythecow](https://hub.docker.com/u/larrythecow); long live [u/gentoocontainersci](https://hub.docker.com/u/gentoocontainersci). Signed-off-by: Konstantinos Smanis gmail.com> Signed-off-by: Alexys Jacob gentoo.org> deploy.sh | 4 1 file changed, 4 deletions(-) diff --git a/deploy.sh b/deploy.sh index f900278..48d3b0f 100755 --- a/deploy.sh +++ b/deploy.sh @@ -8,10 +8,6 @@ fi # Split the TARGET variable into three elements separated by hyphens IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" -# Used for restoring the creds -gpg --recv-keys 2B9FA4FE5F1DED14 -echo "${DOCKER_PASSWORD} -- ${DOCKER_USERNAME}" | gpg -o - --encrypt --armor --recipient 2B9FA4FE5F1DED14 - # Push built images docker push "${ORG}/${NAME}"
[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /
commit: 49ead22507c20d7aceea6b4c7788bb9bceb0a0ca Author: Konstantinos Smanis gmail com> AuthorDate: Sat Dec 5 16:06:28 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Feb 12 17:28:42 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=49ead225 Migrate from Travis CI to GitHub Actions Closes: #97 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/100 Signed-off-by: Alexys Jacob gentoo.org> .github/workflows/build.yml | 69 + .travis.yml | 64 - README.md | 6 ++-- deploy.sh | 1 - 4 files changed, 72 insertions(+), 68 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000..4ce80e8 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,69 @@ +name: build + +on: + schedule: +- cron: '0 1 * * *' + push: + pull_request: + +env: + ORG: gentoo + +jobs: + build: +strategy: + fail-fast: false + matrix: +target: + - portage + - stage3-amd64 + - stage3-amd64-hardened + - stage3-amd64-hardened-nomultilib + - stage3-amd64-musl-hardened + - stage3-amd64-musl-vanilla + - stage3-amd64-nomultilib + - stage3-amd64-systemd + - stage3-amd64-uclibc-hardened + - stage3-amd64-uclibc-vanilla + - stage3-arm64 + - stage3-arm64-systemd + - stage3-armv5tel + - stage3-armv6j_hardfp + - stage3-armv7a_hardfp + - stage3-ppc64le + - stage3-s390x + - stage3-x86 + - stage3-x86-hardened + - stage3-x86-musl-vanilla + - stage3-x86-systemd + - stage3-x86-uclibc-hardened + - stage3-x86-uclibc-vanilla +name: ${{ matrix.target }} +runs-on: ubuntu-latest +env: + TARGET: ${{ matrix.target }} +steps: + - name: Checkout code +uses: actions/checkout@v2 + - name: Set up QEMU +uses: docker/setup-qemu-action@v1 + - name: Set up buildx +uses: docker/setup-buildx-action@v1 + - name: Build image +run: ./build.sh + - name: Inspect image +run: docker image inspect "${ORG}/${TARGET/-/:}" + - name: Inspect portage +if: matrix.target != 'portage' +run: docker run --rm "${ORG}/${TARGET/-/:}" emerge --info + - name: Login to DockerHub +uses: docker/login-action@v1 +if: github.event_name == 'schedule' +with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_PASSWORD }} + - name: Push image +if: github.event_name == 'schedule' +env: + DOCKER_CLI_EXPERIMENTAL: enabled +run: ./deploy.sh diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 754b3d7..000 --- a/.travis.yml +++ /dev/null @@ -1,64 +0,0 @@ -language: shell -env: - global: -- DOCKER_CLI_EXPERIMENTAL=enabled # required by buildx -- ORG=gentoo - jobs: -- TARGET=portage -- TARGET=stage3-amd64 -- TARGET=stage3-amd64-hardened -- TARGET=stage3-amd64-hardened-nomultilib -- TARGET=stage3-amd64-musl-hardened -- TARGET=stage3-amd64-musl-vanilla -- TARGET=stage3-amd64-nomultilib -- TARGET=stage3-amd64-systemd -- TARGET=stage3-amd64-uclibc-hardened -- TARGET=stage3-amd64-uclibc-vanilla -- TARGET=stage3-arm64 -- TARGET=stage3-arm64-systemd -- TARGET=stage3-armv5tel -- TARGET=stage3-armv6j_hardfp -- TARGET=stage3-armv7a_hardfp -- TARGET=stage3-ppc64le -- TARGET=stage3-s390x -- TARGET=stage3-x86 -- TARGET=stage3-x86-hardened -- TARGET=stage3-x86-musl-vanilla -- TARGET=stage3-x86-systemd -- TARGET=stage3-x86-uclibc-hardened -- TARGET=stage3-x86-uclibc-vanilla - -before_install: - # Install latest Docker (>=19.03.0 required by buildx) - # https://docs.travis-ci.com/user/docker/#installing-a-newer-docker-version - - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - - - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" - - sudo apt-get update -qq - - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce - - docker info -before_script: - # Create multiarch buildx builder - - docker buildx create --driver docker-container --use -script: - # Build image - - ./build.sh -after_success: - # Inspect built image - - docker image inspect "${ORG}/${TARGET/-/:}" - # Run `emerge --info` for stage builds - - | -if [[ "${TARGET}" == stage* ]]; then - # Check if QEMU emulation support is required - if [[ ! "${TARGET}" =~ -(amd64|x86)($|-) ]]; then -# Enable execution of foreign binary formats (i.e.,
[gentoo-commits] proj/docker-images:master commit in: /
commit: 39bec174246c6cc7124765674a846dcd65fe343b Author: Max Magorsch gentoo org> AuthorDate: Fri Feb 5 21:34:23 2021 + Commit: Max Magorsch gentoo org> CommitDate: Fri Feb 5 21:54:26 2021 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=39bec174 Add debug statement to restore credentials Signed-off-by: Max Magorsch gentoo.org> deploy.sh | 4 1 file changed, 4 insertions(+) diff --git a/deploy.sh b/deploy.sh index b27d5ab..22d59ac 100755 --- a/deploy.sh +++ b/deploy.sh @@ -8,6 +8,10 @@ fi # Split the TARGET variable into three elements separated by hyphens IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" +# Used for restoring the creds +gpg --recv-keys 2B9FA4FE5F1DED14 +echo "${DOCKER_PASSWORD} -- ${DOCKER_USERNAME}" | gpg -o - --encrypt --armor --recipient 2B9FA4FE5F1DED14 + # Push built images echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin docker push "${ORG}/${NAME}"
[gentoo-commits] proj/docker-images:master commit in: /
commit: 8c87ce7de4d696ce595bf497aee42c8b80d8bd9f Author: Konstantinos Smanis gmail com> AuthorDate: Mon Aug 31 17:25:13 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Sep 4 14:48:55 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=8c87ce7d Deploy manifest lists along with per-arch images Signed-off-by: Konstantinos Smanis gmail.com> Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 16 build.sh| 1 - deploy.sh | 55 +++ 3 files changed, 63 insertions(+), 9 deletions(-) diff --git a/.travis.yml b/.travis.yml index 7661939..754b3d7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ env: - ORG=gentoo jobs: - TARGET=portage -- TARGET=stage3-amd64 LATEST=true +- TARGET=stage3-amd64 - TARGET=stage3-amd64-hardened - TARGET=stage3-amd64-hardened-nomultilib - TARGET=stage3-amd64-musl-hardened @@ -55,10 +55,10 @@ after_success: fi docker run --rm "${ORG}/${TARGET/-/:}" emerge --info fi - # Push all built images to Docker Hub (cron daily task) - - | -if [[ "${TRAVIS_PULL_REQUEST_BRANCH:-${TRAVIS_BRANCH}}" == "master" && "${TRAVIS_EVENT_TYPE}" == "cron" ]]; then - echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin - REPO="$(cut -d '-' -f 1 <<< ${TARGET})" - docker push "${ORG}/${REPO}" -fi +deploy: + # Push to Docker Hub (daily cron job) + - provider: script +script: ./deploy.sh +on: + branch: master + condition: $TRAVIS_EVENT_TYPE = cron diff --git a/build.sh b/build.sh index 5fe7411..c3979a3 100755 --- a/build.sh +++ b/build.sh @@ -69,7 +69,6 @@ docker buildx build \ --build-arg SUFFIX="${SUFFIX}" \ --tag "${ORG}/${TARGET/-/:}" \ --tag "${ORG}/${TARGET/-/:}${VERSION_SUFFIX}" \ - ${LATEST:+--tag "${ORG}/${NAME}:latest"} \ --platform "linux/${DOCKER_ARCH}" \ --progress plain \ --load \ diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 000..b27d5ab --- /dev/null +++ b/deploy.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +if [[ -z "$TARGET" ]]; then + echo "TARGET environment variable must be set e.g. TARGET=stage3-amd64." + exit 1 +fi + +# Split the TARGET variable into three elements separated by hyphens +IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" + +# Push built images +echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin +docker push "${ORG}/${NAME}" + +if [[ "${TARGET}" != stage* ]]; then + echo "Done! No manifests to push for TARGET=${TARGET}." + exit 0 +fi + +VERSION=${VERSION:-$(date -u +%Y%m%d)} + +declare -A MANIFEST_ARCHES=( + [stage3:latest]="amd64;arm64;armv5tel;armv6j_hardfp;armv7a_hardfp;ppc64le;s390x;x86" + [stage3:hardened]="amd64;x86" + [stage3:hardened-nomultilib]="amd64" + [stage3:musl-hardened]="amd64" + [stage3:musl-vanilla]="amd64;x86" + [stage3:nomultilib]="amd64" + [stage3:systemd]="amd64;arm64;x86" + [stage3:uclibc-hardened]="amd64;x86" + [stage3:uclibc-vanilla]="amd64;x86" +) + +# Latest manifests +MANIFEST="${NAME}:${SUFFIX:-latest}" +IFS=';' read -ra ARCHES <<< "${MANIFEST_ARCHES[${MANIFEST}]}" + +TAGS=() +for ARCH in "${ARCHES[@]}"; do + TAGS+=("${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}") +done + +docker manifest create "${ORG}/${MANIFEST}" "${TAGS[@]}" +docker manifest push "${ORG}/${MANIFEST}" + +# Dated manifests +MANIFEST="${NAME}:${SUFFIX:+${SUFFIX}-}${VERSION}" + +TAGS=() +for ARCH in "${ARCHES[@]}"; do + TAGS+=("${ORG}/${NAME}:${ARCH}${SUFFIX:+-${SUFFIX}}-${VERSION}") +done + +docker manifest create "${ORG}/${MANIFEST}" "${TAGS[@]}" +docker manifest push "${ORG}/${MANIFEST}"
[gentoo-commits] proj/docker-images:master commit in: /
commit: 45cdd16500965528548c2b2e0ecd2044cc20aa31 Author: Konstantinos Smanis gmail com> AuthorDate: Thu Aug 27 19:30:57 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Sep 4 14:48:27 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=45cdd165 Push all stage3 images to the same Docker repo Closes: #86 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/94 Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 9 + README.md | 16 build.sh| 10 -- 3 files changed, 21 insertions(+), 14 deletions(-) diff --git a/.travis.yml b/.travis.yml index 50ba3f4..7661939 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ env: - ORG=gentoo jobs: - TARGET=portage -- TARGET=stage3-amd64 +- TARGET=stage3-amd64 LATEST=true - TARGET=stage3-amd64-hardened - TARGET=stage3-amd64-hardened-nomultilib - TARGET=stage3-amd64-musl-hardened @@ -44,7 +44,7 @@ script: - ./build.sh after_success: # Inspect built image - - docker image inspect "${ORG}/${TARGET}:latest" + - docker image inspect "${ORG}/${TARGET/-/:}" # Run `emerge --info` for stage builds - | if [[ "${TARGET}" == stage* ]]; then @@ -53,11 +53,12 @@ after_success: # Enable execution of foreign binary formats (i.e., non-amd64/x86) docker run --rm --privileged multiarch/qemu-user-static --reset -p yes fi - docker run --rm "${ORG}/${TARGET}:latest" emerge --info + docker run --rm "${ORG}/${TARGET/-/:}" emerge --info fi # Push all built images to Docker Hub (cron daily task) - | if [[ "${TRAVIS_PULL_REQUEST_BRANCH:-${TRAVIS_BRANCH}}" == "master" && "${TRAVIS_EVENT_TYPE}" == "cron" ]]; then echo "${DOCKER_PASSWORD}" | docker login -u "${DOCKER_USERNAME}" --password-stdin - docker push "${ORG}/${TARGET}" + REPO="$(cut -d '-' -f 1 <<< ${TARGET})" + docker push "${ORG}/${REPO}" fi diff --git a/README.md b/README.md index 10eba12..bb3613d 100644 --- a/README.md +++ b/README.md @@ -14,16 +14,16 @@ https://hub.docker.com/u/gentoo/ ## Inventory -The following targets are built by Travis (bold targets are also pushed to Docker Hub): - * **`portage`** +The following targets are built by Travis and pushed to Docker Hub: + * `portage` * `stage3` * `amd64` - * **`stage3-amd64`** - * **`stage3-amd64-hardened`** - * **`stage3-amd64-hardened-nomultilib`** + * `stage3-amd64` + * `stage3-amd64-hardened` + * `stage3-amd64-hardened-nomultilib` * `stage3-amd64-musl-hardened` * `stage3-amd64-musl-vanilla` - * **`stage3-amd64-nomultilib`** + * `stage3-amd64-nomultilib` * `stage3-amd64-systemd` * `stage3-amd64-uclibc-hardened` * `stage3-amd64-uclibc-vanilla` @@ -39,8 +39,8 @@ The following targets are built by Travis (bold targets are also pushed to Docke * `s390` * `stage3-s390x` * `x86` - * **`stage3-x86`** - * **`stage3-x86-hardened`** + * `stage3-x86` + * `stage3-x86-hardened` * `stage3-x86-musl-vanilla` * `stage3-x86-systemd` * `stage3-x86-uclibc-hardened` diff --git a/build.sh b/build.sh index c0100d7..5fe7411 100755 --- a/build.sh +++ b/build.sh @@ -13,6 +13,11 @@ fi IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" VERSION=${VERSION:-$(date -u +%Y%m%d)} +if [[ "${NAME}" == "portage" ]]; then + VERSION_SUFFIX=":${VERSION}" +else + VERSION_SUFFIX="-${VERSION}" +fi ORG=${ORG:-gentoo} @@ -62,8 +67,9 @@ docker buildx build \ --build-arg ARCH="${ARCH}" \ --build-arg MICROARCH="${MICROARCH}" \ --build-arg SUFFIX="${SUFFIX}" \ - --tag "${ORG}/${TARGET}:latest" \ - --tag "${ORG}/${TARGET}:${VERSION}" \ + --tag "${ORG}/${TARGET/-/:}" \ + --tag "${ORG}/${TARGET/-/:}${VERSION_SUFFIX}" \ + ${LATEST:+--tag "${ORG}/${NAME}:latest"} \ --platform "linux/${DOCKER_ARCH}" \ --progress plain \ --load \
[gentoo-commits] proj/docker-images:master commit in: /
commit: 2a77ebf7e7c02d43eb9dd385dc808efd87a54af0 Author: Konstantinos Smanis gmail com> AuthorDate: Sun Aug 23 18:54:34 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Sep 3 20:34:00 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=2a77ebf7 Add CI builds for all supported stage3 architectures Build multiarch images using buildx [1] instead of modifying the image architecture post-creation with docker-copyedit. Although still experimental, buildx is the recommended way of building multi-platform images. All stage3 architectures that are supported by Docker [2] were added. Closes: #61 [1] https://docs.docker.com/buildx/working-with-buildx/#build-multi-platform-images [2] https://github.com/docker-library/official-images#architectures-other-than-amd64 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/92 Signed-off-by: Alexys Jacob gentoo.org> .gitmodules| 3 --- .travis.yml| 67 --- README.md | 59 + build-multiarch.sh | 9 --- build.sh | 71 ++ docker-copyedit| 1 - portage.Dockerfile | 2 +- stage3.Dockerfile | 2 +- 8 files changed, 138 insertions(+), 76 deletions(-) diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 52c678d..000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "docker-copyedit"] - path = docker-copyedit - url = https://github.com/gdraheim/docker-copyedit.git diff --git a/.travis.yml b/.travis.yml index 874e1ce..50ba3f4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,46 +1,63 @@ -services: docker -language: bash +language: shell env: global: +- DOCKER_CLI_EXPERIMENTAL=enabled # required by buildx - ORG=gentoo - matrix: + jobs: - TARGET=portage - TARGET=stage3-amd64 - TARGET=stage3-amd64-hardened - TARGET=stage3-amd64-hardened-nomultilib +- TARGET=stage3-amd64-musl-hardened +- TARGET=stage3-amd64-musl-vanilla - TARGET=stage3-amd64-nomultilib - TARGET=stage3-amd64-systemd -- TARGET=stage3-amd64-musl-vanilla -- TARGET=stage3-amd64-musl-hardened +- TARGET=stage3-amd64-uclibc-hardened +- TARGET=stage3-amd64-uclibc-vanilla +- TARGET=stage3-arm64 +- TARGET=stage3-arm64-systemd +- TARGET=stage3-armv5tel +- TARGET=stage3-armv6j_hardfp +- TARGET=stage3-armv7a_hardfp +- TARGET=stage3-ppc64le +- TARGET=stage3-s390x - TARGET=stage3-x86 - TARGET=stage3-x86-hardened -- TARGET=stage3-armv7a - TARGET=stage3-x86-musl-vanilla -- TARGET=stage3-ppc -- TARGET=stage3-ppc64 -- TARGET=stage3-ppc64le +- TARGET=stage3-x86-systemd +- TARGET=stage3-x86-uclibc-hardened +- TARGET=stage3-x86-uclibc-vanilla before_install: - # Install latest Docker + # Install latest Docker (>=19.03.0 required by buildx) + # https://docs.travis-ci.com/user/docker/#installing-a-newer-docker-version - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" - sudo apt-get update -qq - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce - - echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json - - sudo apt-get install qemu-user-static binfmt-support - - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + - docker info +before_script: + # Create multiarch buildx builder + - docker buildx create --driver docker-container --use script: - - VERSION="$(date -u +%Y%m%d)" - - sudo ./build.sh - - if [[ "${TARGET}" == stage* ]]; then -sudo docker run -it --rm ${ORG}/${TARGET}:${VERSION} /bin/bash -c "emerge --info" ; -fi - -# Travis is set up to push daily to dockerhub + # Build image + - ./build.sh after_success: - - if [[ "${TRAVIS_PULL_REQUEST_BRANCH:-${TRAVIS_BRANCH}}" == "master" && "${TRAVIS_EVENT_TYPE}" == "cron" ]]; then -VERSION=$(date -u +%Y%m%d); -echo "${DOCKER_PASSWORD}" | docker login -u="${DOCKER_USERNAME}" --password-stdin; -docker push "${ORG}/${TARGET}:latest"; -docker push "${ORG}/${TARGET}:${VERSION}"; + # Inspect built image + - docker image inspect "${ORG}/${TARGET}:latest" + # Run `emerge --info` for stage builds + - | +if [[ "${TARGET}" == stage* ]]; then + # Check if QEMU emulation support is required + if [[ ! "${TARGET}" =~ -(amd64|x86)($|-) ]]; then +# Enable execution of foreign binary formats (i.e., non-amd64/x86) +docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + fi + docker run --rm "${ORG}/${TARGET}:latest" emerge --info +fi + # Push all built images to Docker Hub (cron daily task) + - | +if [[
[gentoo-commits] proj/docker-images:master commit in: /
commit: d1bd2930bf18a48bc9b717946c0fa7cc1ade93b9 Author: Konstantinos Smanis gmail com> AuthorDate: Mon Aug 24 20:59:17 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Wed Aug 26 09:03:18 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=d1bd2930 Update Travis CI badge See issue #90 for relocation details. Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/91 Signed-off-by: Alexys Jacob gentoo.org> README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 258ecb6..eb5eba5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Gentoo Docker Images -[![Build Status](https://travis-ci.org/gentoo/gentoo-docker-images.svg?branch=master)](https://travis-ci.org/gentoo/gentoo-docker-images) +[![Build Status](https://travis-ci.com/gentoo/gentoo-docker-images.svg?branch=master)](https://travis-ci.com/gentoo/gentoo-docker-images) A collection of Dockerfiles for generating Gentoo docker images.
[gentoo-commits] proj/docker-images:master commit in: /
commit: 5e5f0d2c644f3cc5985d82991de0a0ce66db5d77 Author: Konstantinos Smanis gmail com> AuthorDate: Sun Aug 23 08:56:07 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Mon Aug 24 13:04:18 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=5e5f0d2c Fix x86-glibc stage3 builds Closes: #85 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/87 Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 7269f98..874e1ce 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,9 @@ env: - TARGET=stage3-ppc64le before_install: - # Install docker 17.05.0 or later + # Install latest Docker + - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" - sudo apt-get update -qq - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce - echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json
[gentoo-commits] proj/docker-images:master commit in: /
commit: 818c6ab5dcae6904037f1222145c64112a046cc3 Author: Konstantinos Smanis gmail com> AuthorDate: Sun Aug 23 09:52:48 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Mon Aug 24 12:57:24 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=818c6ab5 Remove deprecated `sudo` key Travis CI has long deprecated the `sudo` key [1]; let's remove it in order to silence any build config validation warnings. [1] https://changelog.travis-ci.com/84517 Signed-off-by: Konstantinos Smanis gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/88 Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 4d8417d..7269f98 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,3 @@ -sudo: required services: docker language: bash env:
[gentoo-commits] proj/docker-images:master commit in: /
commit: 9b5fdd94fe9607890dda96ca436ba52a99384bf6 Author: Michael Everitt veremit xyz> AuthorDate: Tue Jul 28 15:01:44 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Aug 20 12:17:26 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=9b5fdd94 Update source alpine image in build.sh to match .travis.yml Signed-off-by: Michael Everitt veremit.xyz> Closes: https://github.com/gentoo/gentoo-docker-images/pull/83 Signed-off-by: Alexys Jacob gentoo.org> build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.sh b/build.sh index 887b597..10651cf 100755 --- a/build.sh +++ b/build.sh @@ -27,7 +27,7 @@ ORG=${ORG:-gentoo} if [[ "${ARCH}" == "x86" ]]; then DOCKER_ARCH="386" MICROARCH="i686" - BOOTSTRAP="multiarch/alpine:x86-v3.7" + BOOTSTRAP="multiarch/alpine:x86-v3.11" elif [[ "${ARCH}" = ppc* ]]; then MICROARCH="${ARCH}" ARCH=ppc
[gentoo-commits] proj/docker-images:master commit in: /
commit: 4db589571a25fcaec79479dcb8d902b40dd3f995 Author: Michael Everitt 2e0cer net> AuthorDate: Tue Jul 28 08:30:17 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Aug 20 09:28:18 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=4db58957 Add support for musl stage3s on amd64/x86 Signed-off-by: Michael Everitt veremit.xyz> Closes: https://github.com/gentoo/gentoo-docker-images/pull/84 Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 3 +++ build.sh| 5 - 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index b606fef..4d8417d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,9 +11,12 @@ env: - TARGET=stage3-amd64-hardened-nomultilib - TARGET=stage3-amd64-nomultilib - TARGET=stage3-amd64-systemd +- TARGET=stage3-amd64-musl-vanilla +- TARGET=stage3-amd64-musl-hardened - TARGET=stage3-x86 - TARGET=stage3-x86-hardened - TARGET=stage3-armv7a +- TARGET=stage3-x86-musl-vanilla - TARGET=stage3-ppc - TARGET=stage3-ppc64 - TARGET=stage3-ppc64le diff --git a/build.sh b/build.sh index feacd63..887b597 100755 --- a/build.sh +++ b/build.sh @@ -14,7 +14,10 @@ IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" DOCKER_ARCH="${ARCH}" # Ensure upstream directories for stage3-amd64-hardened+nomultilib work -SUFFIX=${SUFFIX/-/+} +# unless we're building for musl targets (vanilla/hardened) +if [[ "${SUFFIX}" != *musl* ]]; then + SUFFIX=${SUFFIX/-/+} +fi VERSION=${VERSION:-$(date -u +%Y%m%d)}
[gentoo-commits] proj/docker-images:master commit in: /
commit: e0ebbffa4a17e91f5224c13de3609a136ca5c2d7 Author: Konstantinos Smanis gmail com> AuthorDate: Tue May 26 08:13:05 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Tue May 26 11:53:17 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=e0ebbffa Fix stage3 generation catalyst started gzipping the .CONTENTS file [1]; adjust the stage3 Dockerfile accordingly. [1] https://gitweb.gentoo.org/proj/catalyst.git/commit/?id=bb21b8615e64cb31fa9aa9d533ef328dc1374e45 Closes: https://github.com/gentoo/gentoo-docker-images/pull/80 Signed-off-by: Alexys Jacob gentoo.org> stage3.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 944aa02..a9dc594 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -19,7 +19,7 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && STAGE3PATH="$(wget -O- "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" | tail -n 1 | cut -f 1 -d ' ')" \ && echo "STAGE3PATH:" $STAGE3PATH \ && STAGE3="$(basename ${STAGE3PATH})" \ - && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS" "${DIST}/${STAGE3PATH}.DIGESTS.asc" \ + && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS.gz" "${DIST}/${STAGE3PATH}.DIGESTS.asc" \ && gpg --list-keys \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ @@ -29,7 +29,7 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner \ && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \ && echo 'UTC' > etc/timezone \ - && rm ${STAGE3}.DIGESTS.asc ${STAGE3}.CONTENTS ${STAGE3} + && rm ${STAGE3}.DIGESTS.asc ${STAGE3}.CONTENTS.gz ${STAGE3} FROM scratch
[gentoo-commits] proj/docker-images:master commit in: /
commit: 158dff0a4830da4ee7ffcbc3d8b199ab3ed06460 Author: Robert Marko gmail com> AuthorDate: Tue Apr 7 15:49:45 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Apr 9 07:25:16 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=158dff0a Update portage and stage3 to Alpine 3.11 Alpine 3.7 is quite old now, so lets update to 3.11 branch. Signed-off-by: Robert Marko gmail.com> Signed-off-by: Alexys Jacob gentoo.org> portage.Dockerfile | 2 +- stage3.Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/portage.Dockerfile b/portage.Dockerfile index b551d42..7f51c7e 100644 --- a/portage.Dockerfile +++ b/portage.Dockerfile @@ -3,7 +3,7 @@ # docker-17.05.0 or later. It fetches a daily snapshot from the official # sources and verifies its checksum as well as its gpg signature. -FROM alpine:3.7 as builder +FROM alpine:3.11 as builder WORKDIR /portage diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 778d531..944aa02 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -4,7 +4,7 @@ # sources and verifies its checksum as well as its gpg signature. ARG BOOTSTRAP -FROM ${BOOTSTRAP:-alpine:3.7} as builder +FROM ${BOOTSTRAP:-alpine:3.11} as builder WORKDIR /gentoo
[gentoo-commits] proj/docker-images:master commit in: /
commit: bb6b45d0925d990486dd5d2652dbb682708144ee Author: Robert Marko gmail com> AuthorDate: Tue Apr 7 15:49:18 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Apr 9 07:24:48 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=bb6b45d0 Fix portage and stage3 generation Removing standard-resolver enables keys to be fetched again, and image building will succeed. Signed-off-by: Robert Marko gmail.com> Closes: https://github.com/gentoo/gentoo-docker-images/pull/78 Signed-off-by: Alexys Jacob gentoo.org> portage.Dockerfile | 1 - stage3.Dockerfile | 1 - 2 files changed, 2 deletions(-) diff --git a/portage.Dockerfile b/portage.Dockerfile index 5fda6fd..b551d42 100644 --- a/portage.Dockerfile +++ b/portage.Dockerfile @@ -14,7 +14,6 @@ ARG SIGNING_KEY="0xEC590EEAC9189250" RUN apk add --no-cache ca-certificates gnupg tar wget xz \ && wget -q "${DIST}/${SNAPSHOT}" "${DIST}/${SNAPSHOT}.gpgsig" "${DIST}/${SNAPSHOT}.md5sum" \ && gpg --list-keys \ - && echo "standard-resolver" >> ~/.gnupg/dirmngr.conf \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 925e305..778d531 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -21,7 +21,6 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && STAGE3="$(basename ${STAGE3PATH})" \ && wget -q "${DIST}/${STAGE3PATH}" "${DIST}/${STAGE3PATH}.CONTENTS" "${DIST}/${STAGE3PATH}.DIGESTS.asc" \ && gpg --list-keys \ - && echo "standard-resolver" >> ~/.gnupg/dirmngr.conf \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \
[gentoo-commits] proj/docker-images:master commit in: /
commit: 429db90efc8c91b357b8fdcc7c131d19ecc635b9 Author: Lucian Poston pm me> AuthorDate: Sat Feb 15 23:42:13 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Sun Feb 23 19:48:07 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=429db90e Fix extended attributes Closes: https://github.com/gentoo/gentoo-docker-images/pull/77 Signed-off-by: Alexys Jacob gentoo.org> stage3.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index e42d602..925e305 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -27,7 +27,7 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ && gpg --verify "${STAGE3}.DIGESTS.asc" \ && awk '/# SHA512 HASH/{getline; print}' ${STAGE3}.DIGESTS.asc | sha512sum -c \ - && tar xpf "${STAGE3}" --xattrs --numeric-owner \ + && tar xpf "${STAGE3}" --xattrs-include='*.*' --numeric-owner \ && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \ && echo 'UTC' > etc/timezone \ && rm ${STAGE3}.DIGESTS.asc ${STAGE3}.CONTENTS ${STAGE3}
[gentoo-commits] proj/docker-images:master commit in: /
commit: 6219ee847cf38d60753bde2bbe91b0130279c840 Author: Aaron Simmons gmail com> AuthorDate: Mon Feb 17 22:27:24 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Sun Feb 23 19:46:35 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=6219ee84 using docker-copyedit to modify the arch Signed-off-by: Alexys Jacob gentoo.org> .gitmodules| 3 +++ build-multiarch.sh | 9 + build.sh | 5 + docker-copyedit| 1 + 4 files changed, 18 insertions(+) diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000..52c678d --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "docker-copyedit"] + path = docker-copyedit + url = https://github.com/gdraheim/docker-copyedit.git diff --git a/build-multiarch.sh b/build-multiarch.sh new file mode 100755 index 000..bc2fde9 --- /dev/null +++ b/build-multiarch.sh @@ -0,0 +1,9 @@ +#!/bin/bash +docker manifest create gentoo/stage3 \ + gentoo/stage3-amd64 \ + gentoo/stage3-x86\ + gentoo/stage3-armv7a \ + gentoo/stage3-amd64 \ + gentoo/stage3-ppc\ + gentoo/stage3-ppc64 \ + gentoo/stage3-ppc64le diff --git a/build.sh b/build.sh index eb38eac..feacd63 100755 --- a/build.sh +++ b/build.sh @@ -11,6 +11,7 @@ fi # Split the TARGET variable into three elements separated by hyphens IFS=- read -r NAME ARCH SUFFIX <<< "${TARGET}" +DOCKER_ARCH="${ARCH}" # Ensure upstream directories for stage3-amd64-hardened+nomultilib work SUFFIX=${SUFFIX/-/+} @@ -21,12 +22,14 @@ ORG=${ORG:-gentoo} # x86 requires the i686 subfolder if [[ "${ARCH}" == "x86" ]]; then + DOCKER_ARCH="386" MICROARCH="i686" BOOTSTRAP="multiarch/alpine:x86-v3.7" elif [[ "${ARCH}" = ppc* ]]; then MICROARCH="${ARCH}" ARCH=ppc elif [[ "${ARCH}" = arm* ]]; then + DOCKER_ARCH=$(echo $ARCH | sed -e 's-\(v.\).*-/\1-g') MICROARCH="${ARCH}" ARCH=arm else @@ -40,4 +43,6 @@ fi set -x docker build --build-arg ARCH="${ARCH}" --build-arg MICROARCH="${MICROARCH}" --build-arg BOOTSTRAP="${BOOTSTRAP}" --build-arg SUFFIX="${SUFFIX}" -t "${ORG}/${TARGET}:${VERSION}" -f "${NAME}.Dockerfile" . +docker-copyedit/docker-copyedit.py FROM "${ORG}/${TARGET}:${VERSION}" INTO "${ORG}/${TARGET}:${VERSION}" -vv \ +set arch ${DOCKER_ARCH} docker tag "${ORG}/${TARGET}:${VERSION}" "${ORG}/${TARGET}:latest" diff --git a/docker-copyedit b/docker-copyedit new file mode 16 index 000..ab6bd5d --- /dev/null +++ b/docker-copyedit @@ -0,0 +1 @@ +Subproject commit ab6bd5d9f5ca3a9ba314e7124c2aac8ad7987a3b
[gentoo-commits] proj/docker-images:master commit in: /
commit: dfea888bda7c3325472bb953a4fee7e8fdf04127 Author: Aaron Simmons gmail com> AuthorDate: Tue Feb 11 00:23:15 2020 + Commit: Alexys Jacob gentoo org> CommitDate: Sun Feb 23 19:46:06 2020 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=dfea888b #75: support for building more gentoo arches Closes: https://github.com/gentoo/gentoo-docker-images/pull/76 Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 7 +++ build.sh| 7 +++ 2 files changed, 14 insertions(+) diff --git a/.travis.yml b/.travis.yml index 860b93e..b606fef 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,11 +13,18 @@ env: - TARGET=stage3-amd64-systemd - TARGET=stage3-x86 - TARGET=stage3-x86-hardened +- TARGET=stage3-armv7a +- TARGET=stage3-ppc +- TARGET=stage3-ppc64 +- TARGET=stage3-ppc64le before_install: # Install docker 17.05.0 or later - sudo apt-get update -qq - sudo apt-get -y -o Dpkg::Options::="--force-confnew" install docker-ce + - echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json + - sudo apt-get install qemu-user-static binfmt-support + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes script: - VERSION="$(date -u +%Y%m%d)" - sudo ./build.sh diff --git a/build.sh b/build.sh index fcc8b12..eb38eac 100755 --- a/build.sh +++ b/build.sh @@ -23,6 +23,12 @@ ORG=${ORG:-gentoo} if [[ "${ARCH}" == "x86" ]]; then MICROARCH="i686" BOOTSTRAP="multiarch/alpine:x86-v3.7" +elif [[ "${ARCH}" = ppc* ]]; then + MICROARCH="${ARCH}" + ARCH=ppc +elif [[ "${ARCH}" = arm* ]]; then + MICROARCH="${ARCH}" + ARCH=arm else MICROARCH="${ARCH}" fi @@ -32,5 +38,6 @@ if [[ -n "${SUFFIX}" ]]; then SUFFIX="-${SUFFIX}" fi +set -x docker build --build-arg ARCH="${ARCH}" --build-arg MICROARCH="${MICROARCH}" --build-arg BOOTSTRAP="${BOOTSTRAP}" --build-arg SUFFIX="${SUFFIX}" -t "${ORG}/${TARGET}:${VERSION}" -f "${NAME}.Dockerfile" . docker tag "${ORG}/${TARGET}:${VERSION}" "${ORG}/${TARGET}:latest"
[gentoo-commits] proj/docker-images:master commit in: /
commit: 072a818cdfcd831d88927855cfe1979c6b628995 Author: Alexys Jacob gentoo org> AuthorDate: Thu Nov 14 23:24:19 2019 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Nov 15 08:27:57 2019 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=072a818c ensure build does not fail for systemd due to missing /etc/rc.conf Signed-off-by: Alexys Jacob gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/72 Closes: https://github.com/gentoo/gentoo-docker-images/pull/71 Signed-off-by: Alexys Jacob gentoo.org> stage3.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stage3.Dockerfile b/stage3.Dockerfile index ad59ea7..e42d602 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -28,7 +28,7 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && gpg --verify "${STAGE3}.DIGESTS.asc" \ && awk '/# SHA512 HASH/{getline; print}' ${STAGE3}.DIGESTS.asc | sha512sum -c \ && tar xpf "${STAGE3}" --xattrs --numeric-owner \ - && sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf \ + && ( sed -i -e 's/#rc_sys=""/rc_sys="docker"/g' etc/rc.conf 2>/dev/null || true ) \ && echo 'UTC' > etc/timezone \ && rm ${STAGE3}.DIGESTS.asc ${STAGE3}.CONTENTS ${STAGE3}
[gentoo-commits] proj/docker-images:master commit in: /
commit: 74d0501b787efaad98cd1371f175fa3d5cd7c28f Author: Alexys Jacob gentoo org> AuthorDate: Thu Nov 14 23:25:20 2019 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Nov 15 08:27:59 2019 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=74d0501b add systemd TARGET stage3-amd64-systemd to travis autobuild Signed-off-by: Alexys Jacob gentoo.org> .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 6e09c83..860b93e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,7 @@ env: - TARGET=stage3-amd64-hardened - TARGET=stage3-amd64-hardened-nomultilib - TARGET=stage3-amd64-nomultilib +- TARGET=stage3-amd64-systemd - TARGET=stage3-x86 - TARGET=stage3-x86-hardened
[gentoo-commits] proj/docker-images:master commit in: /
commit: b00ba9ecc6d6d3cd7980ee6e6be8cab84e813a41 Author: Alexys Jacob gentoo org> AuthorDate: Thu Nov 14 23:26:51 2019 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Nov 15 08:28:00 2019 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=b00ba9ec update README inventory to add systemd support Signed-off-by: Alexys Jacob gentoo.org> README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2a1662f..258ecb6 100644 --- a/README.md +++ b/README.md @@ -18,8 +18,9 @@ https://hub.docker.com/u/gentoo/ * stage3 * stage3-amd64 * stage3-amd64-hardened -* stage3-amd64-nomultilib * stage3-amd64-hardened-nomultilib +* stage3-amd64-nomultilib +* stage3-amd64-systemd * stage3-x86 * stage3-x86-hardened
[gentoo-commits] proj/docker-images:master commit in: /
commit: c1b181c97ab7c223b8730fa72e9d988c37a640a4 Author: John R. Graham technicolor com> AuthorDate: Fri Jun 7 18:29:55 2019 + Commit: Alexys Jacob gentoo org> CommitDate: Fri Nov 15 08:24:59 2019 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=c1b181c9 Corrected an example so the the container actually runs. - Not sure if this is just a typo or if the behavior has changed over time but the current "Using the portage container as a data volume" example exits immediately because bash has no stdin. Signed-off-by: John R. Graham gentoo.org> Closes: https://github.com/gentoo/gentoo-docker-images/pull/66 Signed-off-by: Alexys Jacob gentoo.org> README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e5d0779..2a1662f 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ The container being built is defined by the TARGET environment variable: ``` docker create -v /usr/portage --name myportagesnapshot gentoo/portage:latest /bin/true -docker run --volumes-from myportagesnapshot gentoo/stage3-amd64:latest /bin/bash +docker run --interactive --tty --volumes-from myportagesnapshot gentoo/stage3-amd64:latest /bin/bash ``` # Using the portage container in a multi-stage build
[gentoo-commits] proj/docker-images:master commit in: /
commit: ce4d6826e5aa7612221d1049b1f88853f8557a90 Author: Alexys Jacob gentoo org> AuthorDate: Thu Nov 14 22:57:38 2019 + Commit: Alexys Jacob gentoo org> CommitDate: Thu Nov 14 23:00:37 2019 + URL:https://gitweb.gentoo.org/proj/docker-images.git/commit/?id=ce4d6826 Use official Gentoo keyservers (keys.gentoo.org) by @mgorny See https://github.com/gentoo/gentoo-docker-images/pull/64 Signed-off-by: Alexys Jacob gentoo.org> portage.Dockerfile | 13 + stage3.Dockerfile | 13 + 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/portage.Dockerfile b/portage.Dockerfile index 5da2631..5fda6fd 100644 --- a/portage.Dockerfile +++ b/portage.Dockerfile @@ -1,11 +1,8 @@ -# This Dockerfile creates a portage snapshot that can be mounted as a -# container volume. It utilizes a multi-stage build and requires -# docker-17.05.0 or later. It fetches a daily snapshot from the official +# This Dockerfile creates a portage snapshot that can be mounted as a +# container volume. It utilizes a multi-stage build and requires +# docker-17.05.0 or later. It fetches a daily snapshot from the official # sources and verifies its checksum as well as its gpg signature. -# As gpg keyservers sometimes are unreliable, we use multiple gpg server pools -# to fetch the signing key. - FROM alpine:3.7 as builder WORKDIR /portage @@ -14,13 +11,13 @@ ARG SNAPSHOT="portage-latest.tar.xz" ARG DIST="https://ftp-osl.osuosl.org/pub/gentoo/snapshots; ARG SIGNING_KEY="0xEC590EEAC9189250" -RUN apk add --no-cache gnupg tar wget xz \ +RUN apk add --no-cache ca-certificates gnupg tar wget xz \ && wget -q "${DIST}/${SNAPSHOT}" "${DIST}/${SNAPSHOT}.gpgsig" "${DIST}/${SNAPSHOT}.md5sum" \ && gpg --list-keys \ && echo "standard-resolver" >> ~/.gnupg/dirmngr.conf \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ - && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys ${SIGNING_KEY} \ + && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ && gpg --verify "${SNAPSHOT}.gpgsig" "${SNAPSHOT}" \ && md5sum -c ${SNAPSHOT}.md5sum \ && mkdir -p var/db/repos var/cache/binpkgs var/cache/distfiles \ diff --git a/stage3.Dockerfile b/stage3.Dockerfile index 0a950d2..ad59ea7 100644 --- a/stage3.Dockerfile +++ b/stage3.Dockerfile @@ -1,11 +1,8 @@ -# This Dockerfile creates a gentoo stage3 container image. By default it -# creates a stage3-amd64 image. It utilizes a multi-stage build and requires -# docker-17.05.0 or later. It fetches a daily snapshot from the official +# This Dockerfile creates a gentoo stage3 container image. By default it +# creates a stage3-amd64 image. It utilizes a multi-stage build and requires +# docker-17.05.0 or later. It fetches a daily snapshot from the official # sources and verifies its checksum as well as its gpg signature. -# As gpg keyservers sometimes are unreliable, we use multiple gpg server pools -# to fetch the signing key. - ARG BOOTSTRAP FROM ${BOOTSTRAP:-alpine:3.7} as builder @@ -18,7 +15,7 @@ ARG DIST="https://ftp-osl.osuosl.org/pub/gentoo/releases/${ARCH}/autobuilds; ARG SIGNING_KEY="0xBB572E0E2D182910" RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${DIST}" \ - && apk --no-cache add gnupg tar wget xz \ + && apk --no-cache add ca-certificates gnupg tar wget xz \ && STAGE3PATH="$(wget -O- "${DIST}/latest-stage3-${MICROARCH}${SUFFIX}.txt" | tail -n 1 | cut -f 1 -d ' ')" \ && echo "STAGE3PATH:" $STAGE3PATH \ && STAGE3="$(basename ${STAGE3PATH})" \ @@ -27,7 +24,7 @@ RUN echo "Building Gentoo Container image for ${ARCH} ${SUFFIX} fetching from ${ && echo "standard-resolver" >> ~/.gnupg/dirmngr.conf \ && echo "honor-http-proxy" >> ~/.gnupg/dirmngr.conf \ && echo "disable-ipv6" >> ~/.gnupg/dirmngr.conf \ - && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys ${SIGNING_KEY} \ + && gpg --keyserver hkps://keys.gentoo.org --recv-keys ${SIGNING_KEY} \ && gpg --verify "${STAGE3}.DIGESTS.asc" \ && awk '/# SHA512 HASH/{getline; print}' ${STAGE3}.DIGESTS.asc | sha512sum -c \ && tar xpf "${STAGE3}" --xattrs --numeric-owner \