Skip to content

Commit efea570

Browse files
committed
Use rsa4096 key from the neurodebian keyring for newer releases
1 parent 142d889 commit efea570

1 file changed

Lines changed: 16 additions & 2 deletions

File tree

gen_dockerfiles

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,13 @@ ND_CFG=neurodebian/neurodebian.cfg
5353
ND_CFG_TOOL=neurodebian/tools/nd_querycfg
5454

5555
ND_STACKBREW=stackbrew/library/neurodebian
56+
57+
function get_key() {
58+
gpg --import --import-options show-only --import neurodebian/keys/neurodebian-archive-keyring.gpg 2>/dev/null | sed -n -e "/^pub.*$1/{n;s/^[[:space:]]*//;p;}"
59+
}
60+
GPG_OLD_KEY=$(get_key dsa1024)
61+
GPG_NEW_KEY=$(get_key rsa4096)
62+
5663
# remove previously generated files
5764
git rm -fr dockerfiles/*
5865

@@ -98,6 +105,13 @@ for release in $all_releases; do
98105
sed_cmd=
99106
fi
100107
release_tag=$release$release_suf
108+
# Use older key in older releases
109+
if [[ "$release_desc" =~ ^Ubuntu\ 2[024].* ]] || [[ "$release_desc" =~ ^Debian\ GNU/Linux\ 1[012]* ]]; then
110+
print_verbose 1 "Using old GPG key for $release_desc"
111+
GPG_KEY="$GPG_OLD_KEY";
112+
else
113+
GPG_KEY="$GPG_NEW_KEY";
114+
fi
101115
# Generate dockerfile
102116
release_tags+=" ${release}_$release_suf"
103117
mkdir -p "dockerfiles/$release_tag"
@@ -124,9 +138,9 @@ RUN set -x \\
124138
# this makes "apt-key list" output prettier too!
125139
RUN set -x \\
126140
&& export GNUPGHOME="\$(mktemp -d)" \\
127-
&& gpg --batch --keyserver keyserver.ubuntu.com --recv-keys DD95CC430502E37EF840ACEEA5D32F012649A5A9 \\
141+
&& gpg --batch --keyserver keyserver.ubuntu.com --recv-keys $GPG_KEY \\
128142
&& mkdir -p /etc/apt/keyrings \\
129-
&& gpg --batch --export --armor DD95CC430502E37EF840ACEEA5D32F012649A5A9 > /etc/apt/keyrings/neurodebian.asc \\
143+
&& gpg --batch --export --armor $GPG_KEY > /etc/apt/keyrings/neurodebian.asc \\
130144
&& rm -rf "\$GNUPGHOME"
131145
132146
RUN { \\

0 commit comments

Comments
 (0)