salt
salt copied to clipboard
[BUG] file.copy state with makedirs uses file permissions on created directories
Description
When file.copy creates parent directories, it creates those with file permissions specified in mode. Directories generally should have the executable bit set though when read permissions are granted.
Setup Irrelevant.
Steps to Reproduce the behavior
create test file:
file.managed:
- name: /tmp/file
- replace: false
/tmp/test will have 644 perms:
file.copy:
- name: /tmp/test/test
- source: /tmp/file
- makedirs: true
- mode: '0644'
display perms:
module.run:
- file.get_mode:
- path: /tmp/test
remove test files:
file.absent:
- names:
- /tmp/test
- /tmp/file
Expected behavior Create directories with sensible permissions.
Screenshots
----------
ID: display perms
Function: module.run
Result: True
Comment: file.get_mode: 0644
Started: 14:01:43.678142
Duration: 0.551 ms
Changes:
----------
file.get_mode:
0644
Versions Report
salt --versions-report
(Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)Salt Version:
Salt: 3004.2
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.0
docker-py: Not Installed
gitdb: 4.0.5
gitpython: 3.1.12
Jinja2: 2.11.3
libgit2: Not Installed
M2Crypto: Not Installed
Mako: 1.1.4
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
pycparser: 2.19
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
Python: 3.7.12 (default, May 13 2022, 19:05:09)
python-gnupg: 0.4.4
PyYAML: 5.4.1
PyZMQ: 18.0.1
smmap: 3.0.2
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.1
System Versions:
dist: darwin 21.5.0
locale: UTF-8
machine: x86_64
release: 21.5.0
system: Darwin
version: 12.4 x86_64
It should have a dir_mode argument, same as file.managed. Definite bug here.