summaryrefslogtreecommitdiff
path: root/debian/libpve-network-perl.postinst
blob: 99faedf48f56989760ba2b570b8ef257bc4101b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/sh

set -e

migrate_ipam_db() {
  LEGACY_IPAM_DB_FILE="/etc/pve/priv/ipam.db"
  IPAM_DB_FILE="/etc/pve/sdn/pve-ipam-state.json"

  if test -f "$LEGACY_IPAM_DB_FILE" && test ! -f "$IPAM_DB_FILE"; then
    echo "copying over existing legacy IPAM state file to new path..."
    cp $LEGACY_IPAM_DB_FILE $IPAM_DB_FILE || echo "copying IPAM state file failed!"
  fi
}

migrate_mac_cache() {
  LEGACY_MAC_DB_FILE="/etc/pve/priv/macs.db"
  MAC_DB_FILE="/etc/pve/sdn/mac-cache.json"

  if test -f "$LEGACY_MAC_DB_FILE" && test ! -f "$MAC_DB_FILE"; then
    echo "copying over existing legacy IPAM MAC-map cache file to new path..."
    cp $LEGACY_MAC_DB_FILE $MAC_DB_FILE || echo "copying IPAM MAC-map cache file failed!"
  fi
}

case "$1" in
  configure)
    # TODO: remove with PVE 9+
    if dpkg --compare-versions "$2" 'lt' '0.9.9'; then
      migrate_ipam_db
      migrate_mac_cache
    fi
  ;;
esac

exit 0