B #163: Enable services on upgrade
Also enables support for Alpine post-upgrade script with warning if it's necessary to run update-conf to apply new version of files in /etc: ``` ... Executing one-context-6.1.80-r0.20210809gitbcd3c5b.post-upgrade WARNING: Run update-conf to process any updated one-context files in /etc! Executing busybox-1.33.1-r2.trigger Executing eudev-3.2.10-r0.trigger OK: 148 MiB in 118 packages $ update-conf -l //etc/one-context.d/loc-09-timezone //etc/one-context.d/loc-30-console //etc/one-context.d/loc-10-network //etc/one-context.d/loc-16-gen-env ``` Closes #163pull/244/head
parent
bcd3c5b43a
commit
3176c6a635
@ -1,7 +1,56 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Reload udev rules
|
||||
udevadm control --reload >/dev/null 2>&1 || :
|
||||
|
||||
if which systemctl >/dev/null 2>&1 && [ -d /etc/systemd ]; then
|
||||
### Enable services ########################################
|
||||
|
||||
SERVICES=${SERVICES:-one-context-local one-context-online one-context}
|
||||
|
||||
if which systemctl >/dev/null 2>&1 && \
|
||||
[ -d /etc/systemd ] && \
|
||||
[ -f /usr/lib/systemd/system/one-context.service ];
|
||||
then
|
||||
systemctl daemon-reload >/dev/null 2>&1 || :
|
||||
|
||||
for S in ${SERVICES}; do
|
||||
systemctl enable "${S}.service" >/dev/null 2>&1
|
||||
done
|
||||
fi
|
||||
|
||||
if which chkconfig >/dev/null 2>&1; then
|
||||
for S in ${SERVICES}; do
|
||||
chkconfig --add "${S}" >/dev/null 2>&1
|
||||
done
|
||||
|
||||
# EL6: refresh initramfs via dracut for growroot module
|
||||
if [ -f /usr/share/dracut/modules.d/50growroot/install ]; then
|
||||
for I in $(find /boot -name 'initramfs-*.img'); do
|
||||
KERNEL_VERS=$(echo "${I}" | sed -e 's/.*initramfs-\(.*\)\.img/\1/')
|
||||
dracut -f "${I}" "${KERNEL_VERS}" || :
|
||||
done
|
||||
fi
|
||||
|
||||
elif which update-rc.d >/dev/null 2>&1; then
|
||||
for S in ${SERVICES}; do
|
||||
update-rc.d "${S}" enable >/dev/null 2>&1
|
||||
update-rc.d "${S}" defaults >/dev/null 2>&1
|
||||
done
|
||||
|
||||
elif which rc-update >/dev/null 2>&1; then
|
||||
for S in ${SERVICES}; do
|
||||
rc-update add "${S}" boot >/dev/null 2>&1
|
||||
done
|
||||
|
||||
# When existing file is changed, the new one might be created with
|
||||
# .apk-new suffix. Such files need to be processed by update-conf.
|
||||
if update-conf -al | grep -q context; then
|
||||
echo 'WARNING: Run update-conf to process any updated one-context files in /etc!' >&2
|
||||
fi
|
||||
|
||||
elif [ -x /bin/freebsd-version ]; then
|
||||
:
|
||||
|
||||
else
|
||||
echo 'WARNING: Contextualization service not enabled automatically' >&2
|
||||
fi
|
||||
|
Loading…
Reference in new issue