[gentoo-commits] proj/docker-images:master commit in: .github/workflows/, /

2024-05-26 Thread John Helmert III
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: /

2024-05-26 Thread John Helmert III
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: /

2024-05-26 Thread John Helmert III
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: /

2024-05-26 Thread John Helmert III
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: /

2024-03-02 Thread John Helmert III
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: /

2024-03-02 Thread John Helmert III
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: /

2024-03-02 Thread John Helmert III
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: /

2024-02-18 Thread John Helmert III
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/

2024-02-07 Thread John Helmert III
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/

2024-02-07 Thread John Helmert III
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: /

2024-02-07 Thread John Helmert III
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: /

2024-02-07 Thread John Helmert III
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: /

2024-02-07 Thread John Helmert III
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: /

2024-02-07 Thread John Helmert III
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/

2024-02-07 Thread John Helmert III
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/

2023-11-26 Thread John Helmert III
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/

2023-11-26 Thread John Helmert III
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: /

2023-11-26 Thread John Helmert III
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: /

2023-10-14 Thread John Helmert III
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/

2023-10-14 Thread John Helmert III
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/

2023-10-14 Thread John Helmert III
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/

2023-06-29 Thread John Helmert III
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/

2023-04-02 Thread John Helmert III
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/

2023-01-07 Thread John Helmert III
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: /

2022-12-21 Thread John Helmert III
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/

2022-09-28 Thread John Helmert III
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: /

2022-05-23 Thread Alexys Jacob
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/

2022-04-12 Thread Alexys Jacob
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/, /

2022-03-02 Thread Alexys Jacob
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/, /

2022-03-02 Thread Alexys Jacob
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/, /

2022-02-18 Thread Alexys Jacob
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: /

2022-02-18 Thread Alexys Jacob
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/

2021-12-01 Thread Alexys Jacob
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/, /

2021-10-21 Thread Alexys Jacob
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: /

2021-10-21 Thread Alexys Jacob
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: /

2021-08-30 Thread Alexys Jacob
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/

2021-08-20 Thread Alexys Jacob
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/, /

2021-05-03 Thread Alexys Jacob
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: /

2021-04-30 Thread Alexys Jacob
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: /

2021-02-13 Thread Alexys Jacob
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: /

2021-02-13 Thread Alexys Jacob
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: /

2021-02-13 Thread Alexys Jacob
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/, /

2021-02-12 Thread Alexys Jacob
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: /

2021-02-05 Thread Max Magorsch
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: /

2020-09-04 Thread Alexys Jacob
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: /

2020-09-04 Thread Alexys Jacob
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: /

2020-09-03 Thread Alexys Jacob
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: /

2020-08-26 Thread Alexys Jacob
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: /

2020-08-24 Thread Alexys Jacob
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: /

2020-08-24 Thread Alexys Jacob
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: /

2020-08-20 Thread Alexys Jacob
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: /

2020-08-20 Thread Alexys Jacob
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: /

2020-05-26 Thread Alexys Jacob
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: /

2020-04-09 Thread Alexys Jacob
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: /

2020-04-09 Thread Alexys Jacob
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: /

2020-02-23 Thread Alexys Jacob
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: /

2020-02-23 Thread Alexys Jacob
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: /

2020-02-23 Thread Alexys Jacob
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: /

2019-11-15 Thread Alexys Jacob
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: /

2019-11-15 Thread Alexys Jacob
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: /

2019-11-15 Thread Alexys Jacob
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: /

2019-11-15 Thread Alexys Jacob
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: /

2019-11-14 Thread Alexys Jacob
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 \