mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
expand user before calling abspath (#40196)
* expand user before calling abspath * omit expanduser code smell check for volumes
This commit is contained in:
parent
414aae70b1
commit
32c191ee9c
2 changed files with 5 additions and 4 deletions
|
@ -844,14 +844,14 @@ class TaskParameters(DockerBaseClass):
|
||||||
if ':' in vol:
|
if ':' in vol:
|
||||||
if len(vol.split(':')) == 3:
|
if len(vol.split(':')) == 3:
|
||||||
host, container, mode = vol.split(':')
|
host, container, mode = vol.split(':')
|
||||||
if re.match(r'[\.~]', host):
|
if re.match(r'[.~]', host):
|
||||||
host = os.path.abspath(host)
|
host = os.path.abspath(os.path.expanduser(host))
|
||||||
new_vols.append("%s:%s:%s" % (host, container, mode))
|
new_vols.append("%s:%s:%s" % (host, container, mode))
|
||||||
continue
|
continue
|
||||||
elif len(vol.split(':')) == 2:
|
elif len(vol.split(':')) == 2:
|
||||||
parts = vol.split(':')
|
parts = vol.split(':')
|
||||||
if parts[1] not in VOLUME_PERMISSIONS and re.match(r'[\.~]', parts[0]):
|
if parts[1] not in VOLUME_PERMISSIONS and re.match(r'[.~]', parts[0]):
|
||||||
host = os.path.abspath(parts[0])
|
host = os.path.abspath(os.path.expanduser(parts[0]))
|
||||||
new_vols.append("%s:%s:rw" % (host, parts[1]))
|
new_vols.append("%s:%s:rw" % (host, parts[1]))
|
||||||
continue
|
continue
|
||||||
new_vols.append(vol)
|
new_vols.append(vol)
|
||||||
|
|
|
@ -7,6 +7,7 @@ import sys
|
||||||
def main():
|
def main():
|
||||||
skip = set([
|
skip = set([
|
||||||
# add legitimate uses of expanduser to the following list
|
# add legitimate uses of expanduser to the following list
|
||||||
|
'lib/ansible/modules/cloud/docker/docker_container.py', # uses colon-separated paths, can't use type=path
|
||||||
'lib/ansible/modules/cloud/lxc/lxc_container.py',
|
'lib/ansible/modules/cloud/lxc/lxc_container.py',
|
||||||
'lib/ansible/modules/cloud/rackspace/rax_files_objects.py',
|
'lib/ansible/modules/cloud/rackspace/rax_files_objects.py',
|
||||||
'lib/ansible/modules/database/mongodb/mongodb_parameter.py',
|
'lib/ansible/modules/database/mongodb/mongodb_parameter.py',
|
||||||
|
|
Loading…
Reference in a new issue