done
if [ -n "$services" ]; then
- db_set cn-upgrade/check-services "$services"
+ db_set cn3-upgrade/check-services "$services"
db_go || true
fi
}
+cs_pgrep () {
+ local failed_services
+
+ while read line; do
+ # get service param from stdin
+ user=$(echo "$line" | awk -F ' ' '{print $2}')
+ psname=$(echo "$line" | awk -F ' ' '{print $3}')
+ nicename=$(echo "$line" | awk -F ' ' '{print $4}')
+
+ # check if service is running
+ if ! pgrep -u $user -f "$psname" > /dev/null; then
+ failed_services="$failed_services, $nicename"
+
+ fi
+ done
+
+ echo ${failed_services#, }
+}
+
# uzmi iz debconfa instalirane servise, i provjeri rade li
cs_postupgrade () {
local services i failed_services msg_header
;;
esac
- db_get cn-upgrade/check-services || true
- services="$RET"
-
- for i in $(echo "$services"); do
- user=$(echo "$services_to_check" | grep ^${i} | sed 's/ */ /g'| awk -F' ' '{print $2}')
- psname=$(echo "$services_to_check" | grep ^${i} | sed 's/ */ /g'| awk -F' ' '{print $3}')
- nicename=$(echo "$services_to_check" | grep ^${i} | sed 's/ */ /g'| awk -F' ' '{print $4}')
- if ! pgrep -u $user -f "$psname" > /dev/null; then
- if [ -z "$failed_services" ]; then
- failed_services="$nicename"
- else
- failed_services="$failed_services, $nicename"
- fi
- fi
- done
+ db_get cn3-upgrade/check-services || true
+ services="${RET// /|}"
+
+ failed_services=$(
+ echo "$services_to_check" \
+ | grep -E "^($services)" \
+ | sed 's/ */ /g' \
+ | cs_pgrep
+ )
if [ -n "$failed_services" ]; then
notice "$msg_header$msg_failed_services$failed_services"
# checkiraj da li je sto zapisano u debconf
cs_check () {
- db_get cn-upgrade/check-services || true
+ db_get cn3-upgrade/check-services || true
debconf="$RET"
if [ -n "$debconf" ]; then