vmware.vmware_rest.vcenter_vm_guest_filesystem_directories module – Creates a directory in the guest operating system
Note
This module is part of the vmware.vmware_rest collection (version 4.2.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install vmware.vmware_rest
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: vmware.vmware_rest.vcenter_vm_guest_filesystem_directories
.
New in vmware.vmware_rest 2.0.0
Synopsis
Creates a directory in the guest operating system.
Requirements
The below requirements are needed on the host that executes this module.
vSphere 7.0.3 or greater
python >= 3.6
aiohttp
Parameters
Parameter |
Comments |
---|---|
Whether any parent directories should be created. If any failure occurs, some parent directories could be left behind. If unset parent directories are not created. Choices:
|
|
The guest authentication data. This parameter is mandatory. Valid attributes are:
This key is required with [‘absent’, ‘create_temporary’, ‘move’, ‘present’].
This key is required with [‘absent’, ‘create_temporary’, ‘move’, ‘present’].
If no user is specified for SAML_BEARER_TOKEN, a guest dependent mapping will decide what guest user account is applied. ([‘absent’, ‘create_temporary’, ‘move’, ‘present’])
This field is optional and it is only relevant when the value of Credentials.type is USERNAME_PASSWORD. ([‘absent’, ‘create_temporary’, ‘move’, ‘present’])
This field is optional and it is only relevant when the value of Credentials.type is SAML_BEARER_TOKEN. ([‘absent’, ‘create_temporary’, ‘move’, ‘present’]) |
|
The complete path to where the directory is moved or its new name. It cannot be a path to an existing directory or an existing file. Required with state=[‘move’] |
|
The complete path to the directory in which to create the new directory. Directory If unset a guest-specific default will be used. |
|
The complete path to the directory to be created. Required with state=[‘absent’, ‘move’, ‘present’] |
|
The prefix to be given to the new temporary directory. Required with state=[‘create_temporary’] |
|
If true, all files and subdirectories are also deleted. If false, the directory must be empty for the operation to succeed. If unset, any directory content is not deleted. Choices:
|
|
Timeout settings for client session. The maximal number of seconds for the whole operation including connection establishment, request sending and response. The default value is 300s. |
|
Choices:
|
|
The suffix to be given to the new temporary directory. Required with state=[‘create_temporary’] |
|
The hostname or IP address of the vSphere vCenter If the value is not specified in the task, the value of environment variable |
|
The vSphere vCenter password If the value is not specified in the task, the value of environment variable |
|
You can use this optional parameter to set the location of a log file. This file will be used to record the HTTP REST interaction. The file will be stored on the host that runs the module. If the value is not specified in the task, the value of environment variable |
|
The vSphere vCenter username If the value is not specified in the task, the value of environment variable |
|
Allows connection when SSL certificates are not valid. Set to If the value is not specified in the task, the value of environment variable Choices:
|
|
Virtual Machine to perform the operation on. The parameter must be the id of a resource returned by vmware.vmware_rest.vcenter_vm_info. This parameter is mandatory. |
Notes
Note
Tested on vSphere 7.0.3
Examples
- name: Create a VM
vmware.vmware_rest.vcenter_vm:
placement:
cluster: "{{ lookup('vmware.vmware_rest.cluster_moid', '/my_dc/host/my_cluster') }}"
datastore: "{{ lookup('vmware.vmware_rest.datastore_moid', '/my_dc/datastore/local') }}"
folder: "{{ lookup('vmware.vmware_rest.folder_moid', '/my_dc/vm') }}"
resource_pool: "{{ lookup('vmware.vmware_rest.resource_pool_moid', '/my_dc/host/my_cluster/Resources') }}"
name: test_vm1
guest_OS: RHEL_7_64
hardware_version: VMX_11
memory:
hot_add_enabled: true
size_MiB: 1024
disks:
- type: SATA
backing:
type: VMDK_FILE
vmdk_file: '[local] test_vm1/{{ disk_name }}.vmdk'
- type: SATA
new_vmdk:
name: second_disk
capacity: 32000000000
cdroms:
- type: SATA
sata:
bus: 0
unit: 2
nics:
- backing:
type: STANDARD_PORTGROUP
network: "{{ lookup('vmware.vmware_rest.network_moid', '/my_dc/network/VM Network') }}"
register: my_vm
- name: Create a directory in /tmp
vmware.vmware_rest.vcenter_vm_guest_filesystem_directories:
vm: '{{ my_vm.id }}'
path: /tmp/my/path
create_parents: true
credentials:
interactive_session: false
type: USERNAME_PASSWORD
user_name: root
password: root