From 9cf9d8cdd3a8fd7d4d425f7051122d0ac8af2bbd Mon Sep 17 00:00:00 2001 From: Vitaly Kuznetsov Date: Mon, 18 Feb 2019 22:55:49 +0000 Subject: This is to fix https://bugs.launchpad.net/cloud-init/+bug/1812676 --- tools/cloud-init-per | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'tools') diff --git a/tools/cloud-init-per b/tools/cloud-init-per index 7d6754b6..eae3e93f 100755 --- a/tools/cloud-init-per +++ b/tools/cloud-init-per @@ -38,7 +38,7 @@ fi [ "$1" = "-h" -o "$1" = "--help" ] && { Usage ; exit 0; } [ $# -ge 3 ] || { Usage 1>&2; exit 1; } freq=$1 -name=$2 +name=${2/-/_} shift 2; [ "${name#*/}" = "${name}" ] || fail "name cannot contain a /" @@ -53,6 +53,12 @@ esac [ -d "${sem%/*}" ] || mkdir -p "${sem%/*}" || fail "failed to make directory for ${sem}" +# Rename legacy sem files with dashes in their names. Do not overwrite existing +# sem files to prevent clobbering those which may have been created from calls +# outside of cloud-init. +sem_legacy="${sem/_/-}" +[ "$sem" != "$sem_legacy" -a -e "$sem_legacy" ] && mv -n "$sem_legacy" "$sem" + [ "$freq" != "always" -a -e "$sem" ] && exit 0 "$@" ret=$? -- cgit v1.2.3