Add additional apt repos we use during the build, and framework for

adding more down the road
This commit is contained in:
Kris Moore
2020-05-05 16:33:09 -04:00
parent 7bf18dd961
commit 690431c207
5 changed files with 195 additions and 3 deletions

View File

@@ -1,5 +1,23 @@
{
"aptrepo":"",
"apt-repos":{
"url":"http://apt.tn.ixsystems.com/apt-direct/debian/unstable/",
"distribution":"bullseye",
"components":"main non-free contrib",
"additional":[
{
"url":"http://apt.tn.ixsystems.com/apt-direct/truenas/docker/",
"distribution":"buster",
"component":"stable",
"key":"keys/docker.gpg"
},
{
"url":"http://apt.tn.ixsystems.com/apt-direct/truenas/gluster/",
"distribution":"bullseye",
"component":"main",
"key":"keys/gluster.gpg"
}
]
},
"sources":[
{
"name":"py-libzfs",

51
keys/docker.gpg Normal file
View File

@@ -0,0 +1,51 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=A8vo
-----END PGP PUBLIC KEY BLOCK-----

51
keys/gluster.gpg Normal file
View File

@@ -0,0 +1,51 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=A8vo
-----END PGP PUBLIC KEY BLOCK-----

51
keys/truenas.gpg Normal file
View File

@@ -0,0 +1,51 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=A8vo
-----END PGP PUBLIC KEY BLOCK-----

View File

@@ -52,14 +52,35 @@ make_bootstrapdir() {
mount -t tmpfs -o size=8G tmpfs ${TMPFS}
# Bootstrap the debian base system
debootstrap bullseye ${CHROOT_BASEDIR} || exit_err "Failed debootstrap"
apt-key add keys/truenas.gpg 2>/dev/null >/dev/null || exit_err "Failed adding truenas.gpg apt-key"
aptrepo=$(jq -r '."apt-repos"."url"' $MANIFEST)
aptdist=$(jq -r '."apt-repos"."distribution"' $MANIFEST)
aptcomp=$(jq -r '."apt-repos"."components"' $MANIFEST)
debootstrap --keyring /etc/apt/trusted.gpg bullseye ${CHROOT_BASEDIR} $aptrepo || exit_err "Failed debootstrap"
mount proc ${CHROOT_BASEDIR}/proc -t proc
mount sysfs ${CHROOT_BASEDIR}/sys -t sysfs
# Add extra packages for builds
chroot ${CHROOT_BASEDIR} apt install -y build-essential dh-make devscripts fakeroot || exit_err "Failed chroot setup"
sed -i'' 's| main| main non-free contrib|g' ${CHROOT_BASEDIR}/etc/apt/sources.list || exit_err "Failed sed"
# Save the correct repo in sources.list
echo "deb $aptrepo $aptdist $aptcomp" > ${CHROOT_BASEDIR}/etc/apt/sources.list
# Add additional repos
for k in $(jq -r '."apt-repos"."additional" | keys[]' ${MANIFEST} 2>/dev/null | tr -s '\n' ' ')
do
apturl=$(jq -r '."apt-repos"."additional"['$k']."url"' $MANIFEST)
aptdist=$(jq -r '."apt-repos"."additional"['$k']."distribution"' $MANIFEST)
aptcomp=$(jq -r '."apt-repos"."additional"['$k']."component"' $MANIFEST)
aptkey=$(jq -r '."apt-repos"."additional"['$k']."key"' $MANIFEST)
echo "Adding additional repo: $apturl"
cp $aptkey ${CHROOT_BASEDIR}/apt.key || exit_err "Failed copying repo apt key"
chroot ${CHROOT_BASEDIR} apt-key add /apt.key || exit_err "Failed adding apt-key"
rm ${CHROOT_BASEDIR}/apt.key
echo "deb $apturl $aptdist $aptcomp" >> ${CHROOT_BASEDIR}/etc/apt/sources.list
done
cat ${CHROOT_BASEDIR}/etc/apt/sources.list
chroot ${CHROOT_BASEDIR} apt update || exit_err "Failed apt update"