mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-08-14 15:58:20 +00:00
postinst: migrate/update APT auth config
missed when switching over to Proxmox::RS::Subscription, which stores the same info in the product-specific /etc/apt/auth.conf.d/pve.conf . the top-level file might contain non-PVE-managed entries, so only remove entries matching "our" machine. Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
This commit is contained in:
parent
f31d010c80
commit
bf09acfe7f
36
debian/postinst
vendored
36
debian/postinst
vendored
@ -62,6 +62,36 @@ EOF
|
||||
fi
|
||||
}
|
||||
|
||||
migrate_apt_auth_conf() {
|
||||
output=""
|
||||
removed=""
|
||||
match=0
|
||||
|
||||
while read -r l; do
|
||||
if echo "$l" | grep -q "^machine enterprise.proxmox.com/debian/pve"; then
|
||||
match=1
|
||||
elif echo "$l" | grep -q "machine"; then
|
||||
match=0
|
||||
fi
|
||||
|
||||
if test "$match" = "1"; then
|
||||
removed="$removed\n$l"
|
||||
else
|
||||
output="$output\n$l"
|
||||
fi
|
||||
done < /etc/apt/auth.conf
|
||||
|
||||
if test -n "$removed"; then
|
||||
if test ! -e /etc/apt/auth.conf.d/pve.conf; then
|
||||
echo "Migrating APT auth config for enterprise.proxmox.com to /etc/apt/auth.conf.d/pve.conf .."
|
||||
echo "$removed" > /etc/apt/auth.conf.d/pve.conf
|
||||
else
|
||||
echo "Removing stale APT auth config from /etc/apt/auth.conf"
|
||||
fi
|
||||
echo "$output" > /etc/apt/auth.conf
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
triggered)
|
||||
# We don't print a status message here, as dpkg already said
|
||||
@ -190,6 +220,12 @@ case "$1" in
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if test ! -e /proxmox_install_mode && test -n "$2" && dpkg --compare-versions "$2" 'lt' '7.2.11~'; then
|
||||
if test -e /etc/apt/auth.conf ; then
|
||||
migrate_apt_auth_conf
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
|
Loading…
Reference in New Issue
Block a user