]>
Commit | Line | Data |
---|---|---|
0854fb22 DM |
1 | #!/bin/sh |
2 | ||
3 | set -e | |
4 | ||
5 | ||
ac81f7c9 SI |
6 | ucf_register_templates() { |
7 | for template in /etc/pmg/templates/*; do | |
e97f0405 | 8 | [ -e "$template" ] || continue; |
ac81f7c9 SI |
9 | template_base=$(basename "${template}") |
10 | if echo "${template_base}" | grep -q '\.ucf-'; then | |
11 | continue | |
12 | fi | |
13 | if [ -e "/var/lib/pmg/templates/${template_base}" ]; then | |
14 | ucf "/var/lib/pmg/templates/${template_base}" "${template}" | |
15 | ucfr pmg-api "${template}" | |
16 | else | |
17 | echo "template '${template}' not shipped by pmg-api." | |
18 | fi | |
19 | done | |
20 | } | |
21 | ||
0854fb22 | 22 | case "$1" in |
3cf7a549 DM |
23 | triggered) |
24 | ||
25 | test -e /proxmox_install_mode && exit 0; | |
26 | ||
27 | # Note: reload-or-try-restart fails if service is not active | |
b970485e DM |
28 | for service in pmgdaemon pmgproxy pmg-smtp-filter pmgpolicy pmgtunnel pmgmirror; do |
29 | if systemctl --quiet is-active $service.service ; then | |
0e927889 | 30 | deb-systemd-invoke reload-or-try-restart $service.service >/dev/null || true |
b970485e DM |
31 | fi |
32 | done | |
07f15aa3 | 33 | |
3cf7a549 DM |
34 | exit 0 |
35 | ;; | |
36 | ||
0854fb22 | 37 | configure) |
737c6f66 TL |
38 | # FIXME: remove in PMG 8.0 |
39 | if test ! -e /proxmox_install_mode && test -n "$2" && dpkg --compare-versions "$2" 'lt' '7.0-2~'; then | |
40 | # PMG 5 ISOs had a bug and did not generated a unique machine-id. below is a list of | |
41 | # all machine-ids from all ISOs (released, tests & internal) possibly affected | |
42 | if grep -q \ | |
43 | -e e378bde63ac54872a85af23a8e4dac73 \ | |
44 | -e 932b668d1fad4709b4976d54152d223c \ | |
45 | -e 931a8410cd034202a26b0e19d56e157a \ | |
46 | -e 9a1f3c5284e1423c9b0e0ee5819db6c9 \ | |
47 | -e 5472a49c6436426fbebd7881f7b7f13b \ | |
48 | /etc/machine-id | |
49 | then | |
50 | echo "found static machine-id bug from Proxmox Mail Gateway ISO installer <= 5.4, regenerating machine-id" | |
51 | systemd-id128 new | tee /etc/machine-id.new /var/lib/dbus/machine-id.new | |
52 | # atomically replace | |
53 | mv /etc/machine-id.new /etc/machine-id | |
54 | mv /var/lib/dbus/machine-id.new /var/lib/dbus/machine-id | |
55 | echo "new machine-id generated, a reboot is recommended" | |
56 | else | |
57 | echo "machine-id check OK" | |
58 | fi | |
59 | fi | |
ebe7f62b | 60 | |
7aa01a97 | 61 | if test ! -e /proxmox_install_mode ; then |
cf521b5d | 62 | |
5e374987 DM |
63 | pmgconfig init |
64 | pmgdb init | |
ac81f7c9 SI |
65 | |
66 | ucf_register_templates | |
49606351 | 67 | pmgconfig sync --restart |
ef23c01a | 68 | |
49606351 | 69 | if [ -z "$2" ]; then |
5e374987 | 70 | if systemctl --quiet is-active pmgpolicy.service ; then |
0e927889 | 71 | deb-systemd-invoke reload-or-try-restart postgresql.service >/dev/null || true |
5e374987 | 72 | fi |
0e927889 | 73 | deb-systemd-invoke restart postfix.service >/dev/null || true |
ef23c01a | 74 | fi |
ef23c01a | 75 | |
5e374987 | 76 | pmgdb update >/dev/null 2>&1 & |
cf521b5d | 77 | |
5e374987 | 78 | update-mime-database /usr/share/mime |
ac81f7c9 | 79 | |
07959366 DM |
80 | else |
81 | # rewrite banner | |
82 | pmgbanner || true | |
5e374987 | 83 | fi |
0854fb22 DM |
84 | ;; |
85 | ||
ac81f7c9 SI |
86 | abort-upgrade) |
87 | ucf_register_templates | |
88 | ;; | |
89 | ||
90 | abort-remove|abort-deconfigure) | |
0854fb22 DM |
91 | ;; |
92 | ||
93 | *) | |
94 | echo "postinst called with unknown argument \`$1'" >&2 | |
95 | exit 1 | |
96 | ;; | |
97 | esac | |
98 | ||
99 | # dh_installdeb will replace this with shell code automatically | |
100 | # generated by other debhelper scripts. | |
101 | ||
102 | #DEBHELPER# | |
103 | ||
2305fb86 DM |
104 | if test ! -e /proxmox_install_mode ; then |
105 | for service in pmgdaemon pmgproxy; do | |
106 | if [ -n "$2" ]; then | |
107 | # Note: reload-or-try-restart fails if service is not active | |
108 | if systemctl --quiet is-active $service.service ; then | |
0e927889 | 109 | deb-systemd-invoke reload-or-try-restart $service.service >/dev/null || true |
2305fb86 DM |
110 | fi |
111 | else | |
0e927889 | 112 | deb-systemd-invoke start $service.service > /dev/null || true |
2305fb86 DM |
113 | fi |
114 | done | |
115 | fi | |
116 | ||
0854fb22 | 117 | exit 0 |