Merge branch 'bugfix__directory' of https://github.com/dheule/cdist

This commit is contained in:
Nico Schottelius 2014-01-10 11:25:56 +01:00
commit d8f39f3903
2 changed files with 24 additions and 7 deletions

View file

@ -2,6 +2,7 @@
#
# 2011-2013 Nico Schottelius (nico-cdist at schottelius.org)
# 2013 Steven Armstrong (steven-cdist armstrong.cc)
# 2014 Daniel Heule (hda at sfs.biz)
#
# This file is part of cdist.
#
@ -73,15 +74,16 @@ set_mode() {
case "$state_should" in
present)
if [ "$type" != "directory" ]; then
set_attributes=1
if [ "$type" != "none" ]; then
# our destination is not a directory, remove whatever is there
# and then create our directory and set all attributes
set_attributes=1
cat << DONE
rm -f "$destination"
mkdir $mkdiropt "$destination"
DONE
echo rm -f "\"$destination\""
echo "remove non directory" >> "$__messages_out"
fi
echo "mkdir $mkdiropt \"$destination\""
echo "create" >> "$__messages_out"
fi
# Note: Mode - needs to happen last as a chown/chgrp can alter mode by
# clearing S_ISUID and S_ISGID bits (see chown(2))

View file

@ -46,6 +46,21 @@ recursive::
If supplied the chgrp and chown call will run recursively.
This does *not* influence the behaviour of chmod.
MESSAGES
--------
chgrp <group>::
Changed group membership
chown <owner>::
Changed owner
chmod <mode>::
Changed mode
create::
Empty directory was created
remove::
Directory exists, but state is absent, directory will be removed by generated code.
remove non directory::
Someting other than a directory with the same name exists and was removed prior to create.
EXAMPLES
--------