Merge branch 'bcoca-file_new_dirs_perms' into devel
This commit is contained in:
commit
e623911df6
2 changed files with 16 additions and 9 deletions
|
@ -31,14 +31,14 @@ options:
|
|||
state:
|
||||
description:
|
||||
- If C(directory), all immediate subdirectories will be created if they
|
||||
do not exist. If C(file), the file will NOT be created if it does not
|
||||
exist, see the M(copy) or M(template) module if you want that behavior.
|
||||
If C(link), the symbolic link will be created or changed. Use C(hard)
|
||||
for hardlinks. If C(absent), directories will be recursively deleted,
|
||||
and files or symlinks will be unlinked. If C(touch) (new in 1.4), an empty file will
|
||||
be created if the c(path) does not exist, while an existing file or
|
||||
directory will receive updated file access and modification times (similar
|
||||
to the way `touch` works from the command line).
|
||||
do not exist, since 1.7 they will be created with the supplied permissions.
|
||||
If C(file), the file will NOT be created if it does not exist, see the M(copy)
|
||||
or M(template) module if you want that behavior. If C(link), the symbolic
|
||||
link will be created or changed. Use C(hard) for hardlinks. If C(absent),
|
||||
directories will be recursively deleted, and files or symlinks will be unlinked.
|
||||
If C(touch) (new in 1.4), an empty file will be created if the c(path) does not
|
||||
exist, while an existing file or directory will receive updated file access and
|
||||
modification times (similar to the way `touch` works from the command line).
|
||||
required: false
|
||||
default: file
|
||||
choices: [ file, link, directory, hard, touch, absent ]
|
||||
|
|
|
@ -165,8 +165,15 @@ def main():
|
|||
if prev_state == 'absent':
|
||||
if module.check_mode:
|
||||
module.exit_json(changed=True)
|
||||
os.makedirs(path)
|
||||
changed = True
|
||||
curpath = ''
|
||||
for dirname in path.split('/'):
|
||||
curpath = '/'.join([curpath, dirname])
|
||||
if not os.path.exists(curpath):
|
||||
os.mkdir(curpath)
|
||||
tmp_file_args = file_args.copy()
|
||||
tmp_file_args['path']=curpath
|
||||
changed = module.set_fs_attributes_if_different(tmp_file_args, changed)
|
||||
|
||||
changed = module.set_fs_attributes_if_different(file_args, changed)
|
||||
|
||||
|
|
Loading…
Reference in a new issue