saltstack/salt — pull request #9415 by terminalmage (2013-12-23 23:45:19+00:00)
Title: Make sure execute bit set on dirs created by file.managed with makedirs==True

When a file.managed state is created with makedirs == True and no
dir_mode specified, the file mode is used as the mode for any parent
directories created by the state. However, this means that if you have a
file mode of 600, the parent dirs are also created with that mode,
making them unable to be traversed via CLI by the owner of the
file/directory that is being managed.

This commit checks each digit of the mode and adds the execute bit if
the digit is nonzero, making the mode 700 if the mode of the file is
600. 640 becomes 750, 644 becomes 755, etc.