diff --git a/8.0-rc/Dockerfile b/8.0-rc/Dockerfile index af40d15c2..f9e433a7f 100644 --- a/8.0-rc/Dockerfile +++ b/8.0-rc/Dockerfile @@ -4,7 +4,7 @@ # PLEASE DO NOT EDIT IT DIRECTLY. # -FROM ubuntu:jammy +FROM ubuntu:noble # add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get added RUN set -eux; \ @@ -57,10 +57,10 @@ RUN set -eux; \ \ # download/install MongoDB PGP keys export GNUPGHOME="$(mktemp -d)"; \ - wget -O KEYS 'https://pgp.mongodb.com/server-dev.asc' 'https://pgp.mongodb.com/server-7.0.asc' 'https://pgp.mongodb.com/server-8.0.asc'; \ + wget -O KEYS 'https://pgp.mongodb.com/server-dev.asc' 'https://pgp.mongodb.com/server-8.0.asc'; \ gpg --batch --import KEYS; \ mkdir -p /etc/apt/keyrings; \ - gpg --batch --export --armor '28DE23AF08040FB24C33F36381B0EBBBADCEA95C' 'E58830201F7DD82CD808AA84160D26BB1785BA38' '4B0752C1BCA238C0B4EE14DC41DE058A4E7DCA05' > /etc/apt/keyrings/mongodb.asc; \ + gpg --batch --export --armor '28DE23AF08040FB24C33F36381B0EBBBADCEA95C' '4B0752C1BCA238C0B4EE14DC41DE058A4E7DCA05' > /etc/apt/keyrings/mongodb.asc; \ gpgconf --kill all; \ rm -rf "$GNUPGHOME" KEYS; \ \ @@ -84,9 +84,9 @@ ARG MONGO_REPO=repo.mongodb.org ENV MONGO_PACKAGE=${MONGO_PACKAGE} MONGO_REPO=${MONGO_REPO} ENV MONGO_MAJOR testing -RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/ubuntu jammy/${MONGO_PACKAGE%-unstable}/$MONGO_MAJOR multiverse" | tee "/etc/apt/sources.list.d/${MONGO_PACKAGE%-unstable}.list" -# 8.0 is not GA, so we need the previous release for mongodb-mongosh and mongodb-database-tools -RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/ubuntu jammy/${MONGO_PACKAGE%-unstable}/7.0 multiverse" | tee "/etc/apt/sources.list.d/mongodb-previous.list" +RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/ubuntu noble/${MONGO_PACKAGE%-unstable}/$MONGO_MAJOR multiverse" | tee "/etc/apt/sources.list.d/${MONGO_PACKAGE%-unstable}.list" +# add GA repo for mongodb-mongosh and mongodb-database-tools +RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/ubuntu noble/${MONGO_PACKAGE%-unstable}/8.0 multiverse" | tee "/etc/apt/sources.list.d/mongodb-8.0.list" # https://docs.mongodb.org/master/release-notes/8.0/ ENV MONGO_VERSION 8.0.0~rc16 diff --git a/Dockerfile-linux.template b/Dockerfile-linux.template index d3fb1624f..a6e0c7c99 100644 --- a/Dockerfile-linux.template +++ b/Dockerfile-linux.template @@ -81,13 +81,8 @@ ENV MONGO_PACKAGE=${MONGO_PACKAGE} MONGO_REPO=${MONGO_REPO} ENV MONGO_MAJOR {{ if env.version != env.rcVersion then "testing" else env.version end }} RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/{{ target.image | gsub(":.*$"; "") }} {{ target.suite }}/${MONGO_PACKAGE%-unstable}/$MONGO_MAJOR {{ if target.image | test("^debian") then "main" else "multiverse" end }}" | tee "/etc/apt/sources.list.d/${MONGO_PACKAGE%-unstable}.list" {{ if env.version != env.rcVersion then ( -}} -{{ if .dockerNeedsVersion then ( -}} -# {{ env.rcVersion }} is not GA, so we need the previous release for mongodb-mongosh and mongodb-database-tools -RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/{{ target.image | gsub(":.*$"; "") }} {{ target.suite }}/${MONGO_PACKAGE%-unstable}/{{ .dockerNeedsVersion }} {{ if target.image | test("^debian") then "main" else "multiverse" end }}" | tee "/etc/apt/sources.list.d/mongodb-previous.list" -{{ ) else ( -}} # add GA repo for mongodb-mongosh and mongodb-database-tools RUN echo "deb [ signed-by=/etc/apt/keyrings/mongodb.asc ] http://$MONGO_REPO/apt/{{ target.image | gsub(":.*$"; "") }} {{ target.suite }}/${MONGO_PACKAGE%-unstable}/{{ env.rcVersion }} {{ if target.image | test("^debian") then "main" else "multiverse" end }}" | tee "/etc/apt/sources.list.d/mongodb-{{ env.rcVersion }}.list" -{{ ) end -}} {{ ) else "" end -}} {{ if .notes then ( -}} diff --git a/versions.json b/versions.json index 5ea6c16f1..71b64cf96 100644 --- a/versions.json +++ b/versions.json @@ -339,9 +339,8 @@ "8.0-rc": { "changes": "https://jira.mongodb.org/issues/?jql=project%20%3D%20SERVER%20AND%20fixVersion%20%3D%20%228.0.0-rc16%22%20ORDER%20BY%20status%20DESC%2C%20priority%20DESC", "date": "08/03/2024", - "dockerNeedsVersion": "7.0", "githash": "c05b57203089bb276c31ab34dfc538f1da972a36", - "linux": "ubuntu2204", + "linux": "ubuntu2404", "notes": "https://docs.mongodb.org/master/release-notes/8.0/", "pgp": [ { @@ -350,12 +349,6 @@ ], "url": "https://pgp.mongodb.com/server-dev.asc" }, - { - "fingerprints": [ - "E58830201F7DD82CD808AA84160D26BB1785BA38" - ], - "url": "https://pgp.mongodb.com/server-7.0.asc" - }, { "fingerprints": [ "4B0752C1BCA238C0B4EE14DC41DE058A4E7DCA05" @@ -387,6 +380,14 @@ "image": "ubuntu:jammy", "suite": "jammy" }, + "ubuntu2404": { + "arches": [ + "amd64", + "arm64v8" + ], + "image": "ubuntu:noble", + "suite": "noble" + }, "windows": { "arches": [ "amd64" diff --git a/versions.sh b/versions.sh index 7969944b4..1640e35df 100755 --- a/versions.sh +++ b/versions.sh @@ -62,21 +62,8 @@ shell="$( | ($splitVersion[0] | tonumber) >= 5 and ($splitVersion[1] | tonumber) > 0 | not ) - - # if a given pre-release version has not had a GA release yet, we need the previous release for mongodb-mongosh and mongodb-database-tools - | (.version | rtrimstr("-rc")) as $rcVersion - | if .version != $rcVersion and (.meta.version | ltrimstr($rcVersion) | startswith(".0-")) then - .meta.dockerNeedsVersion = ($rcVersion | split(".") | .[0] |= (tonumber -1 | tostring) | join(".")) - else . end ] - # filter the list of "downloads" (targets) down to the set of targets of (M-1).0 if we need that previous version (see "dockerNeedsVersion" above) - | (map({ key: .version, value: [ .meta.downloads[].target ] }) | from_entries) as $targets - | map(if .meta | has("dockerNeedsVersion") then - .meta.dockerNeedsVersion as $needsVersion - | .meta.downloads |= map(select(.target as $target | $targets[$needsVersion] | index($target))) - else . end) - # now convert all that data to a basic shell list + map so we can loop over/use it appropriately | "allVersions=( " + ( map(.version | ., if endswith("-rc") then empty else . + "-rc" end) @@ -138,7 +125,6 @@ for version in "${versions[@]}"; do "githash", "notes", "version", - "dockerNeedsVersion", empty ] | index($key))) + { @@ -148,11 +134,6 @@ for version in "${versions[@]}"; do $pgp.dev else empty end, - if .dockerNeedsVersion then - # see "dockerNeedsVersion" notes above - $pgp[.dockerNeedsVersion] - else empty end, - $pgp[$rcVersion], empty