{ "description": "Auto-Generated JSON Schema for Ansible-stable 2.5 (https://github.com/shaded-enmity/ansible-schema-generator)", "title": "Ansible 2.5", "items": { "anyOf": [ { "required": [ "script" ], "type": "object", "properties": { "args": { "type": "object", "properties": { "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will B(not) be run." } } }, "name": { "type": "string" }, "script": { "type": "string" } } }, { "required": [ "command" ], "type": "object", "properties": { "args": { "type": "object", "properties": { "warn": { "type": "string", "description": "Default: True\n\nif command warnings are on in ansible.cfg, do not warn about this particular line if set to no/false." }, "creates": { "type": "string", "description": "a filename or (since 2.0) glob pattern, when it already exists, this step will B(not) be run." }, "executable": { "type": "string", "description": "change the shell used to execute the command. Should be an absolute path to the executable." }, "chdir": { "type": "string", "description": "cd into this directory before running the command" }, "removes": { "type": "string", "description": "a filename or (since 2.0) glob pattern, when it does not exist, this step will B(not) be run." } } }, "command": { "type": "string" }, "name": { "type": "string" } } }, { "required": [ "raw" ], "type": "object", "properties": { "raw": { "type": "string" }, "args": { "type": "object", "properties": { "executable": { "type": "string", "description": "change the shell used to execute the command. Should be an absolute path to the executable.\nwhen using privilege escalation (C(become)), a default shell will be assigned if one is not provided as privilege escalation requires a shell." } } }, "name": { "type": "string" } } }, { "required": [ "raw" ], "type": "object", "properties": { "raw": { "type": "string" }, "args": { "type": "object", "properties": { "executable": { "type": "string", "description": "change the shell used to execute the command. Should be an absolute path to the executable.\nwhen using privilege escalation (C(become)), a default shell will be assigned if one is not provided as privilege escalation requires a shell." } } }, "name": { "type": "string" } } }, { "required": [ "shell" ], "type": "object", "properties": { "shell": { "type": "string" }, "args": { "type": "object", "properties": { "warn": { "type": "string", "description": "Default: True\n\nif command warnings are on in ansible.cfg, do not warn about this particular line if set to no/false." }, "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "executable": { "type": "string", "description": "change the shell used to execute the command. Should be an absolute path to the executable." }, "chdir": { "type": "string", "description": "cd into this directory before running the command" }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will B(not) be run." } } }, "name": { "type": "string" } } }, { "required": [ "command" ], "type": "object", "properties": { "args": { "type": "object", "properties": { "warn": { "description": "Default: yes\n\nIf command_warnings are on in ansible.cfg, do not warn about this particular line if set to C(no).", "$ref": "#/definitions/ansible_truth" }, "creates": { "type": "string", "description": "A filename or (since 2.0) glob pattern, when it already exists, this step will B(not) be run." }, "chdir": { "type": "string", "description": "Change into this directory before running the command." }, "removes": { "type": "string", "description": "A filename or (since 2.0) glob pattern, when it does not exist, this step will B(not) be run." }, "stdin": { "type": "string", "description": "Set the stdin of the command directly to the specified value." } } }, "command": { "type": "string" }, "name": { "type": "string" } } }, { "required": [ "shell" ], "type": "object", "properties": { "shell": { "type": "string" }, "args": { "type": "object", "properties": { "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "executable": { "type": "string", "description": "change the shell used to execute the command. Should be an absolute path to the executable." }, "chdir": { "type": "string", "description": "cd into this directory before running the command" }, "stdin": { "type": "string", "description": "Set the stdin of the command directly to the specified value." }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will B(not) be run." }, "warn": { "type": "string", "description": "Default: True\n\nif command warnings are on in ansible.cfg, do not warn about this particular line if set to no/false." } } }, "name": { "type": "string" } } }, { "required": [ "script" ], "type": "object", "properties": { "args": { "type": "object", "properties": { "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "chdir": { "type": "string", "description": "cd into this directory on the remote node before running the script" }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will B(not) be run." } } }, "name": { "type": "string" }, "script": { "type": "string" } } }, { "required": [ "name" ], "type": "object", "properties": { "ecs_taskdefinition": { "required": [ "state" ], "type": "object", "description": "Registers or deregisters task definitions in the Amazon Web Services (AWS) EC2 Container Service (ECS)", "properties": { "family": { "type": "string", "description": "A Name that would be given to the task definition" }, "task_role_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role." }, "force_create": { "type": "string", "description": "Always create new task definition" }, "network_mode": { "type": "string", "description": "Default: bridge\n\nThe Docker networking mode to use for the containers in the task." }, "state": { "type": "string", "description": "State whether the task definition should exist or be deleted" }, "arn": { "type": "string", "description": "The arn of the task description to delete" }, "volumes": { "type": "string", "description": "A list of names of volumes to be attached" }, "containers": { "type": "string", "description": "A list of containers definitions" }, "revision": { "type": "string", "description": "A revision number for the task definition" } } }, "avi_alertscriptconfig": { "required": [ "name" ], "type": "object", "description": "This module is used to configure AlertScriptConfig object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "action_script": { "type": "string", "description": "User defined alert action script.\nPlease refer to kb.avinetworks.com for more information." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "A user-friendly name of the script." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "azure_rm_acs": { "required": [ "linux_profile", "master_profile", "name", "resource_group", "orchestration_platform", "agent_pool_profiles", "diagnostics_profile" ], "type": "object", "description": "Create, update and delete an Azure Container Service Instance.", "properties": { "linux_profile": { "type": "string", "description": "The linux profile suboptions." }, "master_profile": { "type": "string", "description": "Master profile suboptions." }, "name": { "type": "string", "description": "Name of the Container Services instance." }, "resource_group": { "type": "string", "description": "Name of a resource group where the Container Services exists or will be created." }, "orchestration_platform": { "type": "string", "description": "Specifies the Container Orchestration Platform to use. Currently can be either DCOS, Kubernetes or Swarm." }, "agent_pool_profiles": { "type": "string", "description": "The agent pool profile suboptions." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the ACS. Use 'present' to create or update an ACS and 'absent' to delete it." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "service_principal": { "type": "string", "description": "The service principal suboptions." }, "diagnostics_profile": { "type": "string", "description": "Should VM Diagnostics be enabled for the Container Service VM's." } } }, "junos_rpc": { "required": [ "rpc" ], "type": "object", "description": "Sends a request to the remote device running JUNOS to execute the specified RPC using the NetConf transport. The reply is then returned to the playbook in the C(xml) key. If an alternate output format is requested, the reply is transformed to the requested output.", "properties": { "output": { "type": "string", "description": "Default: xml\n\nThe C(output) argument specifies the desired output of the return data. This argument accepts one of C(xml), C(text), or C(json). For C(json), the JUNOS device must be running a version of software that supports native JSON output." }, "rpc": { "type": "string", "description": "The C(rpc) argument specifies the RPC call to send to the remote devices to be executed. The RPC Reply message is parsed and the contents are returned to the playbook." }, "args": { "type": "string", "description": "The C(args) argument provides a set of arguments for the RPC call and are encoded in the request message. This argument accepts a set of key=value arguments." }, "attrs": { "type": "string", "description": "The C(attrs) arguments defines a list of attributes and their values to set for the RPC call. This accepts a dictionary of key-values." } } }, "pn_ospf": { "required": [ "state", "pn_vrouter_name", "pn_network_ip" ], "type": "object", "description": "Execute vrouter-ospf-add, vrouter-ospf-remove command.\nThis command adds/removes Open Shortest Path First(OSPF) routing protocol to a virtual router(vRouter) service.", "properties": { "pn_ospf_area": { "type": "string", "description": "Stub area number for the configuration. Required for vrouter-ospf-add." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_vrouter_name": { "type": "string", "description": "Specify the name of the vRouter." }, "pn_network_ip": { "type": "string", "description": "Specify the network IP (IPv4 or IPv6) address." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the ospf. Use 'present' to add ospf and 'absent' to remove ospf." }, "pn_cliswitch": { "type": "string", "description": "Target switch to run the CLI on." } } }, "gcpubsub_facts": { "required": [ "view" ], "type": "object", "description": "List Topics/Subscriptions from Google PubSub. Use the gcpubsub module for topic/subscription management. See U(https://cloud.google.com/pubsub/docs) for an overview.", "properties": { "topic": { "type": "string", "description": "GCP pubsub topic name. Only the name, not the full path, is required." }, "state": { "type": "array", "description": "list is the only valid option." }, "view": { "type": "string", "description": "Choices are 'topics' or 'subscriptions'" } } }, "oneview_datacenter_facts": { "type": "object", "description": "Retrieve facts about the OneView Data Centers.", "properties": { "name": { "type": "string", "description": "Data Center name." }, "options": { "type": "string", "description": "Retrieve additional facts. Options available: 'visualContent'." } } }, "cs_snapshot_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "interval_type", "interval" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "time_zone", "timezone" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "max_snaps", "max" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and delete volume snapshot policies.", "properties": { "project": { "type": "string", "description": "Name of the project the volume is related to." }, "domain": { "type": "string", "description": "Domain the volume is related to." }, "interval": { "type": "string", "description": "Default: daily\n\nInterval of the snapshot." }, "schedule": { "type": "string", "description": "Time the snapshot is scheduled. Required if C(state=present).\nFormat for C(interval_type=HOURLY): C(MM)\nFormat for C(interval_type=DAILY): C(MM:HH)\nFormat for C(interval_type=WEEKLY): C(MM:HH:DD (1-7))\nFormat for C(interval_type=MONTHLY): C(MM:HH:DD (1-28))" }, "max": { "type": "string", "description": "Default: 8\n\nMax number of snapshots." }, "interval_type": { "type": "string", "description": "Default: daily\n\nInterval of the snapshot." }, "vm": { "type": "string", "description": "Name of the instance to select the volume from.\nUse C(volume_type) if VM has a DATADISK and ROOT volume.\nIn case of C(volume_type=DATADISK), additionally use C(device_id) if VM has more than one DATADISK volume.\nEither C(volume) or C(vm) is required." }, "volume_type": { "type": "string", "description": "Type of the volume." }, "time_zone": { "type": "string", "description": "Default: UTC\n\nSpecifies a timezone for this command." }, "volume": { "type": "string", "description": "Name of the volume.\nEither C(volume) or C(vm) is required." }, "state": { "type": "string", "description": "Default: present\n\nState of the snapshot policy." }, "vpc": { "type": "string", "description": "Name of the vpc the instance is deployed in." }, "max_snaps": { "type": "string", "description": "Default: 8\n\nMax number of snapshots." }, "account": { "type": "string", "description": "Account the volume is related to." }, "timezone": { "type": "string", "description": "Default: UTC\n\nSpecifies a timezone for this command." }, "device_id": { "type": "string", "description": "ID of the device on a VM the volume is attached to.\nThis will only be considered if VM has multiple DATADISK volumes." } } }, "nxos_install_os": { "required": [ "system_image_file" ], "type": "object", "description": "Install an operating system by setting the boot options like boot image and kickstart image and optionally select to install using ISSU (In Server Software Upgrade).", "properties": { "issu": { "type": "string", "description": "Default: no\n\nUpgrade using In Service Software Upgrade (ISSU). (Only supported on N9k platforms)\nSelecting 'required' or 'yes' means that upgrades will only proceed if the switch is capable of ISSU.\nSelecting 'desired' means that upgrades will use ISSU if possible but will fall back to disruptive upgrade if needed.\nSelecting 'no' means do not use ISSU. Forced disruptive." }, "system_image_file": { "type": "string", "description": "Name of the system (or combined) image file on flash." }, "kickstart_image_file": { "type": "string", "description": "Name of the kickstart image file on flash. (Not required on all Nexus platforms)" } } }, "os_user_facts": { "required": [ "name" ], "type": "object", "description": "Retrieve facts about a one or more OpenStack users", "properties": { "domain": { "type": "string", "description": "Default: None\n\nName or ID of the domain containing the user if the cloud supports domains" }, "name": { "type": "string", "description": "Name or ID of the user" }, "filters": { "type": "object", "description": "Default: None\n\nA dictionary of meta data to use for further filtering. Elements of this dictionary may be additional dictionaries." } } }, "ucs_ip_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "descrption", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures IP address pools and blocks of IP addresses on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "ipv6_primary_dns": { "type": "string", "description": "Default: ::\n\nThe primary DNS server that this block of IPv6 addresses should access." }, "ipv6_last_addr": { "type": "string", "description": "The last IPv6 address in the IPv6 addresses block.\nThis is the To field in the UCS Manager Add IPv6 Blocks menu." }, "name": { "type": "string", "description": "The name of the IP address pool.\nThis name can be between 1 and 32 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the IP address pool is created." }, "descr": { "type": "string", "description": "The user-defined description of the IP address pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "last_addr": { "type": "string", "description": "The last IPv4 address in the IPv4 addresses block.\nThis is the To field in the UCS Manager Add IPv4 Blocks menu." }, "primary_dns": { "type": "string", "description": "Default: 0.0.0.0\n\nThe primary DNS server that this block of IPv4 addresses should access." }, "ipv6_default_gw": { "type": "string", "description": "Default: ::\n\nThe default gateway associated with the IPv6 addresses in the block." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "default_gw": { "type": "string", "description": "Default: 0.0.0.0\n\nThe default gateway associated with the IPv4 addresses in the block." }, "order": { "type": "string", "description": "Default: default\n\nThe Assignment Order field.\nThis can be one of the following:\ndefault - Cisco UCS Manager selects a random identity from the pool.\nsequential - Cisco UCS Manager selects the lowest available identity from the pool." }, "subnet_mask": { "type": "string", "description": "Default: 255.255.255.0\n\nThe subnet mask associated with the IPv4 addresses in the block." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify IP pool is present and will create if needed.\nIf C(absent), will verify IP pool is absent and will delete if needed." }, "first_addr": { "type": "string", "description": "The first IPv4 address in the IPv4 addresses block.\nThis is the From field in the UCS Manager Add IPv4 Blocks menu." }, "ipv6_prefix": { "type": "string", "description": "Default: 64\n\nThe network address prefix associated with the IPv6 addresses in the block." }, "ipv6_first_addr": { "type": "string", "description": "The first IPv6 address in the IPv6 addresses block.\nThis is the From field in the UCS Manager Add IPv6 Blocks menu." }, "ipv6_secondary_dns": { "type": "string", "description": "Default: ::\n\nThe secondary DNS server that this block of IPv6 addresses should access." }, "secondary_dns": { "type": "string", "description": "Default: 0.0.0.0\n\nThe secondary DNS server that this block of IPv4 addresses should access." }, "descrption": { "type": "string", "description": "The user-defined description of the IP address pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." } } }, "win_eventlog": { "required": [ "name" ], "type": "object", "description": "Allows the addition, clearing and removal of local Windows event logs, and the creation and removal of sources from a given event log. Also allows the specification of settings per log and source.", "properties": { "name": { "type": "string", "description": "Name of the event log to manage." }, "parameter_file": { "type": "string", "description": "For one or more sources specified, the path to a custom parameter resource file." }, "retention_days": { "type": "string", "description": "The minimum number of days event entries must remain in the log.\nThis option is only used when C(overflow_action) is C(OverwriteOlder)." }, "sources": { "type": "string", "description": "A list of one or more sources to ensure are present/absent in the log.\nWhen C(category_file), C(message_file) and/or C(parameter_file) are specified, these values are applied across all sources." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the log and/or sources.\nWhen C(sources) is populated, state is checked for sources.\nWhen C(sources) is not populated, state is checked for the specified log itself.\nIf C(state) is C(clear), event log entries are cleared for the target log." }, "message_file": { "type": "string", "description": "For one or more sources specified, the path to a custom event message resource file." }, "maximum_size": { "type": "string", "description": "The maximum size of the event log.\nValue must be between 64KB and 4GB, and divisible by 64KB.\nSize can be specified in KB, MB or GB (e.g. 128KB, 16MB, 2.5GB)." }, "category_file": { "type": "string", "description": "For one or more sources specified, the path to a custom category resource file." }, "overflow_action": { "type": "string", "description": "The action for the log to take once it reaches its maximum size.\nFor C(OverwriteOlder), new log entries overwrite those older than the C(retention_days) value.\nFor C(OverwriteAsNeeded), each new entry overwrites the oldest entry.\nFor C(DoNotOverwrite), all existing entries are kept and new entries are not retained." } } }, "avi_cluster": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Cluster object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "virtual_ip": { "type": "string", "description": "A virtual ip address.\nThis ip address will be dynamically reconfigured so that it always is the ip of the cluster leader." }, "nodes": { "type": "array", "description": "List of clusternode." }, "rejoin_nodes_automatically": { "description": "Re-join cluster nodes automatically in the event one of the node is reset to factory.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "avi_api_session": { "required": [ "http_method" ], "type": "object", "description": "This module can be used for calling any resources defined in Avi REST API. U(https://avinetworks.com/)\nThis module is useful for invoking HTTP Patch methods and accessing resources that do not have an REST object associated with them.", "properties": { "params": { "type": "string", "description": "Query parameters passed to the HTTP API." }, "http_method": { "type": "string", "description": "Allowed HTTP methods for RESTful services and are supported by Avi Controller." }, "data": { "type": "string", "description": "HTTP body in YAML or JSON format." }, "timeout": { "type": "string", "description": "Default: 60\n\nTimeout (in seconds) for Avi API calls." }, "path": { "type": "string", "description": "Path for Avi API resource. For example, C(path: virtualservice) will translate to C(api/virtualserivce)." } } }, "avi_networkprofile": { "required": [ "profile", "name" ], "type": "object", "description": "This module is used to configure NetworkProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "profile": { "type": "string", "description": "Networkprofileunion settings for networkprofile." }, "uuid": { "type": "string", "description": "Uuid of the network profile." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "The name of the network profile." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for the object." } } }, "avi_backup": { "required": [ "file_name" ], "type": "object", "description": "This module is used to configure Backup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "scheduler_ref": { "type": "string", "description": "Scheduler information.\nIt is a reference to an object of type scheduler." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "local_file_url": { "type": "string", "description": "Url to download the backup file." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "file_name": { "type": "string", "description": "The file name of backup." }, "remote_file_url": { "type": "string", "description": "Url to download the backup file." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "backup_config_ref": { "type": "string", "description": "Backupconfiguration information.\nIt is a reference to an object of type backupconfiguration." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "timestamp": { "type": "string", "description": "Unix timestamp of when the backup file is created." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." } } }, "ce_evpn_global": { "required": [ "evpn_overlay_enable" ], "type": "object", "description": "Manages global configuration of EVPN on HUAWEI CloudEngine switches.", "properties": { "evpn_overlay_enable": { "type": "string", "description": "Configure EVPN as the VXLAN control plane." } } }, "ovirt_templates_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV templates.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search template X from datacenter Y use following pattern: name=X and datacenter=Y" } } }, "iam_policy": { "required": [ "state", "iam_name", "iam_type", "policy_name" ], "type": "object", "description": "Allows uploading or removing IAM policies for IAM users, groups or roles.", "properties": { "policy_document": { "type": "string", "description": "The path to the properly json formatted policy file (mutually exclusive with C(policy_json))" }, "iam_name": { "type": "string", "description": "Name of IAM resource you wish to target for policy actions. In other words, the user name, group name or role name." }, "iam_type": { "type": "string", "description": "Type of IAM resource" }, "policy_name": { "type": "string", "description": "The name label for the policy to create or remove." }, "state": { "type": "string", "description": "Whether to create or delete the IAM policy." }, "policy_json": { "type": "string", "description": "A properly json formatted policy as string (mutually exclusive with C(policy_document), see https://github.com/ansible/ansible/issues/7005#issuecomment-42894813 on how to use it properly)" }, "skip_duplicates": { "type": "string", "description": "Default: /\n\nBy default the module looks for any policies that match the document you pass in, if there is a match it will not make a new policy object with the same rules. You can override this by specifying false which would allow for two policy objects with different names but same rules." } } }, "jenkins_plugin": { "required": [ "name" ], "type": "object", "description": "Ansible module which helps to manage Jenkins plugins.", "properties": { "jenkins_home": { "type": "string", "description": "Default: /var/lib/jenkins\n\nHome directory of the Jenkins user." }, "group": { "type": "string", "description": "Default: jenkins\n\nName of the Jenkins group on the OS." }, "name": { "type": "string", "description": "Plugin name." }, "url": { "type": "string", "description": "Default: http://localhost:8080\n\nURL of the Jenkins server." }, "updates_url": { "type": "string", "description": "Default: https://updates.jenkins-ci.org\n\nURL of the Update Centre.\nUsed as the base URL to download the plugins and the I(update-center.json) JSON file." }, "with_dependencies": { "type": "string", "description": "Default: yes\n\nDefines whether to install plugin dependencies.\nThis option takes effect only if the I(version) is not defined." }, "state": { "type": "string", "description": "Default: present\n\nDesired plugin state.\nIf the C(latest) is set, the check for new version will be performed every time. This is suitable to keep the plugin up-to-date." }, "version": { "type": "string", "description": "Plugin version number.\nIf this option is specified, all plugin dependencies must be installed manually.\nIt might take longer to verify that the correct version is installed. This is especially true if a specific version number is specified.\nQuote the version to prevent the value to be interpreted as float. For example if C(1.20) would be unquoted, it would become C(1.2)." }, "updates_expiration": { "type": "string", "description": "Default: 86400\n\nNumber of seconds after which a new copy of the I(update-center.json) file is downloaded. This is used to avoid the need to download the plugin to calculate its checksum when C(latest) is specified.\nSet it to C(0) if no cache file should be used. In that case, the plugin file will always be downloaded to calculate its checksum when C(latest) is specified." }, "mode": { "type": "string", "description": "Default: 0664\n\nFile mode applied on versioned plugins." }, "timeout": { "type": "string", "description": "Default: 30\n\nServer connection timeout in secs." }, "owner": { "type": "string", "description": "Default: jenkins\n\nName of the Jenkins user on the OS." } } }, "supervisorctl": { "required": [ "state", "name" ], "type": "object", "description": "Manage the state of a program or group of programs running via supervisord", "properties": { "username": { "type": "string", "description": "username to use for authentication" }, "supervisorctl_path": { "type": "string", "description": "path to supervisorctl executable" }, "name": { "type": "string", "description": "The name of the supervisord program or group to manage.\nThe name will be taken as group name when it ends with a colon I(:)\nGroup support is only available in Ansible version 1.6 or later." }, "server_url": { "type": "string", "description": "URL on which supervisord server is listening" }, "state": { "type": "string", "description": "The desired state of program/group." }, "password": { "type": "string", "description": "password to use for authentication" }, "config": { "type": "string", "description": "The supervisor configuration file path" } } }, "rax_cbs_attachments": { "required": [ "volume", "state", "device", "server" ], "type": "object", "description": "Manipulate Rackspace Cloud Block Storage Volume Attachments", "properties": { "server": { "type": "string", "description": "Name or id of the server to attach/detach" }, "volume": { "type": "string", "description": "Name or id of the volume to attach/detach" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "device": { "type": "string", "description": "The device path to attach the volume to, e.g. /dev/xvde" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the volume to be in 'in-use'/'available' state before returning" } } }, "parted": { "required": [ "device" ], "type": "object", "description": "This module allows configuring block device partition using the C(parted) command line tool. For a full description of the fields and the options check the GNU parted manual.", "properties": { "part_start": { "type": "string", "description": "Default: 0%\n\nWhere the partition will start as offset from the beginning of the disk, that is, the \"distance\" from the start of the disk. The distance can be specified with all the units supported by parted (except compat) and it is case sensitive. E.g. C(10GiB), C(15%)." }, "part_end": { "type": "string", "description": "Default: 100%\n\nWhere the partition will end as offset from the beginning of the disk, that is, the \"distance\" from the start of the disk. The distance can be specified with all the units supported by parted (except compat) and it is case sensitive. E.g. C(10GiB), C(15%)." }, "name": { "type": "string", "description": "Sets the name for the partition number (GPT, Mac, MIPS and PC98 only)." }, "align": { "type": "string", "description": "Default: optimal\n\nSet alignment for newly created partitions." }, "number": { "type": "string", "description": "The number of the partition to work with or the number of the partition that will be created. Required when performing any action on the disk, except fetching information." }, "label": { "type": "string", "description": "Default: msdos\n\nCreates a new disk label." }, "state": { "type": "string", "description": "Default: info\n\nIf to create or delete a partition. If set to C(info) the module will only return the device information." }, "part_type": { "type": "string", "description": "Default: primary\n\nIs one of 'primary', 'extended' or 'logical' and may be specified only with 'msdos' or 'dvh' partition tables. A name must be specified for a 'gpt' partition table. Neither part-type nor name may be used with a 'sun' partition table." }, "flags": { "type": "string", "description": "A list of the flags that has to be set on the partition." }, "device": { "type": "string", "description": "The block device (disk) where to operate." }, "unit": { "type": "string", "description": "Default: KiB\n\nSelects the current default unit that Parted will use to display locations and capacities on the disk and to interpret those given by the user if they are not suffixed by an unit. When fetching information about a disk, it is always recommended to specify a unit." } } }, "ec2_vpc_vgw": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "Creates AWS VPN Virtual Gateways\nDeletes AWS VPN Virtual Gateways\nAttaches Virtual Gateways to VPCs\nDetaches Virtual Gateways from VPCs", "properties": { "name": { "type": "string", "description": "name of the vgw to be created or deleted" }, "tags": { "type": "object", "description": "dictionary of resource tags" }, "state": { "type": "string", "description": "Default: present\n\npresent to ensure resource is created.\nabsent to remove resource" }, "wait_timeout": { "type": "string", "description": "Default: 320\n\nnumber of seconds to wait for status during vpc attach and detach" }, "vpc_id": { "type": "string", "description": "the vpc-id of a vpc to attach or detach" }, "resource_tags": { "type": "object", "description": "dictionary of resource tags" }, "vpn_gateway_id": { "type": "string", "description": "vpn gateway id of an existing virtual gateway" }, "type": { "type": "string", "description": "type of the virtual gateway to be created" } } }, "vmware_maintenancemode": { "required": [ "esxi_hostname" ], "type": "object", "description": "Place an ESXI host into maintenance mode\nSupport for VSAN compliant maintenance mode when selected", "properties": { "state": { "type": "string", "description": "Default: present\n\nEnter or exit maintenance mode" }, "timeout": { "type": "string", "description": "Specify a timeout for the operation" }, "evacuate": { "type": "string", "description": "If True, evacuate all powered off VMs" }, "esxi_hostname": { "type": "string", "description": "Name of the host as defined in vCenter" }, "vsan_mode": { "type": "string", "description": "Specify which VSAN compliant mode to enter" } } }, "ec2_lc_find": { "allOf": [ { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } }, { "oneOf": [ { "required": [ "region" ], "type": "object" }, { "required": [ "aws_region" ], "type": "object" }, { "required": [ "ec2_region" ], "type": "object" } ] } ] } ], "type": "object", "description": "Returns list of matching Launch Configurations for a given name, along with other useful information\nResults can be sorted and sliced\nIt depends on boto\nBased on the work by Tom Bamford (https://github.com/tombamford)", "properties": { "region": { "type": "string", "description": "The AWS region to use." }, "aws_region": { "type": "string", "description": "The AWS region to use." }, "sort_order": { "type": "string", "description": "Default: ascending\n\nOrder in which to sort results." }, "limit": { "type": "string", "description": "How many results to show.\nCorresponds to Python slice notation like list[:limit]." }, "name_regex": { "type": "string", "description": "A Launch Configuration to match\nIt'll be compiled as regex" }, "ec2_region": { "type": "string", "description": "The AWS region to use." } } }, "sf_snapshot_schedule_manager": { "required": [ "name", "state" ], "type": "object", "description": "Create, destroy, or update accounts on SolidFire", "properties": { "time_interval_days": { "type": "string", "description": "Default: 1\n\nTime interval in days." }, "name": { "type": "string", "description": "Name for the snapshot schedule." }, "time_interval_minutes": { "type": "string", "description": "Time interval in minutes." }, "schedule_id": { "type": "string", "description": "The schedule ID for the schedule that you want to update or delete." }, "time_interval_hours": { "type": "string", "description": "Time interval in hours." }, "paused": { "type": "string", "description": "Pause / Resume a schedule." }, "state": { "type": "string", "description": "Whether the specified schedule should exist or not." }, "snapshot_name": { "type": "string", "description": "Name for the created snapshots." }, "volumes": { "type": "string", "description": "Volume IDs that you want to set the snapshot schedule for.\nAt least 1 volume ID is required for creating a new schedule.\nrequired when C(state=present)" }, "starting_date": { "type": "string", "description": "Starting date for the schedule.\nRequired when C(state=present).\nPlease use two '-' in the above format, or you may see an error- TypeError, is not JSON serializable description.\nFormat: C(2016--12--01T00:00:00Z)" }, "recurring": { "type": "string", "description": "Should the schedule recur?" }, "retention": { "type": "string", "description": "Retention period for the snapshot.\nFormat is 'HH:mm:ss'." } } }, "ovirt_storage_domains_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV storage domains.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search storage domain X from datacenter Y use following pattern: name=X and datacenter=Y" } } }, "digital_ocean_block_storage": { "required": [ "region", "volume_name", "state", "command", "api_token" ], "type": "object", "description": "Create/destroy Block Storage volume in DigitalOcean, or attach/detach Block Storage volume to a droplet.", "properties": { "droplet_id": { "type": "string", "description": "The droplet id you want to operate on. Required when command=attach." }, "description": { "type": "string", "description": "Description of the Block Storage volume." }, "region": { "type": "string", "description": "The slug of the region where your Block Storage volume should be located in." }, "api_token": { "type": "string", "description": "DigitalOcean api token." }, "state": { "type": "string", "description": "Indicate desired state of the target." }, "command": { "type": "string", "description": "Which operation do you want to perform." }, "timeout": { "type": "string", "description": "Default: 10\n\nThe timeout in seconds used for polling DigitalOcean's API." }, "volume_name": { "type": "string", "description": "The name of the Block Storage volume." }, "block_size": { "type": "string", "description": "The size of the Block Storage volume in gigabytes. Required when command=create and state=present." } } }, "netscaler_cs_action": { "type": "object", "description": "Manage content switching actions\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance", "properties": { "comment": { "type": "string", "description": "Comments associated with this cs action." }, "targetvserver": { "type": "string", "description": "Name of the VPN virtual server to which the content is switched." }, "name": { "type": "string", "description": "Name for the content switching action. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at sign C(@), equal sign C(=), and hyphen C(-) characters. Can be changed after the content switching action is created." }, "targetvserverexpr": { "type": "string", "description": "Information about this content switching action." }, "targetlbvserver": { "type": "string", "description": "Name of the load balancing virtual server to which the content is switched." } } }, "ovirt_vmpools_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV vmpools.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search vmpool X: name=X" } } }, "junos_template": { "required": [ "src" ], "type": "object", "description": "This module will load a candidate configuration from a template file onto a remote device running Junos. The module will return the differences in configuration if the diff option is specified on the Ansible command line", "properties": { "comment": { "type": "string", "description": "Default: configured by junos_template\n\nThe C(comment) argument specifies a text string to be used when committing the configuration. If the C(confirm) argument is set to False, this argument is silently ignored." }, "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will search for the source file in role or playbook root folder in templates directory." }, "confirm": { "type": "string", "description": "The C(confirm) argument will configure a time out value for the commit to be confirmed before it is automatically rolled back. If the C(confirm) argument is set to False, this argument is silently ignored. If the value for this argument is set to 0, the commit is confirmed immediately." }, "action": { "type": "string", "description": "Default: merge\n\nThe C(action) argument specifies how the module will apply changes." }, "config_format": { "type": "string", "description": "The C(format) argument specifies the format of the configuration template specified in C(src). If the format argument is not specified, the module will attempt to infer the configuration format based of file extension. Files that end in I(xml) will set the format to xml. Files that end in I(set) will set the format to set and all other files will default the format to text." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the configuration from the node prior to making any changes. The backup file will be written to backup_{{ hostname }} in the root of the playbook directory." } } }, "iosxr_template": { "type": "object", "description": "Manages network device configurations over SSH. This module allows implementers to work with the device running-config. It provides a way to push a set of commands onto a network device by evaluating the current running-config and only pushing configuration commands that are not already configured. The config source can be a set of commands or a template.", "properties": { "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will first search for the source file in role or playbook root folder in templates unless a full path to the file is given." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "force": { "type": "string", "description": "The force argument instructs the module not to consider the current device running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the running-config from the node prior to making any changes. The backup file will be written to backup_{{ hostname }} in the root of the playbook directory." } } }, "gce_instance_template": { "required": [ "name" ], "type": "object", "description": "Creates or destroy Google instance templates of Compute Engine of Google Cloud Platform.", "properties": { "automatic_restart": { "type": "string", "description": "Defines whether the instance should be automatically restarted when it is terminated by Compute Engine." }, "image": { "type": "string", "description": "The image to use to create the instance. Cannot specify both both I(image) and I(source)." }, "service_account_permissions": { "type": "string", "description": "service account permissions (see U(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create), --scopes section for detailed information)" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'." }, "subnetwork_region": { "type": "string", "description": "Region that subnetwork resides in. (Required for subnetwork to successfully complete)" }, "size": { "type": "string", "description": "Default: f1-micro\n\nThe desired machine type for the instance template." }, "network": { "type": "string", "description": "Default: default\n\nThe network to associate with the instance." }, "service_account_email": { "type": "string", "description": "service account email" }, "nic_gce_struct": { "type": "string", "description": "Support passing in the GCE-specific formatted networkInterfaces[] structure." }, "disk_auto_delete": { "type": "string", "description": "Default: True\n\nIndicate that the boot disk should be deleted when the Node is deleted." }, "source": { "type": "string", "description": "A source disk to attach to the instance. Cannot specify both I(image) and I(source)." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state for the instance template." }, "project_id": { "type": "string", "description": "your GCE project ID" }, "preemptible": { "type": "string", "description": "Defines whether the instance is preemptible." }, "metadata": { "type": "string", "description": "a hash/dictionary of custom data for the instance; '{\"key\":\"value\", ...}'" }, "description": { "type": "string", "description": "description of instance template" }, "tags": { "type": "string", "description": "a comma-separated list of tags to associate with the instance" }, "image_family": { "type": "string", "description": "The image family to use to create the instance. If I(image) has been used I(image_family) is ignored. Cannot specify both I(image) and I(source)." }, "can_ip_forward": { "type": "string", "description": "Set to True to allow instance to send/receive non-matching src/dst packets." }, "disk_type": { "type": "string", "description": "Default: pd-standard\n\nSpecify a C(pd-standard) disk or C(pd-ssd) for an SSD disk." }, "name": { "type": "string", "description": "The name of the GCE instance template." }, "external_ip": { "type": "string", "description": "Default: ephemeral\n\nThe external IP address to use. If C(ephemeral), a new non-static address will be used. If C(None), then no external address will be used. To use an existing static IP address specify address name." }, "disks": { "type": "string", "description": "a list of persistent disks to attach to the instance; a string value gives the name of the disk; alternatively, a dictionary value can define 'name' and 'mode' ('READ_ONLY' or 'READ_WRITE'). The first entry will be the boot disk (which must be READ_WRITE)." }, "disks_gce_struct": { "type": "string", "description": "Support passing in the GCE-specific formatted formatted disks[] structure. Case sensitive. see U(https://cloud.google.com/compute/docs/reference/latest/instanceTemplates#resource) for detailed information" }, "credentials_file": { "type": "string", "description": "path to the JSON file associated with the service account email" }, "subnetwork": { "type": "string", "description": "The Subnetwork resource name for this instance." } } }, "aix_inittab": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "service" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "service" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages the inittab on AIX.", "properties": { "name": { "type": "string", "description": "Name of the inittab entry." }, "service": { "type": "string", "description": "Name of the inittab entry." }, "insertafter": { "type": "string", "description": "After which inittabline should the new entry inserted." }, "state": { "type": "string", "description": "Default: present\n\nWhether the entry should be present or absent in the inittab file." }, "command": { "type": "string", "description": "What command has to run." }, "runlevel": { "type": "string", "description": "Runlevel of the entry." }, "action": { "type": "string", "description": "Action what the init has to do with this entry." } } }, "aireos_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "running_config", "config" ], "type": "object" } } ] } ], "type": "object", "description": "AireOS does not use a block indent file syntax, so there are no sections or parents. This module provides an implementation for working with AireOS configurations in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured. The commands must be the exact same commands as found in the device run-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "backup": { "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured. The commands must be the exact same commands as found in the device run-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "diff_against": { "type": "string", "description": "When using the C(ansible-playbook --diff) command line argument the module can generate diffs against different sources.\nWhen this option is configured as I(intended), the module will return the diff of the running-config against the configuration provided in the C(intended_config) argument.\nWhen this option is configured as I(running), the module will return the before and after diff of the running-config with respect to any changes made to the device configuration." }, "intended_config": { "type": "string", "description": "The C(intended_config) provides the master configuration that the node should conform to and is used to check the final running-config against. This argument will not modify any settings on the remote device and is strictly used to check the compliance of the current device's configuration against. When specifying this argument, the task should also modify the C(diff_against) value and set it to I(intended)." }, "running_config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "diff_ignore_lines": { "type": "string", "description": "Use this argument to specify one or more lines that should be ignored during the diff. This is used for lines in the configuration that are automatically updated by the system. This argument takes a list of regular expressions or exact line matches." }, "save": { "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored.", "$ref": "#/definitions/ansible_truth" }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "ipa_role": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify and delete a role within FreeIPA server using FreeIPA API", "properties": { "group": { "type": "array", "description": "List of group names assign to this role.\nIf an empty list is passed all assigned groups will be unassigned from the role.\nIf option is omitted groups will not be checked or changed.\nIf option is passed all assigned groups that are not passed will be unassigned from the role." }, "cn": { "type": "string", "description": "Role name.\nCan not be changed as it is the unique identifier." }, "service": { "type": "array", "description": "List of service names to assign.\nIf an empty list is passed all assigned services will be removed from the role.\nIf option is omitted services will not be checked or changed.\nIf option is passed all assigned services that are not passed will be removed from the role." }, "description": { "type": "string", "description": "A description of this role-group." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "hostgroup": { "type": "array", "description": "List of host group names to assign.\nIf an empty list is passed all assigned host groups will be removed from the role.\nIf option is omitted host groups will not be checked or changed.\nIf option is passed all assigned hostgroups that are not passed will be unassigned from the role." }, "host": { "type": "array", "description": "List of host names to assign.\nIf an empty list is passed all assigned hosts will be unassigned from the role.\nIf option is omitted hosts will not be checked or changed.\nIf option is passed all assigned hosts that are not passed will be unassigned from the role." }, "user": { "type": "array", "description": "List of user names to assign.\nIf an empty list is passed all assigned users will be removed from the role.\nIf option is omitted users will not be checked or changed." }, "privilege": { "type": "array", "description": "Default: None\n\nList of privileges granted to the role.\nIf an empty list is passed all assigned privileges will be removed.\nIf option is omitted privileges will not be checked or changed.\nIf option is passed all assigned privileges that are not passed will be removed." }, "name": { "type": "string", "description": "Role name.\nCan not be changed as it is the unique identifier." } } }, "ovirt_disk_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV disks.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search Disk X from storage Y use following pattern: name=X and storage.name=Y" } } }, "onyx_mlag_ipl": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of IPL (inter-peer link) management on Mellanox ONYX network devices.", "properties": { "vlan_interface": { "type": "string", "description": "Name of the IPL vlan interface." }, "state": { "type": "string", "description": "Default: present\n\nIPL state." }, "name": { "type": "string", "description": "Name of the interface (port-channel) IPL should be configured on." }, "peer_address": { "type": "string", "description": "IPL peer IP address." } } }, "nxos_logging": { "allOf": [ { "allOf": [ { "not": { "required": [ "dest_level", "level" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of logging on Cisco NX-OS devices.", "properties": { "facility_level": { "type": "string", "description": "Set logging serverity levels for facility based log messages." }, "name": { "type": "string", "description": "If value of C(dest) is I(logfile) it indicates file-name." }, "facility": { "type": "string", "description": "Facility name for logging." }, "dest": { "type": "string", "description": "Destination of the logs." }, "dest_level": { "type": "string", "description": "Set logging severity levels." }, "level": { "type": "string", "description": "Set logging severity levels." }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." } } }, "bigip_gtm_datacenter": { "required": [ "name" ], "type": "object", "description": "Manage BIG-IP data center configuration. A data center defines the location where the physical network components reside, such as the server and link objects that share the same subnet on the network. This module is able to manipulate the data center definitions in a BIG-IP.", "properties": { "description": { "type": "string", "description": "The description of the data center." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "Default: present\n\nThe virtual address state. If C(absent), an attempt to delete the virtual address will be made. This will only succeed if this virtual address is not in use by a virtual server. C(present) creates the virtual address and enables it. If C(enabled), enable the virtual address if it exists. If C(disabled), create the virtual address if needed, and set state to C(disabled)." }, "contact": { "type": "string", "description": "The name of the contact for the data center." }, "location": { "type": "string", "description": "The location of the data center." }, "name": { "type": "string", "description": "The name of the data center." } } }, "replace": { "allOf": [ { "allOf": [ { "not": { "required": [ "dest", "name", "destfile" ], "type": "object" } }, { "oneOf": [ { "required": [ "dest" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "destfile" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module will replace all instances of a pattern within a file.\nIt is up to the user to maintain idempotence by ensuring that the same pattern would never match any replacements made.", "properties": { "name": { "type": "string", "description": "The file to modify." }, "dest": { "type": "string", "description": "The file to modify." }, "others": { "type": "string", "description": "All arguments accepted by the M(file) module also work here." }, "destfile": { "type": "string", "description": "The file to modify." }, "replace": { "type": "string", "description": "The string to replace regexp matches. May contain backreferences that will get expanded with the regexp capture groups if the regexp matches. If not set, matches are removed entirely." }, "regexp": { "type": "string", "description": "The regular expression to look for in the contents of the file. Uses Python regular expressions; see U(http://docs.python.org/2/library/re.html). Uses multiline mode, which means C(^) and C($) match the beginning and end respectively of I(each line) of the file." }, "follow": { "type": "string", "description": "Default: no\n\nThis flag indicates that filesystem links, if they exist, should be followed." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." } } }, "terraform": { "required": [ "project_path" ], "type": "object", "description": "Provides support for deploying resources with Terraform and pulling resource information back into Ansible.", "properties": { "variables_file": { "type": "string", "description": "The path to a variables file for Terraform to fill into the TF configurations." }, "lock_timeout": { "type": "string", "description": "How long to maintain the lock on the statefile, if you use a service that accepts locks (such as S3+DynamoDB)." }, "lock": { "type": "string", "description": "Enable statefile locking, if you use a service that accepts locks (such as S3+DynamoDB) to store your statefile." }, "variables": { "type": "string", "description": "A group of key-values to override template variables or those in variables files." }, "project_path": { "type": "string", "description": "The path to the root of the Terraform directory with the vars.tf/main.tf/etc to use." }, "state_file": { "type": "string", "description": "The path to an existing Terraform state file to use when building plan. If this is not specified, the default `terraform.tfstate` will be used.\nThis option is ignored when plan is specified." }, "plan_file": { "type": "string", "description": "The path to an existing Terraform plan file to apply. If this is not specified, Ansible will build a new TF plan and execute it." }, "state": { "type": "string", "description": "Default: present\n\nGoal state of given stage/project" }, "force_init": { "type": "string", "description": "To avoid duplicating infra, if a state file can't be found this will force a `terraform init`. Generally, this should be turned off unless you intend to provision an entirely new Terraform deployment." }, "binary_path": { "type": "string", "description": "The path of a terraform binary to use, relative to the 'service_path' unless you supply an absolute path." }, "targets": { "type": "string", "description": "A list of specific resources to target in this plan/application. The resources selected here will also auto-include any dependencies." } } }, "hipchat": { "required": [ "room", "token", "msg" ], "type": "object", "description": "Send a message to a Hipchat room, with options to control the formatting.", "properties": { "from": { "type": "string", "description": "Default: Ansible\n\nName the message will appear to be sent from. Max length is 15 characters - above this it will be truncated." }, "room": { "type": "string", "description": "ID or name of the room." }, "color": { "type": "string", "description": "Default: yellow\n\nBackground color for the message." }, "msg_format": { "type": "string", "description": "Default: text\n\nMessage format." }, "token": { "type": "string", "description": "API token." }, "api": { "type": "string", "description": "Default: https://api.hipchat.com/v1\n\nAPI url if using a self-hosted hipchat server. For Hipchat API version 2 use the default URI with C(/v2) instead of C(/v1)." }, "notify": { "type": "string", "description": "Default: yes\n\nIf true, a notification will be triggered for users in the room." }, "msg": { "type": "string", "description": "The message body." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "dnf": { "required": [ "name" ], "type": "object", "description": "Installs, upgrade, removes, and lists packages and groups with the I(dnf) package manager.", "properties": { "autoremove": { "type": "string", "description": "If C(yes), removes all \"leaf\" packages from the system that were originally installed as dependencies of user-installed packages but which are no longer required by any such package. Should be used alone or when state is I(absent)" }, "name": { "type": "string", "description": "A list of package names, or package specifier with version, like C(name-1.0) When using state=latest, this can be '*' which means run: dnf -y update. You can also pass a url or a local path to a rpm file." }, "list": { "type": "string", "description": "Various (non-idempotent) commands for usage with C(/usr/bin/ansible) and I(not) playbooks. See examples." }, "disable_gpg_check": { "type": "string", "description": "Default: no\n\nWhether to disable the GPG checking of signatures of packages being installed. Has an effect only if state is I(present) or I(latest)." }, "conf_file": { "type": "string", "description": "The remote dnf configuration file to use for the transaction." }, "state": { "type": "string", "description": "Default: present\n\nWhether to install (C(present), C(latest)), or remove (C(absent)) a package." }, "disablerepo": { "type": "string", "description": "I(Repoid) of repositories to disable for the install/update operation. These repos will not persist beyond the transaction. When specifying multiple repos, separate them with a \",\"." }, "enablerepo": { "type": "string", "description": "I(Repoid) of repositories to enable for the install/update operation. These repos will not persist beyond the transaction. When specifying multiple repos, separate them with a \",\"." }, "installroot": { "type": "string", "description": "Default: /\n\nSpecifies an alternative installroot, relative to which all packages will be installed." } } }, "win_nssm": { "required": [ "name" ], "type": "object", "description": "nssm is a service helper which doesn't suck. See U(https://nssm.cc/) for more information.", "properties": { "name": { "type": "string", "description": "Name of the service to operate on" }, "start_mode": { "type": "string", "description": "Default: auto\n\nIf C(auto) is selected, the service will start at bootup.\nC(delayed) causes a delayed but automatic start after boot (added in version 2.5).\nC(manual) means that the service will start only when another service needs it.\nC(disabled) means that the service will stay off, regardless if it is needed or not." }, "stderr_file": { "type": "string", "description": "Path to receive error output" }, "app_parameters_free_form": { "type": "string", "description": "Single string of parameters to be passed to the service.\nUse either this or C(app_parameters), not both" }, "application": { "type": "string", "description": "The application binary to run as a service\nSpecify this whenever the service may need to be installed (state: present, started, stopped, restarted)\nNote that the application name must look like the following, if the directory includes spaces:\nnssm install service \"c:\\\\Program Files\\\\app.exe\\\\\" \"C:\\\\Path with spaces\\\\\"\nSee commit 0b386fc1984ab74ee59b7bed14b7e8f57212c22b in the nssm.git project for more info: U(https://git.nssm.cc/?p=nssm.git;a=commit;h=0b386fc1984ab74ee59b7bed14b7e8f57212c22b)\n" }, "state": { "type": "string", "description": "Default: started\n\nState of the service on the system\nNote that NSSM actions like \"pause\", \"continue\", \"rotate\" do not fit the declarative style of ansible, so these should be implemented via the ansible command module" }, "dependencies": { "type": "string", "description": "Service dependencies that has to be started to trigger startup, separated by comma." }, "user": { "type": "string", "description": "User to be used for service startup" }, "password": { "type": "string", "description": "Password to be used for service startup" }, "stdout_file": { "type": "string", "description": "Path to receive output" }, "app_parameters": { "type": "string", "description": "Parameters to be passed to the application when it starts.\nUse either this or C(app_parameters_free_form), not both" } } }, "avi_cloudconnectoruser": { "required": [ "name" ], "type": "object", "description": "This module is used to configure CloudConnectorUser object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "public_key": { "type": "string", "description": "Public_key of cloudconnectoruser." }, "private_key": { "type": "string", "description": "Private_key of cloudconnectoruser." }, "name": { "type": "string", "description": "Name of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "azure_serviceprincipal": { "type": "string", "description": "Field introduced in 17.2.1." }, "azure_userpass": { "type": "string", "description": "Field introduced in 17.2.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "bundler": { "type": "object", "description": "Manage installation and Gem version dependencies for Ruby using the Bundler gem", "properties": { "executable": { "type": "string", "description": "The path to the bundler executable" }, "chdir": { "type": "string", "description": "Default: temporary working directory\n\nThe directory to execute the bundler commands from. This directoy needs to contain a valid Gemfile or .bundle/ directory" }, "gemfile": { "type": "string", "description": "Default: Gemfile in current directory\n\nOnly applies if state is C(present). The path to the gemfile to use to install gems." }, "deployment_mode": { "type": "string", "description": "Default: no\n\nOnly applies if state is C(present). If set it will only install gems that are in the default or production groups. Requires a Gemfile.lock file to have been created prior" }, "user_install": { "type": "string", "description": "Default: yes\n\nOnly applies if state is C(present). Installs gems in the local user's cache or for all users" }, "extra_args": { "type": "string", "description": "A space separated string of additional commands that can be applied to the Bundler command. Refer to the Bundler documentation for more information" }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the Gem bundle. C(latest) updates gems to the most recent, acceptable version" }, "clean": { "type": "string", "description": "Default: no\n\nOnly applies if state is C(present). If set removes any gems on the target host that are not in the gemfile" }, "binstub_directory": { "type": "string", "description": "Only applies if state is C(present). Specifies the directory to install any gem bins files to. When executed the bin files will run within the context of the Gemfile and fail if any required gem dependencies are not installed. If C(chdir) is set then this path is relative to C(chdir)" }, "exclude_groups": { "type": "string", "description": "A list of Gemfile groups to exclude during operations. This only applies when state is C(present). Bundler considers this a 'remembered' property for the Gemfile and will automatically exclude groups in future operations even if C(exclude_groups) is not set" }, "local": { "type": "string", "description": "Default: no\n\nIf set only installs gems from the cache on the target host" }, "gem_path": { "type": "string", "description": "Default: RubyGems gem paths\n\nOnly applies if state is C(present). Specifies the directory to install the gems into. If C(chdir) is set then this path is relative to C(chdir)" } } }, "udm_group": { "required": [ "name" ], "type": "object", "description": "This module allows to manage user groups on a univention corporate server (UCS). It uses the python API of the UCS to create a new object or edit it.", "properties": { "description": { "type": "string", "description": "Group description." }, "subpath": { "type": "string", "description": "Subpath inside the OU, e.g. C(cn=classes,cn=students,cn=groups)." }, "state": { "type": "string", "description": "Default: present\n\nWhether the group is present or not." }, "position": { "type": "string", "description": "define the whole ldap position of the group, e.g. C(cn=g123m-1A,cn=classes,cn=schueler,cn=groups,ou=schule,dc=example,dc=com)." }, "ou": { "type": "string", "description": "LDAP OU, e.g. school for LDAP OU C(ou=school,dc=example,dc=com)." }, "name": { "type": "string", "description": "Name of the posix group." } } }, "urpmi": { "required": [ "pkg" ], "type": "object", "description": "Manages packages with I(urpmi) (such as for Mageia or Mandriva)", "properties": { "force": { "type": "string", "description": "Default: True\n\nAssume \"yes\" is the answer to any question urpmi has to ask. Corresponds to the C(--force) option for I(urpmi)." }, "state": { "type": "string", "description": "Default: present\n\nIndicates the desired package state" }, "update_cache": { "type": "string", "description": "update the package database first C(urpmi.update -a)." }, "pkg": { "type": "string", "description": "name of package to install, upgrade or remove." }, "no-recommends": { "type": "string", "description": "Default: True\n\nCorresponds to the C(--no-recommends) option for I(urpmi)." } } }, "cs_router": { "required": [ "name" ], "type": "object", "description": "Start, restart, stop and destroy routers.\nC(state=present) is not able to create routers, use M(cs_network) instead.", "properties": { "account": { "type": "string", "description": "Account the router is related to." }, "name": { "type": "string", "description": "Name of the router." }, "domain": { "type": "string", "description": "Domain the router is related to." }, "project": { "type": "string", "description": "Name of the project the router is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the router." }, "service_offering": { "type": "string", "description": "Name or id of the service offering of the router." } } }, "onyx_magp": { "required": [ "interface", "magp_id" ], "type": "object", "description": "This module provides declarative management of MAGP protocol on vlan interface of Mellanox ONYX network devices.", "properties": { "interface": { "type": "string", "description": "VLAN Interface name." }, "router_mac": { "type": "string", "description": "MAGP router MAC address." }, "state": { "type": "string", "description": "Default: present\n\nMAGP state." }, "router_ip": { "type": "string", "description": "MAGP router IP address." }, "magp_id": { "type": "string", "description": "MAGP instance number 1-255" } } }, "vmware_cluster": { "required": [ "cluster_name", "datacenter_name" ], "type": "object", "description": "Add or remove VMware vSphere clusters.", "properties": { "enable_ha": { "description": "Default: no\n\nIf set to C(yes) will enable HA when the cluster is created.", "$ref": "#/definitions/ansible_truth" }, "enable_vsan": { "description": "Default: no\n\nIf set to C(yes) will enable vSAN when the cluster is created.", "$ref": "#/definitions/ansible_truth" }, "datacenter_name": { "type": "string", "description": "The name of the datacenter the cluster will be created in." }, "cluster_name": { "type": "string", "description": "The name of the cluster that will be created." }, "state": { "type": "string", "description": "Default: present\n\nCreate (C(present)) or remove (C(absent)) a VMware vSphere cluster." }, "enable_drs": { "description": "Default: no\n\nIf set to C(yes) will enable DRS when the cluster is created.", "$ref": "#/definitions/ansible_truth" } } }, "nxos_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service on Cisco NXOS network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration. If value is I(present) lldp will be enabled else if it is I(absent) it will be disabled." } } }, "quantum_subnet": { "required": [ "login_password", "login_username", "cidr", "network_name", "name", "login_tenant_name" ], "type": "object", "description": "Add/remove subnet from a network", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "enable_dhcp": { "type": "string", "description": "Default: True\n\nWhether DHCP should be enabled for this subnet." }, "tenant_name": { "type": "string", "description": "Default: None\n\nThe name of the tenant for whom the subnet should be created" }, "dns_nameservers": { "type": "string", "description": "Default: None\n\nDNS nameservers for this subnet, comma-separated" }, "login_tenant_name": { "type": "string", "description": "Default: True\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "allocation_pool_start": { "type": "string", "description": "Default: None\n\nFrom the subnet pool the starting address from which the IP should be allocated" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone URL for authentication" }, "login_password": { "type": "string", "description": "Default: True\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "gateway_ip": { "type": "string", "description": "Default: None\n\nThe ip that would be assigned to the gateway for this subnet" }, "cidr": { "type": "string", "description": "Default: None\n\nThe CIDR representation of the subnet that should be assigned to the subnet" }, "network_name": { "type": "string", "description": "Default: None\n\nName of the network to which the subnet should be attached" }, "ip_version": { "type": "string", "description": "Default: 4\n\nThe IP version of the subnet 4 or 6" }, "allocation_pool_end": { "type": "string", "description": "Default: None\n\nFrom the subnet pool the last IP that should be assigned to the virtual machines" }, "name": { "type": "string", "description": "Default: None\n\nThe name of the subnet that should be created" } } }, "aci_filter_entry": { "allOf": [ { "allOf": [ { "not": { "required": [ "filter", "filter_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "entry", "entry_name", "filter_entry", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage filter entries for a filter on Cisco ACI fabrics.", "properties": { "icmp6_msg_type": { "type": "string", "description": "Default: unspecified\n\nICMPv6 message type; used when ip_protocol is icmpv6.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "stateful": { "type": "string", "description": "Determines the statefulness of the filter entry." }, "dst_port_start": { "type": "string", "description": "Default: unspecified\n\nUsed to set the destination start port when ip_protocol is tcp or udp.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "dst_port_end": { "type": "string", "description": "Default: unspecified\n\nUsed to set the destination end port when ip_protocol is tcp or udp.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "Description for the Filter Entry." }, "descr": { "type": "string", "description": "Description for the Filter Entry." }, "filter_entry": { "type": "string", "description": "Then name of the Filter Entry." }, "icmp_msg_type": { "type": "string", "description": "Default: unspecified\n\nICMPv4 message type; used when ip_protocol is icmp.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "arp_flag": { "type": "string", "description": "Default: unspecified\n\nThe arp flag to use when the ether_type is arp.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "ip_protocol": { "type": "string", "description": "Default: unspecified\n\nThe IP Protocol type when ether_type is ip.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "name": { "type": "string", "description": "Then name of the Filter Entry." }, "filter": { "type": "string", "description": "The name of Filter that the entry should belong to." }, "state": { "type": "string", "description": "Default: present\n\npresent, absent, query" }, "entry_name": { "type": "string", "description": "Then name of the Filter Entry." }, "dst_port": { "type": "string", "description": "Default: unspecified\n\nUsed to set both destination start and end ports to the same value when ip_protocol is tcp or udp.\nThe APIC defaults new Filter Entries to C(unspecified)." }, "filter_name": { "type": "string", "description": "The name of Filter that the entry should belong to." }, "entry": { "type": "string", "description": "Then name of the Filter Entry." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "ether_type": { "type": "string", "description": "Default: unspecified\n\nThe Ethernet type.\nThe APIC defaults new Filter Entries to C(unspecified)." } } }, "tower_job_launch": { "required": [ "job_template" ], "type": "object", "description": "Launch an Ansible Tower jobs. See U(https://www.ansible.com/tower) for an overview.", "properties": { "credential": { "type": "string", "description": "Credential to use for job, only used if prompt for credential is set." }, "use_job_endpoint": { "type": "string", "description": "Disable launching jobs from job template." }, "job_template": { "type": "string", "description": "Name of the job_template to use." }, "tags": { "type": "string", "description": "Specific tags to use for from playbook." }, "extra_vars": { "type": "string", "description": "Extra_vars to use for the job_template. Prepend '@' if a file." }, "job_explanation": { "type": "string", "description": "Job explanation field." }, "job_type": { "type": "string", "description": "Job_type to use for the job, only used if prompt for job_type is set." }, "limit": { "type": "string", "description": "Limit to use for the job_template." }, "inventory": { "type": "string", "description": "Inventory to use for the job, only used if prompt for inventory is set." } } }, "fortios_address": { "required": [ "name", "state" ], "type": "object", "description": "This module provide management of firewall addresses on FortiOS devices.", "properties": { "comment": { "type": "string", "description": "free text to describe address." }, "name": { "type": "string", "description": "Name of the address to add or delete." }, "country": { "type": "string", "description": "2 letter country code (like FR)." }, "value": { "type": "string", "description": "Address value, based on type. If type=fqdn, somthing like www.google.com. If type=ipmask, you can use simple ip (192.168.0.1), ip+mask (192.168.0.1 255.255.255.0) or CIDR (192.168.0.1/32)." }, "interface": { "type": "string", "description": "Default: any\n\ninterface name the address apply to." }, "state": { "type": "string", "description": "Specifies if address need to be added or deleted." }, "end_ip": { "type": "string", "description": "Last ip in range (used only with type=iprange)." }, "start_ip": { "type": "string", "description": "First ip in range (used only with type=iprange)." }, "type": { "type": "string", "description": "Type of the address." } } }, "setup": { "type": "object", "description": "This module is automatically called by playbooks to gather useful variables about remote hosts that can be used in playbooks. It can also be executed directly by C(/usr/bin/ansible) to check what variables are available to a host. Ansible provides many I(facts) about the system, automatically.\nThis module is also supported for Windows targets.", "properties": { "filter": { "type": "string", "description": "Default: *\n\nif supplied, only return facts that match this shell-style (fnmatch) wildcard." }, "gather_subset": { "type": "string", "description": "Default: all\n\nif supplied, restrict the additional facts collected to the given subset. Possible values: all, min, hardware, network, virtual, ohai, and facter Can specify a list of values to specify a larger subset. Values can also be used with an initial C(!) to specify that that specific subset should not be collected. For instance: !hardware, !network, !virtual, !ohai, !facter. If !all is specified then only the min subset is collected. To avoid collecting even the min subset, specify !all and !min subsets. To collect only specific facts, use !all, !min, and specify the particular fact subsets. Use the filter parameter if you do not want to display some collected facts." }, "fact_path": { "type": "string", "description": "Default: /etc/ansible/facts.d\n\npath used for local ansible facts (*.fact) - files in this dir will be run (if executable) and their results be added to ansible_local facts if a file is not executable it is read. Check notes for Windows options. (from 2.1 on) File/results format can be json or ini-format" }, "gather_timeout": { "type": "string", "description": "Default: 10\n\nSet the default timeout in seconds for individual fact gathering" } } }, "ec2_vpc_nat_gateway_facts": { "type": "object", "description": "Gets various details related to AWS VPC Managed Nat Gateways", "properties": { "nat_gateway_ids": { "type": "string", "description": "Default: None\n\nGet details of specific nat gateway IDs" }, "filters": { "type": "string", "description": "Default: None\n\nA dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNatGateways.html) for possible filters." } } }, "aws_ssm_parameter_store": { "required": [ "name" ], "type": "object", "description": "Manage key-value pairs in aws parameter store.", "properties": { "decryption": { "type": "string", "description": "Default: True\n\nWork with SecureString type to get plain text secrets\nBoolean" }, "name": { "type": "string", "description": "parameter key name." }, "region": { "type": "string", "description": "region." }, "string_type": { "type": "string", "description": "Default: String\n\nParameter String type" }, "value": { "type": "string", "description": "Parameter value." }, "state": { "type": "string", "description": "Default: present\n\nCreates or modifies an existing parameter\nDeletes a parameter" }, "key_id": { "type": "string", "description": "Default: aws/ssm (this key is automatically generated at the first parameter created).\n\naws KMS key to decrypt the secrets." }, "overwrite": { "type": "string", "description": "Default: True\n\nOverwrite the value when create or update parameter\nBoolean" }, "description": { "type": "string", "description": "parameter key desciption." } } }, "vr_firewall_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "description" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "description" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create and remove firewall groups.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the firewall group." }, "name": { "type": "string", "description": "Name of the firewall group." }, "description": { "type": "string", "description": "Name of the firewall group." } } }, "aos_blueprint_virtnet": { "required": [ "blueprint", "session" ], "type": "object", "description": "Apstra AOS Blueprint Virtual Network module let you manage your Virtual Network easily. You can create access, define and delete Virtual Network by name or by using a JSON / Yaml file. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "blueprint": { "type": "string", "description": "Blueprint Name or Id as defined in AOS." }, "content": { "type": "string", "description": "Datastructure of the Virtual Network to manage. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Virtual Network (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "name": { "type": "string", "description": "Name of Virtual Network as part of the Blueprint." } } }, "lineinfile": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest", "destfile", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "destfile" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module ensures a particular line is in a file, or replace an existing line using a back-referenced regular expression.\nThis is primarily useful when you want to change a single line in a file only. See the M(replace) module if you want to change multiple, similar lines or check M(blockinfile) if you want to insert/update/remove a block of lines in a file. For other cases, see the M(copy) or M(template) modules.", "properties": { "name": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "insertbefore": { "type": "string", "description": "Used with C(state=present). If specified, the line will be inserted before the last match of specified regular expression. If the first match is required, use(firstmatch=yes). A value is available; C(BOF) for inserting the line at the beginning of the file. If specified regular expression has no matches, the line will be inserted at the end of the file. May not be used with C(backrefs)." }, "dest": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "create": { "description": "Default: no\n\nUsed with C(state=present). If specified, the file will be created if it does not already exist. By default it will fail if the file is missing.", "$ref": "#/definitions/ansible_truth" }, "others": { "type": "string", "description": "All arguments accepted by the M(file) module also work here." }, "destfile": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "backrefs": { "description": "Default: no\n\nUsed with C(state=present). If set, line can contain backreferences (both positional and named) that will get populated if the C(regexp) matches. This flag changes the operation of the module slightly; C(insertbefore) and C(insertafter) will be ignored, and if the C(regexp) doesn't match anywhere in the file, the file will be left unchanged. If the C(regexp) does match, the last matching line will be replaced by the expanded line parameter.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nWhether the line should be there or not." }, "firstmatch": { "description": "Default: no\n\nUsed with C(insertafter) or C(insertbefore). If set, C(insertafter) and C(inserbefore) find a first line has regular expression matches.", "$ref": "#/definitions/ansible_truth" }, "insertafter": { "type": "string", "description": "Default: EOF\n\nUsed with C(state=present). If specified, the line will be inserted after the last match of specified regular expression. If the first match is required, use(firstmatch=yes). A special value is available; C(EOF) for inserting the line at the end of the file. If specified regular expression has no matches, EOF will be used instead. May not be used with C(backrefs)." }, "regexp": { "type": "string", "description": "The regular expression to look for in every line of the file. For C(state=present), the pattern to replace if found. Only the last line found will be replaced. For C(state=absent), the pattern of the line(s) to remove. Uses Python regular expressions. See U(http://docs.python.org/2/library/re.html)." }, "path": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "backup": { "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.", "$ref": "#/definitions/ansible_truth" }, "line": { "type": "string", "description": "Required for C(state=present). The line to insert/replace into the file. If C(backrefs) is set, may contain backreferences that will get expanded with the C(regexp) capture groups if the regexp matches." } } }, "asa_acl": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } }, { "oneOf": [ { "required": [ "lines" ], "type": "object" }, { "required": [ "commands" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module allows you to work with access-lists on a Cisco ASA device.", "properties": { "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a changed needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuruation to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. Finally if match is set to I(exact), command lines must be an equal match." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "avi_virtualservice": { "required": [ "name" ], "type": "object", "description": "This module is used to configure VirtualService object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "port_uuid": { "type": "string", "description": "(internal-use) network port assigned to the virtual service ip address.\nField deprecated in 17.1.1." }, "availability_zone": { "type": "string", "description": "Availability-zone to place the virtual service.\nField deprecated in 17.1.1." }, "error_page_profile_ref": { "type": "string", "description": "Error page profile to be used for this virtualservice.this profile is used to send the custom error page to the client generated by the proxy.\nIt is a reference to an object of type errorpageprofile.\nField introduced in 17.2.4." }, "enable_rhi_snat": { "description": "Enable route health injection for source nat'ted floating ip address using the bgp config in the vrf context.", "$ref": "#/definitions/ansible_truth" }, "sideband_profile": { "type": "string", "description": "Sideband configuration to be used for this virtualservice.it can be used for sending traffic to sideband vips for external inspection etc." }, "requests_rate_limit": { "type": "string", "description": "Rate limit the incoming requests to this virtual service." }, "uuid": { "type": "string", "description": "Uuid of the virtualservice." }, "ssl_profile_ref": { "type": "string", "description": "Determines the set of ssl versions and ciphers to accept for ssl/tls terminated connections.\nIt is a reference to an object of type sslprofile." }, "created_by": { "type": "string", "description": "Creator name." }, "max_cps_per_client": { "type": "string", "description": "Maximum connections per second per client ip.\nAllowed values are 10-1000.\nSpecial values are 0- 'unlimited'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "pool_group_ref": { "type": "string", "description": "The pool group is an object that contains pools.\nIt is a reference to an object of type poolgroup." }, "vs_datascripts": { "type": "string", "description": "Datascripts applied on the data traffic of the virtual service." }, "application_profile_ref": { "type": "string", "description": "Enable application layer specific features for the virtual service.\nIt is a reference to an object of type applicationprofile." }, "active_standby_se_tag": { "type": "string", "description": "This configuration only applies if the virtualservice is in legacy active standby ha mode and load distribution among active standby is enabled.\nThis field is used to tag the virtualservice so that virtualservices with the same tag will share the same active serviceengine.\nVirtualservices with different tags will have different active serviceengines.\nIf one of the serviceengine's in the serviceenginegroup fails, all virtualservices will end up using the same active serviceengine.\nRedistribution of the virtualservices can be either manual or automated when the failed serviceengine recovers.\nRedistribution is based on the auto redistribute property of the serviceenginegroup.\nEnum options - ACTIVE_STANDBY_SE_1, ACTIVE_STANDBY_SE_2.\nDefault value when not specified in API or module is interpreted by Avi Controller as ACTIVE_STANDBY_SE_1." }, "use_vip_as_snat": { "description": "Use the virtual ip as the snat ip for health monitoring and sending traffic to the backend servers instead of the service engine interface ip.\nThe caveat of enabling this option is that the virtualservice cannot be configued in an active-active ha mode.\nDns based multi vip solution has to be used for ha & non-disruptive upgrade purposes.\nField introduced in 17.1.9,17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "ip_address": { "type": "string", "description": "Ip address of the virtual service.\nField deprecated in 17.1.1." }, "floating_subnet_uuid": { "type": "string", "description": "If auto_allocate_floating_ip is true and more than one floating-ip subnets exist, then the subnet for the floating ip address allocation.\nThis field is applicable only if the virtualservice belongs to an openstack or aws cloud.\nIn openstack or aws cloud it is required when auto_allocate_floating_ip is selected.\nField deprecated in 17.1.1." }, "name": { "type": "string", "description": "Name for the virtual service." }, "enable_autogw": { "description": "Response traffic to clients will be sent back to the source mac address of the connection, rather than statically sent to a default gateway.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "remove_listening_port_on_vs_down": { "description": "Remove listening port if virtualservice is down.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "snat_ip": { "type": "string", "description": "Nat'ted floating source ip address(es) for upstream connection to servers." }, "analytics_policy": { "type": "string", "description": "Determines analytics settings for the application." }, "weight": { "type": "string", "description": "The quality of service weight to assign to traffic transmitted from this virtual service.\nA higher weight will prioritize traffic versus other virtual services sharing the same service engines.\nAllowed values are 1-128.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "enabled": { "description": "Enable or disable the virtual service.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "content_rewrite": { "type": "string", "description": "Profile used to match and rewrite strings in request and/or response body." }, "traffic_clone_profile_ref": { "type": "string", "description": "Server network or list of servers for cloning traffic.\nIt is a reference to an object of type trafficcloneprofile.\nField introduced in 17.1.1." }, "vrf_context_ref": { "type": "string", "description": "Virtual routing context that the virtual service is bound to.\nThis is used to provide the isolation of the set of networks the application is attached to.\nIt is a reference to an object of type vrfcontext." }, "subnet": { "type": "string", "description": "Subnet providing reachability for client facing virtual service ip.\nField deprecated in 17.1.1." }, "vh_domain_name": { "type": "string", "description": "The exact name requested from the client's sni-enabled tls hello domain name field.\nIf this is a match, the parent vs will forward the connection to this child vs." }, "se_group_ref": { "type": "string", "description": "The service engine group to use for this virtual service.\nMoving to a new se group is disruptive to existing connections for this vs.\nIt is a reference to an object of type serviceenginegroup." }, "waf_policy_ref": { "type": "string", "description": "Waf policy for the virtual service.\nIt is a reference to an object of type wafpolicy.\nField introduced in 17.2.1." }, "scaleout_ecmp": { "description": "Disable re-distribution of flows across service engines for a virtual service.\nEnable if the network itself performs flow hashing with ecmp in environments such as gcp.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "vsvip_ref": { "type": "string", "description": "Mostly used during the creation of shared vs, this field refers to entities that can be shared across virtual services.\nIt is a reference to an object of type vsvip.\nField introduced in 17.1.1." }, "performance_limits": { "type": "string", "description": "Optional settings that determine performance limits like max connections or bandwdith etc." }, "floating_ip": { "type": "string", "description": "Floating ip to associate with this virtual service.\nField deprecated in 17.1.1." }, "auto_allocate_floating_ip": { "description": "Auto-allocate floating/elastic ip from the cloud infrastructure.\nField deprecated in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "connections_rate_limit": { "type": "string", "description": "Rate limit the incoming connections to this virtual service." }, "pool_ref": { "type": "string", "description": "The pool is an object that contains destination servers and related attributes such as load-balancing and persistence.\nIt is a reference to an object of type pool." }, "ign_pool_net_reach": { "description": "Ignore pool servers network reachability constraints for virtual service placement.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "auto_allocate_ip": { "description": "Auto-allocate vip from the provided subnet.\nField deprecated in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "fqdn": { "type": "string", "description": "Dns resolvable, fully qualified domain name of the virtualservice.\nOnly one of 'fqdn' and 'dns_info' configuration is allowed." }, "flow_label_type": { "type": "string", "description": "Criteria for flow labelling.\nEnum options - NO_LABEL, APPLICATION_LABEL, SERVICE_LABEL.\nDefault value when not specified in API or module is interpreted by Avi Controller as NO_LABEL." }, "server_network_profile_ref": { "type": "string", "description": "Determines the network settings profile for the server side of tcp proxied connections.\nLeave blank to use the same settings as the client to vs side of the connection.\nIt is a reference to an object of type networkprofile." }, "client_auth": { "type": "string", "description": "Http authentication configuration for protected resources." }, "subnet_uuid": { "type": "string", "description": "It represents subnet for the virtual service ip address allocation when auto_allocate_ip is true.it is only applicable in openstack or aws cloud.\nThis field is required if auto_allocate_ip is true.\nField deprecated in 17.1.1." }, "delay_fairness": { "description": "Select the algorithm for qos fairness.\nThis determines how multiple virtual services sharing the same service engines will prioritize traffic over a congested network.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vip": { "type": "array", "description": "List of virtual service ips.\nWhile creating a 'shared vs',please use vsvip_ref to point to the shared entities.\nField introduced in 17.1.1." }, "static_dns_records": { "type": "array", "description": "List of static dns records applied to this virtual service.\nThese are static entries and no health monitoring is performed against the ip addresses." }, "avi_allocated_vip": { "description": "(internal-use) vip allocated by avi in the cloud infrastructure.\nField deprecated in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "analytics_profile_ref": { "type": "string", "description": "Specifies settings related to analytics.\nIt is a reference to an object of type analyticsprofile." }, "avi_allocated_fip": { "description": "(internal-use) fip allocated by avi in the cloud infrastructure.\nField deprecated in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "ssl_sess_cache_avg_size": { "type": "string", "description": "Expected number of ssl session cache entries (may be exceeded).\nAllowed values are 1024-16383.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1024." }, "flow_dist": { "type": "string", "description": "Criteria for flow distribution among ses.\nEnum options - LOAD_AWARE, CONSISTENT_HASH_SOURCE_IP_ADDRESS, CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT.\nDefault value when not specified in API or module is interpreted by Avi Controller as LOAD_AWARE." }, "http_policies": { "type": "string", "description": "Http policies applied on the data traffic of the virtual service." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "east_west_placement": { "description": "Force placement on all se's in service group (mesos mode only).\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "service_pool_select": { "type": "string", "description": "Select pool based on destination port." }, "close_client_conn_on_config_update": { "description": "Close client connection on vs config update.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "type": { "type": "string", "description": "Specify if this is a normal virtual service, or if it is the parent or child of an sni-enabled virtual hosted virtual service.\nEnum options - VS_TYPE_NORMAL, VS_TYPE_VH_PARENT, VS_TYPE_VH_CHILD.\nDefault value when not specified in API or module is interpreted by Avi Controller as VS_TYPE_NORMAL." }, "discovered_networks": { "type": "string", "description": "(internal-use) discovered networks providing reachability for client facing virtual service ip.\nThis field is used internally by avi, not editable by the user.\nField deprecated in 17.1.1." }, "dns_info": { "type": "string", "description": "Service discovery specific data including fully qualified domain name, type and time-to-live of the dns record.\nNote that only one of fqdn and dns_info setting is allowed." }, "ipam_network_subnet": { "type": "string", "description": "Subnet and/or network for allocating virtualservice ip by ipam provider module.\nField deprecated in 17.1.1." }, "ssl_key_and_certificate_refs": { "type": "string", "description": "Select or create one or two certificates, ec and/or rsa, that will be presented to ssl/tls terminated connections.\nIt is a reference to an object of type sslkeyandcertificate." }, "sp_pool_refs": { "type": "string", "description": "Gslb pools used to manage site-persistence functionality.\nEach site-persistence pool contains the virtualservices in all the other sites, that is auto-generated by the gslb manager.\nThis is a read-only field for the user.\nIt is a reference to an object of type pool.\nField introduced in 17.2.2." }, "network_security_policy_ref": { "type": "string", "description": "Network security policies for the virtual service.\nIt is a reference to an object of type networksecuritypolicy." }, "network_profile_ref": { "type": "string", "description": "Determines network settings such as protocol, tcp or udp, and related options for the protocol.\nIt is a reference to an object of type networkprofile." }, "service_metadata": { "type": "string", "description": "Metadata pertaining to the service provided by this virtual service.\nIn openshift/kubernetes environments, egress pod info is stored.\nAny user input to this field will be overwritten by avi vantage." }, "cloud_type": { "type": "string", "description": "Enum options - cloud_none, cloud_vcenter, cloud_openstack, cloud_aws, cloud_vca, cloud_apic, cloud_mesos, cloud_linuxserver, cloud_docker_ucp,\ncloud_rancher, cloud_oshift_k8s, cloud_azure.\nDefault value when not specified in API or module is interpreted by Avi Controller as CLOUD_NONE." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "enable_rhi": { "description": "Enable route health injection using the bgp config in the vrf context.", "$ref": "#/definitions/ansible_truth" }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "nsx_securitygroup": { "type": "string", "description": "A list of nsx service groups representing the clients which can access the virtual ip of the virtual service.\nField introduced in 17.1.1." }, "cloud_config_cksum": { "type": "string", "description": "Checksum of cloud configuration for vs.\nInternally set by cloud connector." }, "description": { "type": "string", "description": "User defined description for the object." }, "use_bridge_ip_as_vip": { "description": "Use bridge ip as vip on each host in mesos deployments.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "host_name_xlate": { "type": "string", "description": "Translate the host name sent to the servers to this value.\nTranslate the host name sent from servers back to the value used by the client." }, "vh_parent_vs_uuid": { "type": "string", "description": "Specifies the virtual service acting as virtual hosting (sni) parent." }, "microservice_ref": { "type": "string", "description": "Microservice representing the virtual service.\nIt is a reference to an object of type microservice." }, "discovered_network_ref": { "type": "string", "description": "(internal-use) discovered networks providing reachability for client facing virtual service ip.\nThis field is deprecated.\nIt is a reference to an object of type network.\nField deprecated in 17.1.1." }, "limit_doser": { "description": "Limit potential dos attackers who exceed max_cps_per_client significantly to a fraction of max_cps_per_client for a while.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "network_ref": { "type": "string", "description": "Manually override the network on which the virtual service is placed.\nIt is a reference to an object of type network.\nField deprecated in 17.1.1." }, "discovered_subnet": { "type": "string", "description": "(internal-use) discovered subnets providing reachability for client facing virtual service ip.\nThis field is deprecated.\nField deprecated in 17.1.1." }, "dns_policies": { "type": "string", "description": "Dns policies applied on the dns traffic of the virtual service.\nField introduced in 17.1.1." }, "services": { "type": "array", "description": "List of services defined for this virtual service." } } }, "azure_rm_publicipaddress_facts": { "type": "object", "description": "Get facts for a specific public IP or all public IPs within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific Public IP." }, "resource_group": { "type": "string", "description": "Limit results by resource group. Required when using name parameter." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "ec2_placement_group": { "required": [ "name" ], "type": "object", "description": "Create an EC2 Placement Group; if the placement group already exists, nothing is done. Or, delete an existing placement group. If the placement group is absent, do nothing. See also http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreate or delete placement group." }, "name": { "type": "string", "description": "The name for the placement group." }, "strategy": { "type": "string", "description": "Default: cluster\n\nPlacement group strategy. Cluster will cluster instances into a low-latency group in a single Availability Zone, while Spread spreads instances across underlying hardware." } } }, "netscaler_lb_vserver": { "type": "object", "description": "Manage load balancing vserver configuration\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance", "properties": { "servicebindings": { "type": "array", "description": "List of services along with the weights that are load balanced.\nThe following suboptions are available." }, "rtspnat": { "description": "Use network address translation (NAT) for RTSP data connections.", "$ref": "#/definitions/ansible_truth" }, "disabled": { "description": "Default: no\n\nWhen set to C(yes) the lb vserver will be disabled.\nWhen set to C(no) the lb vserver will be enabled.\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "macmoderetainvlan": { "type": "string", "description": "This option is used to retain vlan information of incoming packet when macmode is enabled." }, "dbslb": { "type": "string", "description": "Enable database specific load balancing for MySQL and MSSQL service types." }, "listenpolicy": { "type": "string", "description": "Default syntax expression identifying traffic accepted by the virtual server. Can be either an expression (for example, C(CLIENT.IP.DST.IN_SUBNET(192.0.2.0/24)) or the name of a named expression. In the above example, the virtual server accepts all requests whose destination IP address is in the 192.0.2.0/24 subnet." }, "ipmask": { "type": "string", "description": "IP mask, in dotted decimal notation, for the IP Pattern parameter. Can have leading or trailing non-zero octets (for example, C(255.255.240.0) or C(0.0.255.255)). Accordingly, the mask specifies whether the first n bits or the last n bits of the destination IP address in a client request are to be matched with the corresponding bits in the IP pattern. The former is called a forward mask. The latter is called a reverse mask." }, "icmpvsrresponse": { "type": "string", "description": "How the NetScaler appliance responds to ping requests received for an IP address that is common to one or more virtual servers. Available settings function as follows:\n* If set to C(PASSIVE) on all the virtual servers that share the IP address, the appliance always responds to the ping requests.\n* If set to C(ACTIVE) on all the virtual servers that share the IP address, the appliance responds to the ping requests if at least one of the virtual servers is UP. Otherwise, the appliance does not respond.\n* If set to C(ACTIVE) on some virtual servers and PASSIVE on the others, the appliance responds if at least one virtual server with the ACTIVE setting is UP. Otherwise, the appliance does not respond.\nNote: This parameter is available at the virtual server level. A similar parameter, ICMP Response, is available at the IP address level, for IPv4 addresses of type VIP. To set that parameter, use the add ip command in the CLI or the Create IP dialog box in the GUI." }, "vipheader": { "type": "string", "description": "Name for the inserted header. The default name is vip-header.\nMinimum length = 1" }, "pushvserver": { "type": "string", "description": "Name of the load balancing virtual server, of type PUSH or SSL_PUSH, to which the server pushes updates received on the load balancing virtual server that you are configuring.\nMinimum length = 1" }, "dataoffset": { "type": "string", "description": "Offset to be considered when extracting a token from the TCP payload. Applicable to virtual servers, of type TCP, using the token method of load balancing. Must be within the first 24 KB of the TCP payload.\nMinimum value = C(0)\nMaximum value = C(25400)" }, "datalength": { "type": "string", "description": "Length of the token to be extracted from the data segment of an incoming packet, for use in the token method of load balancing. The length of the token, specified in bytes, must not be greater than 24 KB. Applicable to virtual servers of type TCP.\nMinimum value = C(1)\nMaximum value = C(100)" }, "td": { "type": "string", "description": "Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.\nMinimum value = C(0)\nMaximum value = C(4094)" }, "appflowlog": { "type": "string", "description": "Apply AppFlow logging to the virtual server." }, "disableprimaryondown": { "type": "string", "description": "If the primary virtual server goes down, do not allow it to return to primary status until manually enabled." }, "processlocal": { "type": "string", "description": "By turning on this option packets destined to a vserver in a cluster will not under go any steering. Turn this option for single packet request response mode or when the upstream device is performing a proper RSS for connection based distribution." }, "minautoscalemembers": { "type": "string", "description": "Minimum number of members expected to be present when vserver is used in Autoscale.\nMinimum value = C(0)\nMaximum value = C(5000)" }, "name": { "type": "string", "description": "Name for the virtual server. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore, hash C(#), period C(.), space C( ), colon C(:), at sign C(@), equal sign C(=), and hyphen C(-) characters. Can be changed after the virtual server is created.\nMinimum length = 1" }, "backuplbmethod": { "type": "string", "description": "Backup load balancing method. Becomes operational if the primary load balancing me\nthod fails or cannot be used.\nValid only if the primary method is based on static proximity." }, "downstateflush": { "type": "string", "description": "Flush all active transactions associated with a virtual server whose state transitions from UP to DOWN. Do not enable this option for applications that must complete their transactions." }, "pushlabel": { "type": "string", "description": "Expression for extracting a label from the server's response. Can be either an expression or the name of a named expression." }, "timeout": { "type": "string", "description": "Time period for which a persistence session is in effect.\nMinimum value = C(0)\nMaximum value = C(1440)" }, "v6persistmasklen": { "type": "string", "description": "Persistence mask for IP based persistence types, for IPv6 virtual servers.\nMinimum value = C(1)\nMaximum value = C(128)" }, "recursionavailable": { "description": "When set to YES, this option causes the DNS replies from this vserver to have the RA bit turned on. Typically one would set this option to YES, when the vserver is load balancing a set of DNS servers thatsupport recursive queries.", "$ref": "#/definitions/ansible_truth" }, "maxautoscalemembers": { "type": "string", "description": "Maximum number of members expected to be present when vserver is used in Autoscale.\nMinimum value = C(0)\nMaximum value = C(5000)" }, "oracleserverversion": { "type": "string", "description": "Oracle server version." }, "authnprofile": { "type": "string", "description": "Name of the authentication profile to be used when authentication is turned on." }, "port": { "type": "string", "description": "Port number for the virtual server.\nRange C(1) - C(65535)\n* in CLI is represented as C(65535) in NITRO API" }, "ssl_certkey": { "type": "string", "description": "The name of the ssl certificate that is bound to this service.\nThe ssl certificate must already exist.\nCreating the certificate can be done with the M(netscaler_ssl_certkey) module.\nThis option is only applicable only when C(servicetype) is C(SSL)." }, "mysqlcharacterset": { "type": "string", "description": "Character set that the virtual server advertises to clients." }, "authn401": { "description": "Enable or disable user authentication with HTTP 401 responses.", "$ref": "#/definitions/ansible_truth" }, "authnvsname": { "type": "string", "description": "Name of an authentication virtual server with which to authenticate users.\nMinimum length = 1\nMaximum length = 252" }, "netprofile": { "type": "string", "description": "Name of the network profile to associate with the virtual server. If you set this parameter, the virtual server uses only the IP addresses in the network profile as source IP addresses when initiating connections with servers.\nMinimum length = 1\nMaximum length = 127" }, "pushmulticlients": { "description": "Allow multiple Web 2.0 connections from the same client to connect to the virtual server and expect updates.", "$ref": "#/definitions/ansible_truth" }, "lbmethod": { "type": "string", "description": "Load balancing method. The available settings function as follows:\n* C(ROUNDROBIN) - Distribute requests in rotation, regardless of the load. Weights can be assigned to services to enforce weighted round robin distribution.\n* C(LEASTCONNECTION) (default) - Select the service with the fewest connections.\n* C(LEASTRESPONSETIME) - Select the service with the lowest average response time.\n* C(LEASTBANDWIDTH) - Select the service currently handling the least traffic.\n* C(LEASTPACKETS) - Select the service currently serving the lowest number of packets per second.\n* C(CUSTOMLOAD) - Base service selection on the SNMP metrics obtained by custom load monitors.\n* C(LRTM) - Select the service with the lowest response time. Response times are learned through monitoring probes. This method also takes the number of active connections into account.\nAlso available are a number of hashing methods, in which the appliance extracts a predetermined portion of the request, creates a hash of the portion, and then checks whether any previous requests had the same hash value. If it finds a match, it forwards the request to the service that served those previous requests. Following are the hashing methods:\n* C(URLHASH) - Create a hash of the request URL (or part of the URL).\n* C(DOMAINHASH) - Create a hash of the domain name in the request (or part of the domain name). The domain name is taken from either the URL or the Host header. If the domain name appears in both locations, the URL is preferred. If the request does not contain a domain name, the load balancing method defaults to C(LEASTCONNECTION).\n* C(DESTINATIONIPHASH) - Create a hash of the destination IP address in the IP header.\n* C(SOURCEIPHASH) - Create a hash of the source IP address in the IP header.\n* C(TOKEN) - Extract a token from the request, create a hash of the token, and then select the service to which any previous requests with the same token hash value were sent.\n* C(SRCIPDESTIPHASH) - Create a hash of the string obtained by concatenating the source IP address and destination IP address in the IP header.\n* C(SRCIPSRCPORTHASH) - Create a hash of the source IP address and source port in the IP header.\n* C(CALLIDHASH) - Create a hash of the SIP Call-ID header." }, "resrule": { "type": "string", "description": "Default syntax expression specifying which part of a server's response to use for creating rule based persistence sessions (persistence type RULE). Can be either an expression or the name of a named expression.\nExample:\nC(HTTP.RES.HEADER(\"setcookie\").VALUE(0).TYPECAST_NVLIST_T('=',';').VALUE(\"server1\"))." }, "connfailover": { "type": "string", "description": "Mode in which the connection failover feature must operate for the virtual server. After a failover, established TCP connections and UDP packet flows are kept active and resumed on the secondary appliance. Clients remain connected to the same servers. Available settings function as follows:\n* C(STATEFUL) - The primary appliance shares state information with the secondary appliance, in real time, resulting in some runtime processing overhead.\n* C(STATELESS) - State information is not shared, and the new primary appliance tries to re-create the packet flow on the basis of the information contained in the packets it receives.\n* C(DISABLED) - Connection failover does not occur." }, "sothreshold": { "type": "string", "description": "Threshold at which spillover occurs. Specify an integer for the C(CONNECTION) spillover method, a bandwidth value in kilobits per second for the C(BANDWIDTH) method (do not enter the units), or a percentage for the C(HEALTH) method (do not enter the percentage symbol).\nMinimum value = C(1)\nMaximum value = C(4294967287)" }, "sopersistence": { "type": "string", "description": "If spillover occurs, maintain source IP address based persistence for both primary and backup virtual servers." }, "dns64": { "type": "string", "description": "This argument is for enabling/disabling the C(dns64) on lbvserver." }, "skippersistency": { "type": "string", "description": "This argument decides the behavior incase the service which is selected from an existing persistence session has reached threshold." }, "tosid": { "type": "string", "description": "TOS ID of the virtual server. Applicable only when the load balancing redirection mode is set to TOS.\nMinimum value = C(1)\nMaximum value = C(63)" }, "tcpprofilename": { "type": "string", "description": "Name of the TCP profile whose settings are to be applied to the virtual server.\nMinimum length = 1\nMaximum length = 127" }, "backuppersistencetimeout": { "type": "string", "description": "Time period for which backup persistence is in effect.\nMinimum value = C(2)\nMaximum value = C(1440)" }, "newservicerequestunit": { "type": "string", "description": "Units in which to increment load at each interval in slow-start mode." }, "listenpriority": { "type": "string", "description": "Integer specifying the priority of the listen policy. A higher number specifies a lower priority. If a request matches the listen policies of more than one virtual server the virtual server whose listen policy has the highest priority (the lowest priority number) accepts the request.\nMinimum value = C(0)\nMaximum value = C(101)" }, "range": { "type": "string", "description": "Number of IP addresses that the appliance must generate and assign to the virtual server. The virtual server then functions as a network virtual server, accepting traffic on any of the generated IP addresses. The IP addresses are generated automatically, as follows:\n* For a range of n, the last octet of the address specified by the IP Address parameter increments n-1 times.\n* If the last octet exceeds 255, it rolls over to 0 and the third octet increments by 1.\nNote: The Range parameter assigns multiple IP addresses to one virtual server. To generate an array of virtual servers, each of which owns only one IP address, use brackets in the IP Address and Name parameters to specify the range. For example:\nadd lb vserver my_vserver[1-3] HTTP 192.0.2.[1-3] 80.\nMinimum value = C(1)\nMaximum value = C(254)" }, "comment": { "type": "string", "description": "Any comments that you might want to associate with the virtual server." }, "insertvserveripport": { "type": "string", "description": "Insert an HTTP header, whose value is the IP address and port number of the virtual server, before forwarding a request to the server. The format of the header is : _, where vipHeader is the name that you specify for the header. If the virtual server has an IPv6 address, the address in the header is enclosed in brackets ([ and ]) to separate it from the port number. If you have mapped an IPv4 address to a virtual server's IPv6 address, the value of this parameter determines which IP address is inserted in the header, as follows:\n* C(VIPADDR) - Insert the IP address of the virtual server in the HTTP header regardless of whether the virtual server has an IPv4 address or an IPv6 address. A mapped IPv4 address, if configured, is ignored.\n* C(V6TOV4MAPPING) - Insert the IPv4 address that is mapped to the virtual server's IPv6 address. If a mapped IPv4 address is not configured, insert the IPv6 address.\n* C(OFF) - Disable header insertion." }, "redirectportrewrite": { "type": "string", "description": "Rewrite the port and change the protocol to ensure successful HTTP redirects from services." }, "clttimeout": { "type": "string", "description": "Idle time, in seconds, after which a client connection is terminated.\nMinimum value = C(0)\nMaximum value = C(31536000)" }, "authenticationhost": { "type": "string", "description": "Fully qualified domain name (FQDN) of the authentication virtual server to which the user must be redirected for authentication. Make sure that the Authentication parameter is set to C(yes).\nMinimum length = 3\nMaximum length = 252" }, "servicetype": { "type": "string", "description": "Protocol used by the service (also called the service type)." }, "mysqlservercapabilities": { "type": "string", "description": "Server capabilities that the virtual server advertises to clients." }, "httpprofilename": { "type": "string", "description": "Name of the HTTP profile whose settings are to be applied to the virtual server.\nMinimum length = 1\nMaximum length = 127" }, "newservicerequestincrementinterval": { "type": "string", "description": "Interval, in seconds, between successive increments in the load on a new service or a service whose state has just changed from DOWN to UP. A value of 0 (zero) specifies manual slow start.\nMinimum value = C(0)\nMaximum value = C(3600)" }, "netmask": { "type": "string", "description": "IPv4 subnet mask to apply to the destination IP address or source IP address when the load balancing method is C(DESTINATIONIPHASH) or C(SOURCEIPHASH).\nMinimum length = 1" }, "somethod": { "type": "string", "description": "Type of threshold that, when exceeded, triggers spillover. Available settings function as follows:\n* C(CONNECTION) - Spillover occurs when the number of client connections exceeds the threshold.\n* DYNAMICCONNECTION - Spillover occurs when the number of client connections at the virtual server exceeds the sum of the maximum client (Max Clients) settings for bound services. Do not specify a spillover threshold for this setting, because the threshold is implied by the Max Clients settings of bound services.\n* C(BANDWIDTH) - Spillover occurs when the bandwidth consumed by the virtual server's incoming and outgoing traffic exceeds the threshold.\n* C(HEALTH) - Spillover occurs when the percentage of weights of the services that are UP drops below the threshold. For example, if services svc1, svc2, and svc3 are bound to a virtual server, with weights 1, 2, and 3, and the spillover threshold is 50%, spillover occurs if svc1 and svc3 or svc2 and svc3 transition to DOWN.\n* C(NONE) - Spillover does not occur." }, "persistmask": { "type": "string", "description": "Persistence mask for IP based persistence types, for IPv4 virtual servers.\nMinimum length = 1" }, "persistavpno": { "type": "string", "description": "Persist AVP number for Diameter Persistency.\nIn case this AVP is not defined in Base RFC 3588 and it is nested inside a Grouped AVP,\ndefine a sequence of AVP numbers (max 3) in order of parent to child. So say persist AVP number X\nis nested inside AVP Y which is nested in Z, then define the list as Z Y X.\nMinimum value = C(1)" }, "dnsprofilename": { "type": "string", "description": "Name of the DNS profile to be associated with the VServer. DNS profile properties will be applied to the transactions processed by a VServer. This parameter is valid only for DNS and DNS-TCP VServers.\nMinimum length = 1\nMaximum length = 127" }, "rhistate": { "type": "string", "description": "Route Health Injection (RHI) functionality of the NetSaler appliance for advertising the route of the VIP address associated with the virtual server. When Vserver RHI Level (RHI) parameter is set to VSVR_CNTRLD, the following are different RHI behaviors for the VIP address on the basis of RHIstate (RHI STATE) settings on the virtual servers associated with the VIP address:\n* If you set C(rhistate) to C(PASSIVE) on all virtual servers, the NetScaler ADC always advertises the route for the VIP address.\n* If you set C(rhistate) to C(ACTIVE) on all virtual servers, the NetScaler ADC advertises the route for the VIP address if at least one of the associated virtual servers is in UP state.\n* If you set C(rhistate) to C(ACTIVE) on some and PASSIVE on others, the NetScaler ADC advertises the route for the VIP address if at least one of the associated virtual servers, whose C(rhistate) set to C(ACTIVE), is in UP state." }, "bypassaaaa": { "description": "If this option is enabled while resolving DNS64 query AAAA queries are not sent to back end dns server.", "$ref": "#/definitions/ansible_truth" }, "cookiename": { "type": "string", "description": "Use this parameter to specify the cookie name for C(COOKIE) peristence type. It specifies the name of cookie with a maximum of 32 characters. If not specified, cookie name is internally generated." }, "mysqlprotocolversion": { "type": "string", "description": "MySQL protocol version that the virtual server advertises to clients." }, "redirurl": { "type": "string", "description": "URL to which to redirect traffic if the virtual server becomes unavailable.\nWARNING! Make sure that the domain in the URL does not match the domain specified for a content switching policy. If it does, requests are continuously redirected to the unavailable virtual server.\nMinimum length = 1" }, "servicegroupbindings": { "type": "array", "description": "List of service groups along with the weights that are load balanced.\nThe following suboptions are available." }, "cacheable": { "description": "Route cacheable requests to a cache redirection virtual server. The load balancing virtual server can forward requests only to a transparent cache redirection virtual server that has an IP address and port combination of *:80, so such a cache redirection virtual server must be configured on the appliance.", "$ref": "#/definitions/ansible_truth" }, "persistencebackup": { "type": "string", "description": "Backup persistence type for the virtual server. Becomes operational if the primary persistence mechanism fails." }, "mysqlserverversion": { "type": "string", "description": "MySQL server version string that the virtual server advertises to clients.\nMinimum length = 1\nMaximum length = 31" }, "authentication": { "description": "Enable or disable user authentication.", "$ref": "#/definitions/ansible_truth" }, "healththreshold": { "type": "string", "description": "Threshold in percent of active services below which vserver state is made down. If this threshold is 0, vserver state will be up even if one bound service is up.\nMinimum value = C(0)\nMaximum value = C(100)" }, "hashlength": { "type": "string", "description": "Number of bytes to consider for the hash value used in the URLHASH and DOMAINHASH load balancing methods.\nMinimum value = C(1)\nMaximum value = C(4096)" }, "sobackupaction": { "type": "string", "description": "Action to be performed if spillover is to take effect, but no backup chain to spillover is usable or exists." }, "l2conn": { "description": "Use Layer 2 parameters (channel number, MAC address, and VLAN ID) in addition to the 4-tuple (::::) that is used to identify a connection. Allows multiple TCP and non-TCP connections with the same 4-tuple to co-exist on the NetScaler appliance.", "$ref": "#/definitions/ansible_truth" }, "v6netmasklen": { "type": "string", "description": "Number of bits to consider in an IPv6 destination or source IP address, for creating the hash that is required by the C(DESTINATIONIPHASH) and C(SOURCEIPHASH) load balancing methods.\nMinimum value = C(1)\nMaximum value = C(128)" }, "sessionless": { "type": "string", "description": "Perform load balancing on a per-packet basis, without establishing sessions. Recommended for load balancing of intrusion detection system (IDS) servers and scenarios involving direct server return (DSR), where session information is unnecessary." }, "ipv46": { "type": "string", "description": "IPv4 or IPv6 address to assign to the virtual server." }, "persistencetype": { "type": "string", "description": "Type of persistence for the virtual server. Available settings function as follows:\n* C(SOURCEIP) - Connections from the same client IP address belong to the same persistence session.\n* C(COOKIEINSERT) - Connections that have the same HTTP Cookie, inserted by a Set-Cookie directive from a server, belong to the same persistence session.\n* C(SSLSESSION) - Connections that have the same SSL Session ID belong to the same persistence session.\n* C(CUSTOMSERVERID) - Connections with the same server ID form part of the same session. For this persistence type, set the Server ID (CustomServerID) parameter for each service and configure the Rule parameter to identify the server ID in a request.\n* C(RULE) - All connections that match a user defined rule belong to the same persistence session.\n* C(URLPASSIVE) - Requests that have the same server ID in the URL query belong to the same persistence session. The server ID is the hexadecimal representation of the IP address and port of the service to which the request must be forwarded. This persistence type requires a rule to identify the server ID in the request.\n* C(DESTIP) - Connections to the same destination IP address belong to the same persistence session.\n* C(SRCIPDESTIP) - Connections that have the same source IP address and destination IP address belong to the same persistence session.\n* C(CALLID) - Connections that have the same CALL-ID SIP header belong to the same persistence session.\n* C(RTSPSID) - Connections that have the same RTSP Session ID belong to the same persistence session.\n* FIXSESSION - Connections that have the same SenderCompID and TargetCompID values belong to the same persistence session." }, "ippattern": { "type": "string", "description": "IP address pattern, in dotted decimal notation, for identifying packets to be accepted by the virtual server. The IP Mask parameter specifies which part of the destination IP address is matched against the pattern. Mutually exclusive with the IP Address parameter.\nFor example, if the IP pattern assigned to the virtual server is C(198.51.100.0) and the IP mask is C(255.255.240.0) (a forward mask), the first 20 bits in the destination IP addresses are matched with the first 20 bits in the pattern. The virtual server accepts requests with IP addresses that range from C(198.51.96.1) to C(198.51.111.254). You can also use a pattern such as C(0.0.2.2) and a mask such as C(0.0.255.255) (a reverse mask).\nIf a destination IP address matches more than one IP pattern, the pattern with the longest match is selected, and the associated virtual server processes the request. For example, if virtual servers C(vs1) and C(vs2) have the same IP pattern, C(0.0.100.128), but different IP masks of C(0.0.255.255) and C(0.0.224.255), a destination IP address of C(198.51.100.128) has the longest match with the IP pattern of vs1. If a destination IP address matches two or more virtual servers to the same extent, the request is processed by the virtual server whose port number matches the port number in the request." }, "dbprofilename": { "type": "string", "description": "Name of the DB profile whose settings are to be applied to the virtual server.\nMinimum length = 1\nMaximum length = 127" }, "m": { "type": "string", "description": "Redirection mode for load balancing. Available settings function as follows:\n* C(IP) - Before forwarding a request to a server, change the destination IP address to the server's IP address.\n* C(MAC) - Before forwarding a request to a server, change the destination MAC address to the server's MAC address. The destination IP address is not changed. MAC-based redirection mode is used mostly in firewall load balancing deployments.\n* C(IPTUNNEL) - Perform IP-in-IP encapsulation for client IP packets. In the outer IP headers, set the destination IP address to the IP address of the server and the source IP address to the subnet IP (SNIP). The client IP packets are not modified. Applicable to both IPv4 and IPv6 packets.\n* C(TOS) - Encode the virtual server's TOS ID in the TOS field of the IP header.\nYou can use either the C(IPTUNNEL) or the C(TOS) option to implement Direct Server Return (DSR)." }, "mssqlserverversion": { "type": "string", "description": "For a load balancing virtual server of type C(MSSQL), the Microsoft SQL Server version. Set this parameter if you expect some clients to run a version different from the version of the database. This setting provides compatibility between the client-side and server-side connections by ensuring that all communication conforms to the server's version." }, "sopersistencetimeout": { "type": "string", "description": "Timeout for spillover persistence, in minutes.\nMinimum value = C(2)\nMaximum value = C(1440)" }, "newservicerequest": { "type": "string", "description": "Number of requests, or percentage of the load on existing services, by which to increase the load on a new service at each interval in slow-start mode. A non-zero value indicates that slow-start is applicable. A zero value indicates that the global RR startup parameter is applied. Changing the value to zero will cause services currently in slow start to take the full traffic as determined by the LB method. Subsequently, any new services added will use the global RR factor." }, "push": { "type": "string", "description": "Process traffic with the push virtual server that is bound to this load balancing virtual server." } } }, "vr_user": { "required": [ "name" ], "type": "object", "description": "Create, update and remove users.", "properties": { "force": { "type": "string", "description": "Password will only be changed with enforcement." }, "name": { "type": "string", "description": "Name of the user" }, "api_enabled": { "type": "string", "description": "Default: True\n\nWhether the API is enabled or not." }, "state": { "type": "string", "description": "Default: present\n\nState of the user." }, "acls": { "type": "array", "description": "List of ACLs this users should have, see U(https://www.vultr.com/api/#user_user_list).\nRequired if C(state=present).\nOne or more of the choices list, some depend on each other." }, "password": { "type": "string", "description": "Password of the user.\nOnly considered while creating a user or when C(force=yes)." }, "email": { "type": "string", "description": "Email of the user.\nRequired if C(state=present)." } } }, "cs_securitygroup": { "required": [ "name" ], "type": "object", "description": "Create and remove security groups.", "properties": { "account": { "type": "string", "description": "Account the security group is related to." }, "description": { "type": "string", "description": "Description of the security group." }, "domain": { "type": "string", "description": "Domain the security group is related to." }, "project": { "type": "string", "description": "Name of the project the security group to be created in." }, "state": { "type": "string", "description": "Default: present\n\nState of the security group." }, "name": { "type": "string", "description": "Name of the security group." } } }, "proxysql_query_rules": { "type": "object", "description": "The M(proxysql_query_rules) module modifies query rules using the proxysql admin interface.", "properties": { "comment": { "type": "string", "description": "Free form text field, usable for a descriptive comment of the query rule." }, "flagOUT": { "type": "string", "description": "Used in combination with I(flagIN) and apply to create chains of rules. When set, I(flagOUT) signifies the I(flagIN) to be used in the next chain of rules." }, "match_pattern": { "type": "string", "description": "Regular expression that matches the query text. The dialect of regular expressions used is that of re2 - https://github.com/google/re2" }, "mirror_flagOUT": { "type": "string", "description": "Enables query mirroring. If set I(mirror_flagOUT) can be used to evaluates the mirrored query against the specified chain of rules." }, "apply": { "type": "string", "description": "Used in combination with I(flagIN) and I(flagOUT) to create chains of rules. Setting apply to True signifies the last rule to be applied." }, "schemaname": { "type": "string", "description": "Filtering criteria matching schemaname. If I(schemaname) is non-NULL, a query will match only if the connection uses schemaname as its default schema." }, "replace_pattern": { "type": "string", "description": "This is the pattern with which to replace the matched pattern. Note that this is optional, and when omitted, the query processor will only cache, route, or set other parameters without rewriting." }, "digest": { "type": "string", "description": "Match queries with a specific digest, as returned by stats_mysql_query_digest.digest." }, "match_digest": { "type": "string", "description": "Regular expression that matches the query digest. The dialect of regular expressions used is that of re2 - https://github.com/google/re2" }, "mirror_hostgroup": { "type": "string", "description": "Enables query mirroring. If set I(mirror_hostgroup) can be used to mirror queries to the same or different hostgroup." }, "log": { "type": "string", "description": "Query will be logged." }, "delay": { "type": "string", "description": "Number of milliseconds to delay the execution of the query. This is essentially a throttling mechanism and QoS, and allows a way to give priority to queries over others. This value is added to the mysql-default_query_delay global variable that applies to all queries." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) - adds the rule, when C(absent) - removes the rule." }, "proxy_addr": { "type": "string", "description": "Match incoming traffic on a specific local IP." }, "username": { "type": "string", "description": "Filtering criteria matching username. If I(username) is non-NULL, a query will match only if the connection is made with the correct username." }, "destination_hostgroup": { "type": "string", "description": "Route matched queries to this hostgroup. This happens unless there is a started transaction and the logged in user has I(transaction_persistent) set to C(True) (see M(proxysql_mysql_users))." }, "proxy_port": { "type": "string", "description": "Match incoming traffic on a specific local port." }, "active": { "type": "string", "description": "A rule with I(active) set to C(False) will be tracked in the database, but will be never loaded in the in-memory data structures." }, "cache_ttl": { "type": "string", "description": "The number of milliseconds for which to cache the result of the query. Note in ProxySQL 1.1 I(cache_ttl) was in seconds." }, "error_msg": { "type": "string", "description": "Query will be blocked, and the specified error_msg will be returned to the client." }, "retries": { "type": "string", "description": "The maximum number of times a query needs to be re-executed in case of detected failure during the execution of the query. If retries is not specified, the global variable mysql-query_retries_on_failure applies." }, "negate_match_pattern": { "type": "string", "description": "If I(negate_match_pattern) is set to C(True), only queries not matching the query text will be considered as a match. This acts as a NOT operator in front of the regular expression matching against match_pattern." }, "flagIN": { "type": "string", "description": "Used in combination with I(flagOUT) and I(apply) to create chains of rules." }, "client_addr": { "type": "string", "description": "Match traffic from a specific source." }, "timeout": { "type": "string", "description": "The maximum timeout in milliseconds with which the matched or rewritten query should be executed. If a query run for longer than the specific threshold, the query is automatically killed. If timeout is not specified, the global variable mysql-default_query_timeout applies." }, "force_delete": { "type": "string", "description": "By default we avoid deleting more than one schedule in a single batch, however if you need this behaviour and you're not concerned about the schedules deleted, you can set I(force_delete) to C(True)." }, "rule_id": { "type": "string", "description": "The unique id of the rule. Rules are processed in rule_id order." } } }, "ovirt_host_storage_facts": { "required": [ "host" ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV HostStorages (applicable only for block storage).", "properties": { "fcp": { "type": "object", "description": "Dictionary with values for fibre channel storage type:\nC(address) - Address of the fibre channel storage server.\nC(port) - Port of the fibre channel storage server.\nC(lun_id) - LUN id." }, "host": { "type": "string", "description": "Host to get device list from." }, "iscsi": { "type": "object", "description": "Dictionary with values for iSCSI storage type:\nC(address) - Address of the iSCSI storage server.\nC(target) - The target IQN for the storage device.\nC(username) - A CHAP user name for logging into a target.\nC(password) - A CHAP password for logging into a target." } } }, "aws_s3_bucket_facts": { "type": "object", "description": "Lists S3 buckets in AWS", "properties": {} }, "iam_role": { "allOf": [ { "allOf": [ { "not": { "required": [ "managed_policy", "managed_policies" ], "type": "object" } } ] } ], "type": "object", "description": "Manage AWS IAM roles", "properties": { "managed_policies": { "type": "string", "description": "A list of managed policy ARNs or, since Ansible 2.4, a list of either managed policy ARNs or friendly names. To embed an inline policy, use M(iam_policy). To remove existing policies, use an empty list item." }, "name": { "type": "string", "description": "The name of the role to create." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove the IAM role" }, "purge_policies": { "description": "Default: True\n\nDetaches any managed policies not listed in the \"managed_policy\" option. Set to false if you want to attach policies elsewhere.", "$ref": "#/definitions/ansible_truth" }, "assume_role_policy_document": { "type": "string", "description": "The trust relationship policy document that grants an entity permission to assume the role.\nThis parameter is required when C(state=present)." }, "managed_policy": { "type": "string", "description": "A list of managed policy ARNs or, since Ansible 2.4, a list of either managed policy ARNs or friendly names. To embed an inline policy, use M(iam_policy). To remove existing policies, use an empty list item." }, "create_instance_profile": { "description": "Default: True\n\nCreates an IAM instance profile along with the role", "$ref": "#/definitions/ansible_truth" }, "path": { "type": "string", "description": "Default: /\n\nThe path to the role. For more information about paths, see U(http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html)." }, "description": { "type": "string", "description": "Provide a description of the new role" } } }, "win_psmodule": { "required": [ "name" ], "type": "object", "description": "This module helps to install Powershell modules and register custom modules repository on Windows Server.", "properties": { "url": { "type": "string", "description": "Url of the custom repository." }, "allow_clobber": { "type": "string", "description": "If yes imports all commands, even if they have the same names as commands that already exists. Available only in Powershell 5.1 or higher." }, "name": { "type": "string", "description": "Name of the powershell module that has to be installed." }, "repository": { "type": "string", "description": "Name of the custom repository to register." }, "state": { "type": "string", "description": "Default: present\n\nIf present a new module is installed. If absent a module is removed." } } }, "purefa_host": { "required": [ "host" ], "type": "object", "description": "Create, delete or modify hosts on Pure Storage FlashArrays.", "properties": { "protocol": { "type": "string", "description": "Default: iscsi\n\nDefines the host connection protocol for volumes." }, "host": { "type": "string", "description": "The name of the host." }, "volume": { "type": "string", "description": "Volume name to map to the host." }, "state": { "type": "string", "description": "Default: present\n\nDefine whether the host should exist or not.\nWhen removing host all connected volumes will be disconnected." }, "iqn": { "type": "array", "description": "List of IQNs of the host if protocol is iscsi." }, "wwns": { "type": "array", "description": "List of wwns of the host if protocol is fc." } } }, "ec2_vpc_endpoint_facts": { "required": [ "query" ], "type": "object", "description": "Gets various details related to AWS VPC Endpoints", "properties": { "query": { "type": "string", "description": "Specifies the query action to take. Services returns the supported AWS services that can be specified when creating an endpoint." }, "vpc_endpoint_ids": { "type": "string", "description": "Default: None\n\nGet details of specific endpoint IDs\nProvide this value as a list" }, "filters": { "type": "string", "description": "Default: None\n\nA dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpoints.html) for possible filters." } } }, "win_ping": { "type": "object", "description": "Checks management connectivity of a windows host", "properties": { "data": { "type": "string", "description": "Default: pong\n\nAlternate data to return instead of 'pong'" } } }, "tower_project": { "required": [ "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower projects. See U(https://www.ansible.com/tower) for an overview.", "properties": { "scm_branch": { "type": "string", "description": "The branch to use for the scm resource." }, "name": { "type": "string", "description": "Name to use for the project." }, "scm_credential": { "type": "string", "description": "Name of the credential to use with this scm resource." }, "scm_clean": { "type": "string", "description": "Remove local modifications before updating." }, "scm_url": { "type": "string", "description": "URL of scm resource." }, "scm_delete_on_update": { "type": "string", "description": "Remove the repository completely before updating." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "local_path": { "type": "string", "description": "The server playbook directory for manual projects." }, "scm_type": { "type": "string", "description": "Default: manual\n\nType of scm resource." }, "scm_update_on_launch": { "type": "string", "description": "Before an update to the local repository before launching a job with this project." }, "organization": { "type": "string", "description": "Primary key of organization for project." }, "description": { "type": "string", "description": "Description to use for the project." } } }, "elb_classic_lb": { "required": [ "name", "state" ], "type": "object", "description": "Returns information about the load balancer.\nWill be marked changed when called only if state is changed.", "properties": { "purge_subnets": { "type": "string", "description": "Purge existing subnet on ELB that are not found in subnets" }, "purge_instance_ids": { "type": "string", "description": "Purge existing instance ids on ELB that are not found in instance_ids" }, "connection_draining_timeout": { "type": "string", "description": "Wait a specified timeout allowing connections to drain before terminating an instance" }, "access_logs": { "type": "string", "description": "Default: None\n\nAn associative array of access logs configuration settings (see example)" }, "state": { "type": "string", "description": "Create or destroy the ELB" }, "purge_listeners": { "type": "string", "description": "Default: True\n\nPurge existing listeners on ELB that are not found in listeners" }, "scheme": { "type": "string", "description": "Default: internet-facing\n\nThe scheme to use when creating the ELB. For a private VPC-visible ELB use 'internal'. If you choose to update your scheme with a different value the ELB will be destroyed and recreated. To update scheme you must use the option wait." }, "subnets": { "type": "string", "description": "Default: None\n\nA list of VPC subnets to use when creating ELB. Zones should be empty if using this." }, "health_check": { "type": "string", "description": "Default: None\n\nAn associative array of health check configuration settings (see example)" }, "tags": { "type": "string", "description": "An associative array of tags. To delete all tags, supply an empty dict." }, "instance_ids": { "type": "array", "description": "List of instance ids to attach to this ELB" }, "idle_timeout": { "type": "string", "description": "ELB connections from clients and to servers are timed out after this amount of time" }, "wait_timeout": { "type": "string", "description": "Default: 60\n\nUsed in conjunction with wait. Number of seconds to wait for the elb to be terminated. A maximum of 600 seconds (10 minutes) is allowed." }, "cross_az_load_balancing": { "type": "string", "description": "Default: no\n\nDistribute load across all configured Availability Zones" }, "security_group_ids": { "type": "string", "description": "Default: None\n\nA list of security groups to apply to the elb" }, "purge_zones": { "type": "string", "description": "Purge existing availability zones on ELB that are not found in zones" }, "wait": { "type": "string", "description": "When specified, Ansible will check the status of the load balancer to ensure it has been successfully removed from AWS." }, "zones": { "type": "array", "description": "List of availability zones to enable on this ELB" }, "name": { "type": "string", "description": "The name of the ELB" }, "listeners": { "type": "array", "description": "List of ports/protocols for this ELB to listen on (see example)" }, "security_group_names": { "type": "string", "description": "Default: None\n\nA list of security group names to apply to the elb" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to \"no\", SSL certificates will not be validated for boto versions >= 2.6.0." }, "stickiness": { "type": "string", "description": "An associative array of stickiness policy settings. Policy will be applied to all listeners ( see example )" } } }, "syslogger": { "required": [ "msg" ], "type": "object", "description": "Uses syslog to add log entries to the host.\nCan specify facility and priority.", "properties": { "msg": { "type": "string", "description": "This is the message to place in syslog" }, "priority": { "type": "string", "description": "Default: info\n\nSet the log priority" }, "log_pid": { "description": "Default: no\n\nLog the pid in brackets", "$ref": "#/definitions/ansible_truth" }, "facility": { "type": "string", "description": "Default: daemon\n\nSet the log facility" } } }, "os_keystone_service": { "required": [ "service_type", "name" ], "type": "object", "description": "Create, update, or delete OpenStack Identity service. If a service with the supplied name already exists, it will be updated with the new description and enabled attributes.", "properties": { "service_type": { "type": "string", "description": "The type of service" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "enabled": { "type": "string", "description": "Default: True\n\nIs the service enabled" }, "name": { "type": "string", "description": "Name of the service" }, "description": { "type": "string", "description": "Default: None\n\nDescription of the service" } } }, "vca_nat": { "required": [ "nat_rules" ], "type": "object", "description": "Adds or removes nat rules from a gateway in a vca environment", "properties": { "nat_rules": { "type": "string", "description": "A list of rules to be added to the gateway, Please see examples on valid entries" }, "purge_rules": { "type": "string", "description": "If set to true, it will delete all rules in the gateway that are not given as paramter to this module." } } }, "oneview_enclosure_facts": { "type": "object", "description": "Retrieve facts about one or more of the Enclosures from OneView.", "properties": { "name": { "type": "string", "description": "Enclosure name." }, "options": { "type": "array", "description": "List with options to gather additional facts about an Enclosure and related resources. Options allowed: C(script), C(environmentalConfiguration), and C(utilization). For the option C(utilization), you can provide specific parameters." } } }, "nxos_acl": { "required": [ "name" ], "type": "object", "description": "Manages access list entries for ACLs.", "properties": { "seq": { "type": "string", "description": "Sequence number of the entry (ACE)." }, "time-range": { "type": "string", "description": "Name of time-range to apply." }, "dest_port_op": { "type": "string", "description": "Destination port operands such as eq, neq, gt, lt, range." }, "established": { "type": "string", "description": "Match established connections." }, "precedence": { "type": "string", "description": "Match packets with given precedence." }, "proto": { "type": "string", "description": "Port number or protocol (as supported by the switch)." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "fragments": { "type": "string", "description": "Check non-initial fragments." }, "src_port1": { "type": "string", "description": "Port/protocol and also first (lower) port when using range operand." }, "src_port2": { "type": "string", "description": "Second (end) port when using range operand." }, "src_port_op": { "type": "string", "description": "Source port operands such as eq, neq, gt, lt, range." }, "psh": { "type": "string", "description": "Match on the PSH bit." }, "dest": { "type": "string", "description": "Destination ip and mask using IP/MASK notation and supports the keyword 'any'." }, "syn": { "type": "string", "description": "Match on the SYN bit." }, "dscp": { "type": "string", "description": "Match packets with given dscp value." }, "rst": { "type": "string", "description": "Match on the RST bit." }, "log": { "type": "string", "description": "Log matches against this entry." }, "src": { "type": "string", "description": "Source ip and mask using IP/MASK notation and supports keyword 'any'." }, "remark": { "type": "string", "description": "If action is set to remark, this is the description." }, "urg": { "type": "string", "description": "Match on the URG bit." }, "name": { "type": "string", "description": "Case sensitive name of the access list (ACL)." }, "ack": { "type": "string", "description": "Match on the ACK bit." }, "fin": { "type": "string", "description": "Match on the FIN bit." }, "action": { "type": "string", "description": "Action of the ACE." }, "dest_port1": { "type": "string", "description": "Port/protocol and also first (lower) port when using range operand." }, "dest_port2": { "type": "string", "description": "Second (end) port when using range operand." } } }, "edgeos_config": { "type": "object", "description": "This module provides configuration file management of EdgeOS devices. It provides arguments for managing both the configuration file and state of the active configuration. All configuration statements are based on `set` and `delete` commands in the device configuration.\nThis is a network module and requires the C(connection: network_cli) in order to work properly.\nFor more information please see the L(Network Guide,../network/getting_started/index.html).", "properties": { "comment": { "type": "string", "description": "Default: configured by edgeos_config\n\nAllows a commit description to be specified to be included when the configuration is committed. If the configuration is not changed or committed, this argument is ignored." }, "src": { "type": "string", "description": "The C(src) argument specifies the path to the source config file to load. The source config file can either be in bracket format or set format. The source file can include Jinja2 template variables." }, "config": { "type": "string", "description": "The C(config) argument specifies the base configuration to use to compare against the desired configuration. If this value is not specified, the module will automatically retrieve the current active configuration from the remote device." }, "lines": { "type": "string", "description": "The ordered set of configuration lines to be managed and compared with the existing configuration on the remote device." }, "save": { "type": "string", "description": "The C(save) argument controls whether or not changes made to the active configuration are saved to disk. This is independent of committing the config. When set to C(True), the active configuration is saved." }, "backup": { "description": "Default: no\n\nThe C(backup) argument will backup the current device's active configuration to the Ansible control host prior to making any changes. The backup file will be located in the backup folder in the playbook root directory or role root directory if the playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "match": { "type": "string", "description": "Default: line\n\nThe C(match) argument controls the method used to match against the current active configuration. By default, the desired config is matched against the active config and the deltas are loaded. If the C(match) argument is set to C(none) the active configuration is ignored and the configuration is always loaded." } } }, "avi_ipaddrgroup": { "required": [ "name" ], "type": "object", "description": "This module is used to configure IpAddrGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "country_codes": { "type": "string", "description": "Populate the ip address ranges from the geo database for this country." }, "ip_ports": { "type": "string", "description": "Configure (ip address, port) tuple(s)." }, "uuid": { "type": "string", "description": "Uuid of the ip address group." }, "prefixes": { "type": "string", "description": "Configure ip address prefix(es)." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "marathon_service_port": { "type": "string", "description": "Task port associated with marathon service port.\nIf marathon app has multiple service ports, this is required.\nElse, the first task port is used." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "Name of the ip address group." }, "ranges": { "type": "string", "description": "Configure ip address range(s)." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "addrs": { "type": "string", "description": "Configure ip address(es)." }, "apic_epg_name": { "type": "string", "description": "Populate ip addresses from members of this cisco apic epg." }, "marathon_app_name": { "type": "string", "description": "Populate ip addresses from tasks of this marathon app." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for the object." } } }, "ovirt_mac_pools": { "required": [ "name" ], "type": "object", "description": "This module manage MAC pools in oVirt/RHV.", "properties": { "allow_duplicates": { "type": "string", "description": "If (true) allow a MAC address to be used multiple times in a pool.\nDefault value is set by oVirt/RHV engine to I(false)." }, "ranges": { "type": "array", "description": "List of MAC ranges. The from and to should be split by comma.\nFor example: 00:1a:4a:16:01:51,00:1a:4a:16:01:61" }, "state": { "type": "string", "description": "Default: present\n\nShould the mac pool be present or absent." }, "name": { "type": "string", "description": "Name of the MAC pool to manage." }, "description": { "type": "string", "description": "Description of the MAC pool." } } }, "exo_dns_domain": { "required": [ "name" ], "type": "object", "description": "Create and remove domain records.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the resource." }, "name": { "type": "string", "description": "Name of the record." } } }, "dnsimple": { "type": "object", "description": "Manages domains and records via the DNSimple API, see the docs: U(http://developer.dnsimple.com/)", "properties": { "solo": { "type": "string", "description": "Whether the record should be the only one for that record type and record name. Only use with state=present on a record" }, "domain": { "type": "string", "description": "Domain to work with. Can be the domain name (e.g. \"mydomain.com\") or the numeric ID of the domain in DNSimple. If omitted, a list of domains will be returned.\nIf domain is present but the domain doesn't exist, it will be created." }, "account_email": { "type": "string", "description": "Account email. If omitted, the env variables DNSIMPLE_EMAIL and DNSIMPLE_API_TOKEN will be looked for. If those aren't found, a C(.dnsimple) file will be looked for, see: U(https://github.com/mikemaccana/dnsimple-python#getting-started)\n" }, "record_ids": { "type": "array", "description": "List of records to ensure they either exist or don't exist" }, "value": { "type": "string", "description": "Record value\nMust be specified when trying to ensure a record exists" }, "priority": { "type": "string", "description": "Record priority" }, "record": { "type": "string", "description": "Record to add, if blank a record for the domain will be created, supports the wildcard (*)" }, "state": { "type": "string", "description": "whether the record should exist or not" }, "ttl": { "type": "string", "description": "Default: 3600 (one hour)\n\nThe TTL to give the new record" }, "type": { "type": "string", "description": "The type of DNS record to create" }, "account_api_token": { "type": "string", "description": "Account API token. See I(account_email) for info." } } }, "pn_show": { "required": [ "pn_command" ], "type": "object", "description": "Execute show command in the nodes and returns the results read from the device.", "properties": { "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_command": { "type": "string", "description": "The C(pn_command) takes a CLI show command as value." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_parameters": { "type": "string", "description": "Display output using a specific parameter. Use 'all' to display possible output. List of comma separated parameters." }, "pn_options": { "type": "string", "description": "Specify formatting options." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the cli on." } } }, "sensu_handler": { "required": [ "name", "handlers", "type" ], "type": "object", "description": "Manages Sensu handler configuration\nFor more information, refer to the Sensu documentation: U(https://sensuapp.org/docs/latest/reference/handlers.html)", "properties": { "pipe": { "type": "string", "description": "The pipe definition scope, used to configure the Sensu transport pipe.\nNOTE: the pipe attribute is only required for Transport handlers (i.e. handlers configured with \"type\": \"transport\")." }, "name": { "type": "string", "description": "A unique name for the handler. The name cannot contain special characters or spaces." }, "handlers": { "type": "string", "description": "An array of Sensu event handlers (names) to use for events using the handler set.\nEach array item must be a string.\nNOTE: the handlers attribute is only required for handler sets (i.e. handlers configured with \"type\": \"set\")." }, "timeout": { "type": "string", "description": "Default: 10\n\nThe handler execution duration timeout in seconds (hard stop).\nOnly used by pipe and tcp handler types." }, "severities": { "type": "string", "description": "An array of check result severities the handler will handle.\nNOTE: event resolution bypasses this filtering." }, "filter": { "type": "string", "description": "The Sensu event filter (name) to use when filtering events for the handler." }, "mutator": { "type": "string", "description": "The Sensu event mutator (name) to use to mutate event data for the handler." }, "state": { "type": "string", "description": "Default: present\n\nWhether the handler should be present or not" }, "command": { "type": "string", "description": "The handler command to be executed.\nThe event data is passed to the process via STDIN.\nNOTE: the command attribute is only required for Pipe handlers (i.e. handlers configured with \"type\": \"pipe\")." }, "filters": { "type": "string", "description": "An array of Sensu event filters (names) to use when filtering events for the handler.\nEach array item must be a string." }, "handle_flapping": { "type": "string", "description": "If events in the flapping state should be handled." }, "handle_silenced": { "type": "string", "description": "If events matching one or more silence entries should be handled." }, "type": { "type": "string", "description": "The handler type" }, "socket": { "type": "string", "description": "The socket definition scope, used to configure the TCP/UDP handler socket.\nNOTE: the socket attribute is only required for TCP/UDP handlers (i.e. handlers configured with \"type\": \"tcp\" or \"type\": \"udp\")." } } }, "a10_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "server_ip", "ip", "address" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "server_name", "server" ], "type": "object" } }, { "oneOf": [ { "required": [ "server_name" ], "type": "object" }, { "required": [ "server" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "server_ports", "port" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "server_status", "status" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SLB (Server Load Balancer) server objects on A10 Networks devices via aXAPIv2.", "properties": { "status": { "type": "string", "description": "Default: enabled\n\nThe SLB virtual server status." }, "server_name": { "type": "string", "description": "The SLB (Server Load Balancer) server name." }, "server_ports": { "type": "string", "description": "A list of ports to create for the server. Each list item should be a dictionary which specifies the C(port:) and C(protocol:), but can also optionally specify the C(status:). See the examples below for details. This parameter is required when C(state) is C(present)." }, "ip": { "type": "string", "description": "The SLB server IPv4 address." }, "partition": { "type": "string", "description": "set active-partition" }, "server": { "type": "string", "description": "The SLB (Server Load Balancer) server name." }, "state": { "type": "string", "description": "Default: present\n\nThis is to specify the operation to create, update or remove SLB server." }, "server_ip": { "type": "string", "description": "The SLB server IPv4 address." }, "address": { "type": "string", "description": "The SLB server IPv4 address." }, "server_status": { "type": "string", "description": "Default: enabled\n\nThe SLB virtual server status." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "port": { "type": "string", "description": "A list of ports to create for the server. Each list item should be a dictionary which specifies the C(port:) and C(protocol:), but can also optionally specify the C(status:). See the examples below for details. This parameter is required when C(state) is C(present)." } } }, "keycloak_client": { "type": "object", "description": "This module allows the administration of Keycloak clients via the Keycloak REST API. It requires access to the REST API via OpenID Connect; the user connecting and the client being used must have the requisite access rights. In a default Keycloak installation, admin-cli and an admin user would work, as would a separate client definition with the scope tailored to your needs and a user having the expected roles.\nThe names of module options are snake_cased versions of the camelCase ones found in the Keycloak API and its documentation at U(http://www.keycloak.org/docs-api/3.3/rest-api/)\nThe Keycloak API does not always enforce for only sensible settings to be used -- you can set SAML-specific settings on an OpenID Connect client for instance and vice versa. Be careful. If you do not specify a setting, usually a sensible default is chosen.", "properties": { "default_roles": { "type": "array", "description": "list of default roles for this client. If the client roles referenced do not exist yet, they will be created. This is 'defaultRoles' in the Keycloak REST API." }, "protocol": { "type": "string", "description": "Type of client (either C(openid-connect) or C(saml)." }, "use_template_config": { "type": "string", "description": "Whether or not to use configuration from the I(client_template). This is 'useTemplateConfig' in the Keycloak REST API." }, "authorization_settings": { "type": "string", "description": "a data structure defining the authorization settings for this client. For reference, please see the Keycloak API docs at U(http://www.keycloak.org/docs-api/3.3/rest-api/index.html#_resourceserverrepresentation). This is 'authorizationSettings' in the Keycloak REST API." }, "frontchannel_logout": { "type": "string", "description": "Is frontchannel logout enabled for this client or not. This is 'frontchannelLogout' in the Keycloak REST API." }, "use_template_scope": { "type": "string", "description": "Whether or not to use scope configuration from the I(client_template). This is 'useTemplateScope' in the Keycloak REST API." }, "registration_access_token": { "type": "string", "description": "The registration access token provides access for clients to the client registration service. This is 'registrationAccessToken' in the Keycloak REST API." }, "authorization_services_enabled": { "type": "string", "description": "Are authorization services enabled for this client or not (OpenID connect). This is 'authorizationServicesEnabled' in the Keycloak REST API." }, "id": { "type": "string", "description": "Id of client to be worked on. This is usually an UUID. Either this or I(client_id) is required. If you specify both, this takes precedence." }, "standard_flow_enabled": { "type": "string", "description": "Enable standard flow for this client or not (OpenID connect). This is 'standardFlowEnabled' in the Keycloak REST API." }, "direct_access_grants_enabled": { "type": "string", "description": "Are direct access grants enabled for this client or not (OpenID connect). This is 'directAccessGrantsEnabled' in the Keycloak REST API." }, "web_origins": { "type": "array", "description": "List of allowed CORS origins. This is 'webOrigins' in the Keycloak REST API." }, "surrogate_auth_required": { "type": "string", "description": "Whether or not surrogate auth is required. This is 'surrogateAuthRequired' in the Keycloak REST API." }, "implicit_flow_enabled": { "type": "string", "description": "Enable implicit flow for this client or not (OpenID connect). This is 'implictFlowEnabled' in the Keycloak REST API." }, "node_re_registration_timeout": { "type": "string", "description": "Cluster node re-registration timeout for this client. This is 'nodeReRegistrationTimeout' in the Keycloak REST API." }, "root_url": { "type": "string", "description": "Root URL appended to relative URLs for this client This is 'rootUrl' in the Keycloak REST API." }, "base_url": { "type": "string", "description": "Default URL to use when the auth server needs to redirect or link back to the client This is 'baseUrl' in the Keycloak REST API." }, "not_before": { "type": "string", "description": "Revoke any tokens issued before this date for this client (this is a UNIX timestamp). This is 'notBefore' in the Keycloak REST API." }, "full_scope_allowed": { "type": "string", "description": "Is the \"Full Scope Allowed\" feature set for this client or not. This is 'fullScopeAllowed' in the Keycloak REST API." }, "secret": { "type": "string", "description": "When using I(client_authenticator_type) C(client-secret) (the default), you can specify a secret here (otherwise one will be generated if it does not exit). If changing this secret, the module will not register a change currently (but the changed secret will be saved)." }, "bearer_only": { "type": "string", "description": "The access type of this client is bearer-only. This is 'bearerOnly' in the Keycloak REST API." }, "redirect_uris": { "type": "string", "description": "Acceptable redirect URIs for this client. This is 'redirectUris' in the Keycloak REST API." }, "description": { "type": "string", "description": "Description of the client in Keycloak" }, "registered_nodes": { "type": "string", "description": "dict of registered cluster nodes (with C(nodename) as the key and last registration time as the value). This is 'registeredNodes' in the Keycloak REST API." }, "state": { "type": "string", "description": "Default: present\n\nState of the client\nOn C(present), the client will be created (or updated if it exists already).\nOn C(absent), the client will be removed if it exists" }, "client_id": { "type": "string", "description": "Client id of client to be worked on. This is usually an alphanumeric name chosen by you. Either this or I(id) is required. If you specify both, I(id) takes precedence. This is 'clientId' in the Keycloak REST API." }, "public_client": { "type": "string", "description": "Is the access type for this client public or not. This is 'publicClient' in the Keycloak REST API." }, "service_accounts_enabled": { "type": "string", "description": "Are service accounts enabled for this client or not (OpenID connect). This is 'serviceAccountsEnabled' in the Keycloak REST API." }, "name": { "type": "string", "description": "Name of the client (this is not the same as I(client_id))" }, "client_authenticator_type": { "type": "string", "description": "How do clients authenticate with the auth server? Either C(client-secret) or C(client-jwt) can be chosen. When using C(client-secret), the module parameter I(secret) can set it, while for C(client-jwt), you can use the keys C(use.jwks.url), C(jwks.url), and C(jwt.credential.certificate) in the I(attributes) module parameter to configure its behavior. This is 'clientAuthenticatorType' in the Keycloak REST API." }, "admin_url": { "type": "string", "description": "URL to the admin interface of the client This is 'adminUrl' in the Keycloak REST API." }, "enabled": { "type": "string", "description": "Is this client enabled or not?" }, "protocol_mappers": { "type": "string", "description": "a list of dicts defining protocol mappers for this client. This is 'protocolMappers' in the Keycloak REST API." }, "client_template": { "type": "string", "description": "Client template to use for this client. If it does not exist this field will silently be dropped. This is 'clientTemplate' in the Keycloak REST API." }, "use_template_mappers": { "type": "string", "description": "Whether or not to use mapper configuration from the I(client_template). This is 'useTemplateMappers' in the Keycloak REST API." }, "attributes": { "type": "string", "description": "A dict of further attributes for this client. This can contain various configuration settings; an example is given in the examples section. While an exhaustive list of permissible options is not available; possible options as of Keycloak 3.4 are listed below. The Keycloak API does not validate whether a given option is appropriate for the protocol used; if specified anyway, Keycloak will simply not use it." }, "consent_required": { "type": "string", "description": "If enabled, users have to consent to client access. This is 'consentRequired' in the Keycloak REST API." } } }, "win_security_policy": { "required": [ "section", "key", "value" ], "type": "object", "description": "Allows you to set the local security policies that are configured by SecEdit.exe.", "properties": { "section": { "type": "string", "description": "The ini section the key exists in.\nIf the section does not exist then the module will return an error.\nExample sections to use are 'Account Policies', 'Local Policies', 'Event Log', 'Restricted Groups', 'System Services', 'Registry' and 'File System'" }, "value": { "type": "string", "description": "The value for the ini key or policy name.\nIf the key takes in a boolean value then 0 = False and 1 = True." }, "key": { "type": "string", "description": "The ini key of the section or policy name to modify.\nThe module will return an error if this key is invalid." } } }, "cloudfront_origin_access_identity": { "type": "object", "description": "Allows for easy creation, updating and deletion of origin access identities.", "properties": { "comment": { "type": "string", "description": "A comment to describe the cloudfront origin access identity." }, "state": { "type": "string", "description": "Default: update_origin_access_identity\n\nIf the named resource should exist." }, "origin_access_identity_id": { "type": "string", "description": "The origin_access_identity_id of the cloudfront distribution." }, "caller_reference": { "type": "string", "description": "A unique identifier to reference the origin access identity by." } } }, "win_iis_webbinding": { "required": [ "name" ], "type": "object", "description": "Creates, Removes and configures a binding to an existing IIS Web site", "properties": { "protocol": { "type": "string", "description": "The protocol to be used for the Web binding (usually HTTP, HTTPS, or FTP)." }, "name": { "type": "string", "description": "Names of web site" }, "certificate_hash": { "type": "string", "description": "Certificate hash for the SSL binding. The certificate hash is the unique identifier for the certificate." }, "ip": { "type": "string", "description": "The IP address to bind to / use for the new site." }, "host_header": { "type": "string", "description": "The host header to bind to / use for the new site." }, "state": { "type": "string", "description": "State of the binding" }, "port": { "type": "string", "description": "The port to bind to / use for the new site." }, "certificate_store_name": { "type": "string", "description": "Default: My\n\nName of the certificate store where the certificate for the binding is located." } } }, "rhn_channel": { "required": [ "sysname", "name", "url", "password", "user" ], "type": "object", "description": "Adds or removes Red Hat software channels", "properties": { "sysname": { "type": "string", "description": "name of the system as it is known in RHN/Satellite" }, "name": { "type": "string", "description": "name of the software channel" }, "url": { "type": "string", "description": "The full url to the RHN/Satellite api" }, "state": { "type": "string", "description": "Default: present\n\nwhether the channel should be present or not" }, "user": { "type": "string", "description": "RHN/Satellite user" }, "password": { "type": "string", "description": "the user's password" } } }, "netscaler_service": { "type": "object", "description": "Manage service configuration in Netscaler.\nThis module allows the creation, deletion and modification of Netscaler services.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.\nThis module supports check mode.", "properties": { "comment": { "type": "string", "description": "Any information about the service." }, "tcpb": { "type": "string", "description": "Enable TCP buffering for the service." }, "cachetype": { "type": "string", "description": "Cache type supported by the cache server." }, "maxbandwidth": { "type": "string", "description": "Maximum bandwidth, in Kbps, allocated to the service.\nMinimum value = 0\nMaximum value = 4294967287" }, "ip": { "type": "string", "description": "IP to assign to the service.\nMinimum length = 1" }, "servername": { "type": "string", "description": "Name of the server that hosts the service.\nMinimum length = 1" }, "disabled": { "description": "When set to C(yes) the service state will be set to DISABLED.\nWhen set to C(no) the service state will be set to ENABLED.\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "maxreq": { "type": "string", "description": "Maximum number of requests that can be sent on a persistent connection to the service.\nNote: Connection requests beyond this value are rejected.\nMinimum value = 0\nMaximum value = 65535" }, "monitor_bindings": { "type": "string", "description": "A list of load balancing monitors to bind to this service.\nEach monitor entry is a dictionary which may contain the following options.\nNote that if not using the built in monitors they must first be setup." }, "graceful": { "type": "string", "description": "Shut down gracefully, not accepting any new connections, and disabling the service when all of its connections are closed." }, "svrtimeout": { "type": "string", "description": "Time, in seconds, after which to terminate an idle server connection.\nMinimum value = 0\nMaximum value = 31536000" }, "port": { "type": "string", "description": "Port number of the service.\nRange 1 - 65535\n* in CLI is represented as 65535 in NITRO API" }, "clttimeout": { "type": "string", "description": "Time, in seconds, after which to terminate an idle client connection.\nMinimum value = 0\nMaximum value = 31536000" }, "servicetype": { "type": "string", "description": "Protocol in which data is exchanged with the service." }, "cacheable": { "type": "string", "description": "Use the transparent cache redirection virtual server to forward requests to the cache server.\nNote: Do not specify this parameter if you set the Cache Type parameter." }, "pathmonitor": { "type": "string", "description": "Path monitoring for clustering." }, "maxclient": { "type": "string", "description": "Maximum number of simultaneous open connections to the service.\nMinimum value = 0\nMaximum value = 4294967294" }, "ipaddress": { "type": "string", "description": "The new IP address of the service." }, "usip": { "type": "string", "description": "Use the client's IP address as the source IP address when initiating a connection to the server. When creating a service, if you do not set this parameter, the service inherits the global Use Source IP setting (available in the enable ns mode and disable ns mode CLI commands, or in the System > Settings > Configure modes > Configure Modes dialog box). However, you can override this setting after you create the service." }, "netprofile": { "type": "string", "description": "Network profile to use for the service.\nMinimum length = 1\nMaximum length = 127" }, "customserverid": { "type": "string", "description": "Default: None\n\nUnique identifier for the service. Used when the persistency type for the virtual server is set to Custom Server ID." }, "td": { "type": "string", "description": "Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.\nMinimum value = 0\nMaximum value = 4094" }, "httpprofilename": { "type": "string", "description": "Name of the HTTP profile that contains HTTP configuration settings for the service.\nMinimum length = 1\nMaximum length = 127" }, "pathmonitorindv": { "type": "string", "description": "Individual Path monitoring decisions." }, "cleartextport": { "type": "string", "description": "Port to which clear text data must be sent after the appliance decrypts incoming SSL traffic. Applicable to transparent SSL services.\nMinimum value = 1" }, "appflowlog": { "type": "string", "description": "Enable logging of AppFlow information." }, "rtspsessionidremap": { "type": "string", "description": "Enable RTSP session ID mapping for the service." }, "monthreshold": { "type": "string", "description": "Minimum sum of weights of the monitors that are bound to this service. Used to determine whether to mark a service as UP or DOWN.\nMinimum value = 0\nMaximum value = 65535" }, "hashid": { "type": "string", "description": "A numerical identifier that can be used by hash based load balancing methods. Must be unique for each service.\nMinimum value = 1" }, "serverid": { "type": "string", "description": "The identifier for the service. This is used when the persistency type is set to Custom Server ID." }, "processlocal": { "type": "string", "description": "By turning on this option packets destined to a service in a cluster will not under go any steering. Turn this option for single packet request response mode or when the upstream device is performing a proper RSS for connection based distribution." }, "accessdown": { "type": "string", "description": "Use Layer 2 mode to bridge the packets sent to this service if it is marked as DOWN. If the service is DOWN, and this parameter is disabled, the packets are dropped." }, "name": { "type": "string", "description": "Name for the service. Must begin with an ASCII alphabetic or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Cannot be changed after the service has been created.\nMinimum length = 1" }, "tcpprofilename": { "type": "string", "description": "Name of the TCP profile that contains TCP configuration settings for the service.\nMinimum length = 1\nMaximum length = 127" }, "sp": { "type": "string", "description": "Enable surge protection for the service." }, "downstateflush": { "type": "string", "description": "Flush all active transactions associated with a service whose state transitions from UP to DOWN. Do not enable this option for applications that must complete their transactions." }, "cipheader": { "type": "string", "description": "Name for the HTTP header whose value must be set to the IP address of the client. Used with the Client IP parameter. If you set the Client IP parameter, and you do not specify a name for the header, the appliance uses the header name specified for the global Client IP Header parameter (the cipHeader parameter in the set ns param CLI command or the Client IP Header parameter in the Configure HTTP Parameters dialog box at System > Settings > Change HTTP parameters). If the global Client IP Header parameter is not specified, the appliance inserts a header with the name \"client-ip.\".\nMinimum length = 1" }, "cip": { "type": "string", "description": "Before forwarding a request to the service, insert an HTTP header with the client's IPv4 or IPv6 address as its value. Used if the server needs the client's IP address for security, accounting, or other purposes, and setting the Use Source IP parameter is not a viable option." }, "healthmonitor": { "type": "string", "description": "Default: True\n\nMonitor the health of this service" }, "useproxyport": { "type": "string", "description": "Use the proxy port as the source port when initiating connections with the server. With the NO setting, the client-side connection port is used as the source port for the server-side connection.\nNote: This parameter is available only when the Use Source IP (USIP) parameter is set to YES." }, "cka": { "type": "string", "description": "Enable client keep-alive for the service." }, "dnsprofilename": { "type": "string", "description": "Name of the DNS profile to be associated with the service. DNS profile properties will applied to the transactions processed by a service. This parameter is valid only for ADNS and ADNS-TCP services.\nMinimum length = 1\nMaximum length = 127" }, "cmp": { "type": "string", "description": "Enable compression for the service." } } }, "cloudfront_invalidation": { "required": [ "target_paths" ], "type": "object", "description": "Allows for invalidation of a batch of paths for a CloudFront distribution.", "properties": { "distribution_id": { "type": "string", "description": "The id of the cloudfront distribution to invalidate paths for. Can be specified insted of the alias." }, "caller_reference": { "type": "string", "description": "Default: current datetime stamp\n\nA unique reference identifier for the invalidation paths." }, "target_paths": { "type": "string", "description": "A list of paths on the distribution to invalidate. Each path should begin with '/'. Wildcards are allowed. eg. '/foo/bar/*'" }, "alias": { "type": "string", "description": "The alias of the cloudfront distribution to invalidate paths for. Can be specified instead of distribution_id." } } }, "aci_config_snapshot": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "export_policy", "name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage Config Snapshots on Cisco ACI fabrics.\nCreating new Snapshots is done using the configExportP class.\nRemoving Snapshots is done using the configSnapshot class.", "properties": { "include_secure": { "description": "Default: yes\n\nDetermines if secure information should be included in the backup.\nThe APIC defaults new Export Policies to C(yes).", "$ref": "#/definitions/ansible_truth" }, "description": { "type": "string", "description": "The description for the Config Export Policy." }, "descr": { "type": "string", "description": "The description for the Config Export Policy." }, "format": { "type": "string", "description": "Default: json\n\nSets the config backup to be formatted in JSON or XML.\nThe APIC defaults new Export Policies to C(json)" }, "export_policy": { "type": "string", "description": "The name of the Export Policy to use for Config Snapshots." }, "max_count": { "type": "string", "description": "Default: 3\n\nDetermines how many snapshots can exist for the Export Policy before the APIC starts to rollover.\nThe APIC defaults new Export Policies to C(3)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "snapshot": { "type": "string", "description": "The name of the snapshot to delete." }, "name": { "type": "string", "description": "The name of the Export Policy to use for Config Snapshots." } } }, "sts_assume_role": { "required": [ "role_session_name", "role_arn" ], "type": "object", "description": "Assume a role using AWS Security Token Service and obtain temporary credentials", "properties": { "role_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the role that the caller is assuming (http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html#Identifiers_ARNs)" }, "duration_seconds": { "type": "string", "description": "The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds." }, "mfa_serial_number": { "type": "string", "description": "The identification number of the MFA device that is associated with the user who is making the AssumeRole call." }, "role_session_name": { "type": "string", "description": "Name of the role's session - will be used by CloudTrail" }, "mfa_token": { "type": "string", "description": "The value provided by the MFA device, if the trust policy of the role being assumed requires MFA." }, "policy": { "type": "string", "description": "Supplemental policy to use in addition to assumed role's policies." }, "external_id": { "type": "string", "description": "A unique identifier that is used by third parties to assume a role in their customers' accounts." } } }, "rax_cdb_user": { "type": "object", "description": "create / delete a database in the Cloud Databases.", "properties": { "db_password": { "type": "string", "description": "Database user password" }, "host": { "type": "string", "description": "Default: %\n\nSpecifies the host from which a user is allowed to connect to the database. Possible values are a string containing an IPv4 address or \"%\" to allow connecting from any host" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "cdb_id": { "type": "string", "description": "The databases server UUID" }, "db_username": { "type": "string", "description": "Name of the database user" }, "databases": { "type": "string", "description": "Name of the databases that the user can access" } } }, "proxmox": { "required": [ "api_host", "api_user" ], "type": "object", "description": "allows you to create/delete/stop instances in Proxmox VE cluster\nStarting in Ansible 2.1, it automatically detects containerization type (lxc for PVE 4, openvz for older)", "properties": { "force": { "description": "forcing operations\ncan be used only with states C(present), C(stopped), C(restarted)\nwith C(state=present) force option allow to overwrite existing container\nwith states C(stopped) , C(restarted) allow to force stop instance", "$ref": "#/definitions/ansible_truth" }, "cpus": { "type": "string", "description": "Default: 1\n\nnumbers of allocated cpus for instance" }, "ostemplate": { "type": "string", "description": "the template for VM creating\nrequired only for C(state=present)" }, "unprivileged": { "type": "string", "description": "Indicate if the container should be unprivileged" }, "disk": { "type": "string", "description": "Default: 3\n\nhard disk size in GB for instance" }, "searchdomain": { "type": "string", "description": "sets DNS search domain for a container" }, "api_user": { "type": "string", "description": "the user to authenticate with" }, "hostname": { "type": "string", "description": "the instance hostname\nrequired only for C(state=present)\nmust be unique if vmid is not passed" }, "storage": { "type": "string", "description": "Default: local\n\ntarget storage" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the instance" }, "swap": { "type": "string", "description": "swap memory size in MB for instance" }, "memory": { "type": "string", "description": "Default: 512\n\nmemory size in MB for instance" }, "pubkey": { "type": "string", "description": "Public key to add to /root/.ssh/authorized_keys. This was added on Proxmox 4.2, it is ignored for earlier versions" }, "node": { "type": "string", "description": "Proxmox VE node, when new VM will be created\nrequired only for C(state=present)\nfor another states will be autodiscovered" }, "cpuunits": { "type": "string", "description": "Default: 1000\n\nCPU weight for a VM" }, "api_password": { "type": "string", "description": "the password to authenticate with\nyou can use PROXMOX_PASSWORD environment variable" }, "password": { "type": "string", "description": "the instance root password\nrequired only for C(state=present)" }, "ip_address": { "type": "string", "description": "specifies the address the container will be assigned" }, "pool": { "type": "string", "description": "Proxmox VE resource pool" }, "netif": { "type": "string", "description": "specifies network interfaces for the container. As a hash/dictionary defining interfaces." }, "api_host": { "type": "string", "description": "the host of the Proxmox VE cluster" }, "vmid": { "type": "string", "description": "the instance id\nif not set, the next available VM ID will be fetched from ProxmoxAPI.\nif not set, will be fetched from PromoxAPI based on the hostname" }, "timeout": { "type": "string", "description": "Default: 30\n\ntimeout for operations" }, "mounts": { "type": "string", "description": "specifies additional mounts (separate disks) for the container. As a hash/dictionary defining mount points" }, "cores": { "type": "string", "description": "Default: 1\n\nSpecify number of cores per socket." }, "nameserver": { "type": "string", "description": "sets DNS server IP address for a container" }, "validate_certs": { "description": "enable / disable https certificate verification", "$ref": "#/definitions/ansible_truth" }, "onboot": { "type": "string", "description": "specifies whether a VM will be started during system bootup" } } }, "vmware_migrate_vmk": { "required": [ "current_switch_name", "migrate_portgroup_name", "esxi_hostname", "device", "migrate_switch_name", "current_portgroup_name" ], "type": "object", "description": "Migrate a VMK interface from VSS to VDS", "properties": { "current_switch_name": { "type": "string", "description": "Switch VMK interface is currently on" }, "migrate_portgroup_name": { "type": "string", "description": "Portgroup name to migrate VMK interface to" }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to be managed" }, "device": { "type": "string", "description": "VMK interface name" }, "migrate_switch_name": { "type": "string", "description": "Switch name to migrate VMK interface to" }, "current_portgroup_name": { "type": "string", "description": "Portgroup name VMK interface is currently on" } } }, "win_scheduled_task": { "allOf": [ { "allOf": [ { "not": { "required": [ "run_level", "runlevel" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "arguments", "argument" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "username", "user" ], "type": "object" } } ] } ], "type": "object", "description": "Creates/modified or removes Windows scheduled tasks.", "properties": { "run_only_if_network_available": { "description": "Whether the task will run only when a network is available.", "$ref": "#/definitions/ansible_truth" }, "update_password": { "description": "Default: yes\n\nWhether to update the password even when not other changes have occured.\nWhen C(yes) will always result in a change when executing the module.", "$ref": "#/definitions/ansible_truth" }, "execution_time_limit": { "type": "string", "description": "The amount of time allowed to complete the task.\nWhen not set, the time limit is infinite.\nThis is in the ISO 8601 Duration format C(P[n]Y[n]M[n]DT[n]H[n]M[n]S)." }, "actions": { "type": "string", "description": "A list of action to configure for the task.\nSee suboptions for details on how to construct each list entry.\nWhen creating a task there MUST be at least one action but when deleting a task this can be a null or an empty list.\nThe ordering of this list is important, the module will ensure the order is kept when modifying the task.\nThis module only supports the C(ExecAction) type but can still delete the older legacy types." }, "frequency": { "type": "string", "description": "The frequency of the task to run.\nDEPRECATED since 2.5, use the C(triggers) option list and specify the type based on the frequency required.\nWill be removed in 2.7." }, "path": { "type": "string", "description": "Default: \\\n\nTask folder in which this task will be stored.\nWill create the folder when C(state=present) and the folder does not already exist.\nWill remove the folder when C(state=absent) and there are no tasks left in the folder." }, "wake_to_run": { "description": "Whether the task will wake the computer when it is time to run the task.", "$ref": "#/definitions/ansible_truth" }, "run_only_if_idle": { "description": "Whether the task will run the task only if the computer is in an idle state.", "$ref": "#/definitions/ansible_truth" }, "executable": { "type": "string", "description": "The path to the executable to run for a scheduled task action.\nDEPRECATED since 2.5, use the C(actions) option instead to specify a list of actions to run.\nWill be removed in 2.7." }, "password": { "type": "string", "description": "The password for the user account to run the scheduled task as.\nThis is required when running a task without the user being logged in, excluding the builtin service accounts.\nIf set, will always result in a change unless C(update_password) is set to C(no) and no othr changes are required for the service." }, "group": { "type": "string", "description": "The group that will run the task.\nC(group) and C(username) are exclusive to each other and cannot be set at the same time.\nC(logon_type) can either be not set or equal C(group)." }, "author": { "type": "string", "description": "The author of the task." }, "restart_count": { "type": "string", "description": "The number of times that the Task Scheduler will attempt to restart the task." }, "compatibility": { "type": "string", "description": "The integer value with indicates which version of Task Scheduler a task is compatible with.\nC(0) means the task is compatible with the AT command.\nC(1) means the task is compatible with Task Scheduler 1.0.\nC(2) means the task is compatible with Task Scheduler 2.0." }, "priority": { "type": "string", "description": "The priority level (0-10) of the task.\nWhen creating a new task the default if C(7).\nSee U(https://msdn.microsoft.com/en-us/library/windows/desktop/aa383512.aspx) for details on the priority levels." }, "source": { "type": "string", "description": "The source of the task." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(state=present) will ensure the task exists.\nWhen C(state=absent) will ensure the task does not exist." }, "version": { "type": "string", "description": "The version number of the task." }, "allow_demand_start": { "description": "Whether the task can be started by using either the Run command or the Context menu.", "$ref": "#/definitions/ansible_truth" }, "arguments": { "type": "string", "description": "Arguments to provide for a scheduled task action.\nDEPRECATED since 2.5, use the C(actions) option instead to specify a list of actions to run.\nWill be removed in 2.7." }, "logon_type": { "type": "string", "description": "The logon method that the task will run with.\nC(password) means the password will be stored and the task has access to network resources.\nC(s4u) means the existing token will be used to run the task and no password will be stored with the task. Means no network or encrypted files access.\nC(interactive_token) means the user must already be logged on interactively and will run in an existing interactive session.\nC(group) means that the task will run as a group.\nC(service_account) means that a service account like System, Local Service or Network Service will run the task." }, "runlevel": { "type": "string", "description": "The level of user rights used to run the task.\nIf not specified the task will be created with limited rights." }, "hidden": { "description": "Whether the task will be hidden in the UI.", "$ref": "#/definitions/ansible_truth" }, "username": { "type": "string", "description": "The user to run the scheduled task as.\nWill default to the current user under an interactive token if not specified during creation." }, "stop_if_going_on_batteries": { "description": "Whether the task will be stopped if the computer begins to run on battery power.", "$ref": "#/definitions/ansible_truth" }, "disallow_start_if_on_batteries": { "description": "Whether the task will not be started if the computer is running on battery power.", "$ref": "#/definitions/ansible_truth" }, "description": { "type": "string", "description": "The description of the task." }, "delete_expired_task_after": { "type": "string", "description": "The amount of time that the Task Scheduler will wait before deleting the task after it expires.\nA task expires after the end_boundary has been exceeded for all triggers associated with the task.\nThis is in the ISO 8601 Duration format C(P[n]Y[n]M[n]DT[n]H[n]M[n]S)." }, "days_of_week": { "type": "string", "description": "Days of the week to run a weekly task.\nSpecify a list or comma separate days in the full version, e.g. monday instead of mon.\nDEPRECATED since 2.5, use the C(triggers) option list with the type of C(monthlydow) or C(weekly).\nWill be removed in 2.7." }, "argument": { "type": "string", "description": "Arguments to provide for a scheduled task action.\nDEPRECATED since 2.5, use the C(actions) option instead to specify a list of actions to run.\nWill be removed in 2.7." }, "start_when_available": { "description": "Whether the task can start at any time after its scheduled time has passed.", "$ref": "#/definitions/ansible_truth" }, "user": { "type": "string", "description": "The user to run the scheduled task as.\nWill default to the current user under an interactive token if not specified during creation." }, "date": { "type": "string", "description": "The date when the task was registered." }, "display_name": { "type": "string", "description": "The name of the user/group that is displayed in the Task Scheduler UI." }, "restart_interval": { "type": "string", "description": "How long the Task Scheduler will attempt to restart the task.\nIf this is set then C(restart_count) must also be set.\nThe maximum allowed time is 31 days.\nThe minimum allowed time is 1 minute.\nThis is in the ISO 8601 Duration format C(P[n]Y[n]M[n]DT[n]H[n]M[n]S)." }, "run_level": { "type": "string", "description": "The level of user rights used to run the task.\nIf not specified the task will be created with limited rights." }, "multiple_instances": { "type": "string", "description": "An integer that indicates the behaviour when starting a task that is already running.\nC(0) will start a new instance in parallel with existing instances of that task.\nC(1) will wait until other instances of that task to finish running before starting itself.\nC(2) will not start a new instance if another is running.\nC(3) will stop other instances of the task and start the new one." }, "name": { "type": "string", "description": "The name of the scheduled task without the path." }, "triggers": { "type": "string", "description": "A list of triggers to configure for the task.\nSee suboptions for details on how to construct each list entry.\nThe ordering of this list is important, the module will ensure the order is kept when modifying the task.\nThere are multiple types of triggers, see U(https://msdn.microsoft.com/en-us/library/windows/desktop/aa383868.aspx) for a list of trigger types and their options.\nThe suboption options listed below are not required for all trigger types, read the description for more details." }, "enabled": { "description": "Whether the task is enabled, the task can only run when C(yes).", "$ref": "#/definitions/ansible_truth" }, "store_password": { "description": "Default: yes\n\nWhether to store the password for the user running the task.\nIf C(no), the task will only have access to local resources.\nDEPRECATED since 2.5, use C(logon_type=password) to set whether to store the password for the task.\nWill be removed in 2.7.", "$ref": "#/definitions/ansible_truth" }, "allow_hard_terminate": { "description": "Whether the task can be terminated by using TerminateProcess.", "$ref": "#/definitions/ansible_truth" }, "time": { "type": "string", "description": "The start time to execute the scheduled task.\nDEPRECATED since 2.5, use the C(triggers) option list and use the C(start_boundary) option to set the start time.\nWill be removed in 2.7." } } }, "ios_template": { "required": [ "src", "include_defaults" ], "type": "object", "description": "Manages Cisco IOS network device configurations over SSH. This module allows implementers to work with the device running-config. It provides a way to push a set of commands onto a network device by evaluating the current running-config and only pushing configuration commands that are not already configured. The config source can be a set of commands or a template.", "properties": { "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will first search for the source file in role or playbook root folder in templates unless a full path to the file is given." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "force": { "type": "string", "description": "The force argument instructs the module not to consider the current device running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the running-config from the node prior to making any changes. The backup file will be written to backup_{{ hostname }} in the root of the playbook directory." }, "include_defaults": { "type": "string", "description": "The module, by default, will collect the current device running-config to use as a base for comparison to the commands in I(src). Setting this value to true will cause the command issued to add any necessary flags to collect all defaults as well as the device configuration. If the destination device does not support such a flag, this argument is silently ignored." } } }, "portinstall": { "required": [ "name" ], "type": "object", "description": "Manage packages for FreeBSD using 'portinstall'.", "properties": { "state": { "type": "string", "description": "Default: present\n\nstate of the package" }, "use_packages": { "type": "string", "description": "Default: True\n\nuse packages instead of ports whenever available" }, "name": { "type": "string", "description": "name of package to install/remove" } } }, "ce_bgp_af": { "required": [ "af_type", "vrf_name" ], "type": "object", "description": "Manages BGP Address-family configurations on HUAWEI CloudEngine switches.", "properties": { "ingress_lsp_policy_name": { "type": "string", "description": "Ingress lsp policy name." }, "vrf_rid_auto_sel": { "type": "string", "description": "Default: no_use\n\nIf the value is true, VPN BGP instances are enabled to automatically select router IDs. If the value is false, VPN BGP instances are disabled from automatically selecting router IDs." }, "preference_internal": { "type": "string", "description": "Set the protocol priority of IBGP routes. The value is an integer ranging from 1 to 255." }, "maximum_load_balance": { "type": "string", "description": "Specify the maximum number of equal-cost routes in the BGP routing table. The value is an integer ranging from 1 to 65535." }, "preference_local": { "type": "string", "description": "Set the protocol priority of a local BGP route. The value is an integer ranging from 1 to 255." }, "preference_external": { "type": "string", "description": "Set the protocol priority of EBGP routes. The value is an integer ranging from 1 to 255." }, "router_id_neglect": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the router ID attribute is ignored when BGP selects the optimal route. If the value is false, the router ID attribute is not ignored when BGP selects the optimal route." }, "default_local_pref": { "type": "string", "description": "Set the Local-Preference attribute. The value is an integer. The value is an integer ranging from 0 to 4294967295." }, "reflector_cluster_ipv4": { "type": "string", "description": "Set a cluster ipv4 address. The value is expressed in the format of an IPv4 address." }, "prefrence_policy_name": { "type": "string", "description": "Set a routing policy to filter routes so that a configured priority is applied to the routes that match the specified policy. The value is a string of 1 to 40 characters." }, "nhp_relay_route_policy_name": { "type": "string", "description": "Specify the name of a route-policy for route iteration. The value is a string of 1 to 40 characters." }, "reflector_cluster_id": { "type": "string", "description": "Set a cluster ID. Configuring multiple RRs in a cluster can enhance the stability of the network. The value is an integer ranging from 1 to 4294967295." }, "as_path_neglect": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the AS path attribute is ignored when BGP selects an optimal route. If the value is false, the AS path attribute is not ignored when BGP selects an optimal route. An AS path with a smaller length has a higher priority." }, "auto_frr_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP auto FRR is enabled. If the value is false, BGP auto FRR is disabled." }, "mask_len": { "type": "string", "description": "Specify the mask length of an IP address. The value is an integer ranging from 0 to 128." }, "ibgp_ecmp_nexthop_changed": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the next hop of an advertised route is changed to the advertiser itself in IBGP load-balancing scenarios. If the value is false, the next hop of an advertised route is not changed to the advertiser itself in IBGP load-balancing scenarios." }, "af_type": { "type": "string", "description": "Address family type of a BGP instance." }, "nexthop_third_party": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the third-party next hop function is enabled. If the value is false, the third-party next hop function is disabled." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "default_med": { "type": "string", "description": "Specify the Multi-Exit-Discriminator (MED) of BGP routes. The value is an integer ranging from 0 to 4294967295." }, "add_path_sel_num": { "type": "string", "description": "Number of Add-Path routes. The value is an integer ranging from 2 to 64." }, "med_none_as_maximum": { "type": "string", "description": "Default: no_use\n\nIf the value is true, when BGP selects an optimal route, the system uses 4294967295 as the MED value of a route if the route's attribute does not carry a MED value. If the value is false, the system uses 0 as the MED value of a route if the route's attribute does not carry a MED value." }, "ecmp_nexthop_changed": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the next hop of an advertised route is changed to the advertiser itself in BGP load-balancing scenarios. If the value is false, the next hop of an advertised route is not changed to the advertiser itself in BGP load-balancing scenarios." }, "lowest_priority": { "type": "string", "description": "Default: no_use\n\nIf the value is true, enable reduce priority to advertise route. If the value is false, disable reduce priority to advertise route." }, "rr_filter_number": { "type": "string", "description": "Set the number of the extended community filter supported by an RR group. The value is a string of 1 to 51 characters." }, "import_process_id": { "type": "string", "description": "Process ID of an imported routing protocol. The value is an integer ranging from 0 to 4294967295." }, "router_id": { "type": "string", "description": "ID of a router that is in IPv4 address format. The value is a string of 0 to 255 characters. The value is in dotted decimal notation." }, "determin_med": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP deterministic-MED is enabled. If the value is false, BGP deterministic-MED is disabled." }, "reflect_chg_path": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the route reflector is enabled to modify route path attributes based on an export policy. If the value is false, the route reflector is disabled from modifying route path attributes based on an export policy." }, "load_balancing_as_path_ignore": { "type": "string", "description": "Default: no_use\n\nLoad balancing as path ignore." }, "ebgp_ecmp_nexthop_changed": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the next hop of an advertised route is changed to the advertiser itself in EBGP load-balancing scenarios. If the value is false, the next hop of an advertised route is not changed to the advertiser itself in EBGP load-balancing scenarios." }, "always_compare_med": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the MEDs of routes learned from peers in different autonomous systems are compared when BGP selects an optimal route. If the value is false, the MEDs of routes learned from peers in different autonomous systems are not compared when BGP selects an optimal route." }, "policy_ext_comm_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, modifying extended community attributes is allowed. If the value is false, modifying extended community attributes is not allowed." }, "allow_invalid_as": { "type": "string", "description": "Default: no_use\n\nAllow routes with BGP origin AS validation result Invalid to be selected. If the value is true, invalid routes can participate in route selection. If the value is false, invalid routes cannot participate in route selection." }, "relay_delay_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, relay delay enable. If the value is false, relay delay disable." }, "rib_only_policy_name": { "type": "string", "description": "Specify the name of a routing policy. The value is a string of 1 to 40 characters." }, "max_load_ebgp_num": { "type": "string", "description": "Specify the maximum number of equal-cost EBGP routes. The value is an integer ranging from 1 to 65535." }, "import_protocol": { "type": "string", "description": "Routing protocol from which routes can be imported." }, "ebgp_if_sensitive": { "type": "string", "description": "Default: no_use\n\nIf the value is true, after the fast EBGP interface awareness function is enabled, EBGP sessions on an interface are deleted immediately when the interface goes Down. If the value is false, after the fast EBGP interface awareness function is enabled, EBGP sessions on an interface are not deleted immediately when the interface goes Down." }, "network_address": { "type": "string", "description": "Specify the IP address advertised by BGP. The value is a string of 0 to 255 characters." }, "supernet_uni_adv": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the function to advertise supernetwork unicast routes is enabled. If the value is false, the function to advertise supernetwork unicast routes is disabled." }, "next_hop_sel_depend_type": { "type": "string", "description": "Default: default\n\nNext hop select depend type." }, "default_rt_import_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, importing default routes to the BGP routing table is allowed. If the value is false, importing default routes to the BGP routing table is not allowed." }, "originator_prior": { "type": "string", "description": "Default: no_use\n\nOriginator prior." }, "active_route_advertise": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP is enabled to advertise only optimal routes in the RM to peers. If the value is false, BGP is not enabled to advertise only optimal routes in the RM to peers." }, "reflect_between_client": { "type": "string", "description": "Default: no_use\n\nIf the value is true, route reflection is enabled between clients. If the value is false, route reflection is disabled between clients." }, "policy_vpn_target": { "type": "string", "description": "Default: no_use\n\nIf the value is true, VPN-Target filtering function is performed for received VPN routes. If the value is false, VPN-Target filtering function is not performed for received VPN routes." }, "summary_automatic": { "type": "string", "description": "Default: no_use\n\nIf the value is true, automatic aggregation is enabled for locally imported routes. If the value is false, automatic aggregation is disabled for locally imported routes." }, "rib_only_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP routes cannot be advertised to the IP routing table. If the value is false, Routes preferred by BGP are advertised to the IP routing table." }, "max_load_ibgp_num": { "type": "string", "description": "Specify the maximum number of equal-cost IBGP routes. The value is an integer ranging from 1 to 65535." }, "route_sel_delay": { "type": "string", "description": "Route selection delay. The value is an integer ranging from 0 to 3600." }, "supernet_label_adv": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the function to advertise supernetwork label is enabled. If the value is false, the function to advertise supernetwork label is disabled." }, "vrf_name": { "type": "string", "description": "Name of a BGP instance. The name is a case-sensitive string of characters. The BGP instance can be used only after the corresponding VPN instance is created. The value is a string of 1 to 31 case-sensitive characters." }, "igp_metric_ignore": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the metrics of next-hop IGP routes are not compared when BGP selects an optimal route. If the value is false, the metrics of next-hop IGP routes are not compared when BGP selects an optimal route. A route with a smaller metric has a higher priority." } } }, "cloudwatchlogs_log_group": { "required": [ "log_group_name" ], "type": "object", "description": "Create or delete log_group in CloudWatchLogs.", "properties": { "tags": { "type": "string", "description": "The key-value pairs to use for the tags." }, "kms_key_id": { "type": "string", "description": "The Amazon Resource Name (ARN) of the CMK to use when encrypting log data." }, "state": { "type": "string", "description": "Default: present\n\nWhether the rule is present, absent or get" }, "log_group_name": { "type": "string", "description": "The name of the log group." }, "overwrite": { "type": "string", "description": "Whether an existing log group should be overwritten on create." }, "retention": { "type": "string", "description": "The number of days to retain the log events in the specified log group. Valid values are: [1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 3653]" } } }, "data_pipeline": { "required": [ "name" ], "type": "object", "description": "Create and manage AWS Datapipelines. Creation is not idempotent in AWS, so the I(uniqueId) is created by hashing the options (minus objects) given to the datapipeline.\nThe pipeline definition must be in the format given here U(http://docs.aws.amazon.com/datapipeline/latest/APIReference/API_PutPipelineDefinition.html#API_PutPipelineDefinition_RequestSyntax).\nAlso operations will wait for a configurable amount of time to ensure the pipeline is in the requested state.", "properties": { "name": { "type": "string", "description": "The name of the Datapipeline to create/modify/delete." }, "parameters": { "type": "string", "description": "A list of parameter objects (dicts) in the pipeline definition." }, "tags": { "type": "string", "description": "A dict of key:value pair(s) to add to the pipeline." }, "state": { "type": "string", "description": "Default: present\n\nThe requested state of the pipeline." }, "objects": { "type": "string", "description": "A list of pipeline object definitions, each of which is a dict that takes the keys C(id), C(name) and C(fields)." }, "values": { "type": "string", "description": "A list of parameter values (dicts) in the pipeline definition. Each dict takes the keys C(id) and C(stringValue) both of which are strings." }, "timeout": { "type": "string", "description": "Default: 300\n\nTime in seconds to wait for the pipeline to transition to the requested state, fail otherwise." }, "description": { "type": "string", "description": "An optional description for the pipeline being created." } } }, "ucs_vsans": { "required": [ "vlan_id", "vsan_id", "name" ], "type": "object", "description": "Configures VSANs on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "name": { "type": "string", "description": "The name assigned to the VSAN.\nThis name can be between 1 and 32 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the VSAN is created." }, "vsan_id": { "type": "string", "description": "The unique identifier assigned to the VSAN.\nThe ID can be a string between '1' and '4078', or between '4080' and '4093'. '4079' is a reserved VSAN ID.\nIn addition, if you plan to use FC end-host mode, the range between '3840' to '4079' is also a reserved VSAN ID range.\nOptional if state is absent." }, "fc_zoning": { "type": "string", "description": "Default: disabled\n\nFibre Channel zoning configuration for the Cisco UCS domain.\nFibre Channel zoning can be set to one of the following values:\ndisabled — The upstream switch handles Fibre Channel zoning, or Fibre Channel zoning is not implemented for the Cisco UCS domain.\nenabled — Cisco UCS Manager configures and controls Fibre Channel zoning for the Cisco UCS domain.\nIf you enable Fibre Channel zoning, do not configure the upstream switch with any VSANs that are being used for Fibre Channel zoning." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify VSANs are present and will create if needed.\nIf C(absent), will verify VSANs are absent and will delete if needed." }, "vlan_id": { "type": "string", "description": "The unique string identifier assigned to the VLAN used for Fibre Channel connections.\nNote that Cisco UCS Manager uses VLAN '4048'. See the UCS Manager configuration guide if you want to assign '4048' to a VLAN.\nOptional if state is absent." }, "fabric": { "type": "string", "description": "Default: common\n\nThe fabric configuration of the VSAN. This can be one of the following:\ncommon - The VSAN maps to the same VSAN ID in all available fabrics.\nA - The VSAN maps to the a VSAN ID that exists only in fabric A.\nB - The VSAN maps to the a VSAN ID that exists only in fabric B." } } }, "bigip_wait": { "type": "object", "description": "You can wait for BIG-IP to be \"ready\". By \"ready\", we mean that BIG-IP is ready to accept configuration.\nThis module can take into account situations where the device is in the middle of rebooting due to a configuration change.", "properties": { "delay": { "type": "string", "description": "Number of seconds to wait before starting to poll." }, "msg": { "type": "string", "description": "This overrides the normal error message from a failure to meet the required conditions." }, "sleep": { "type": "string", "description": "Default: 1\n\nNumber of seconds to sleep between checks, before 2.3 this was hardcoded to 1 second." }, "timeout": { "type": "string", "description": "Default: 7200\n\nMaximum number of seconds to wait for.\nWhen used without other conditions it is equivalent of just sleeping.\nThe default timeout is deliberately set to 2 hours because no individual REST API." } } }, "ovirt_nics": { "required": [ "name" ], "type": "object", "description": "Module to manage network interfaces of Virtual Machines in oVirt/RHV.", "properties": { "profile": { "type": "string", "description": "Virtual network interface profile to be attached to VM network interface." }, "network": { "type": "string", "description": "Logical network to which the VM network interface should use, by default Empty network is used if network is not specified." }, "vm": { "type": "string", "description": "Name of the Virtual Machine to manage.\nYou must provide either C(vm) parameter or C(template) parameter." }, "state": { "type": "string", "description": "Default: present\n\nShould the Virtual Machine NIC be present/absent/plugged/unplugged." }, "template": { "type": "string", "description": "Name of the template to manage.\nYou must provide either C(vm) parameter or C(template) parameter." }, "mac_address": { "type": "string", "description": "Custom MAC address of the network interface, by default it's obtained from MAC pool." }, "interface": { "type": "string", "description": "Default: virtio\n\nType of the network interface." }, "name": { "type": "string", "description": "Name of the network interface to manage." } } }, "opkg": { "required": [ "name" ], "type": "object", "description": "Manages OpenWrt packages", "properties": { "update_cache": { "type": "string", "description": "Default: no\n\nupdate the package db first" }, "state": { "type": "string", "description": "Default: present\n\nstate of the package" }, "force": { "type": "string", "description": "Default: absent\n\nopkg --force parameter used" }, "name": { "type": "string", "description": "name of package to install/remove" } } }, "debug": { "type": "object", "description": "This module prints statements during execution and can be useful for debugging variables or expressions without necessarily halting the playbook. Useful for debugging together with the 'when:' directive.\nThis module is also supported for Windows targets.", "properties": { "msg": { "type": "string", "description": "Default: Hello world!\n\nThe customized message that is printed. If omitted, prints a generic message." }, "var": { "type": "string", "description": "A variable name to debug. Mutually exclusive with the 'msg' option." }, "verbosity": { "type": "string", "description": "A number that controls when the debug is run, if you set to 3 it will only run debug when -vvv or above" } } }, "win_dns_client": { "required": [ "adapter_names", "ipv4_addresses" ], "type": "object", "description": "The C(win_dns_client) module configures the DNS client on Windows network adapters.", "properties": { "adapter_names": { "type": "string", "description": "Adapter name or list of adapter names for which to manage DNS settings ('*' is supported as a wildcard value). The adapter name used is the connection caption in the Network Control Panel or via C(Get-NetAdapter), eg C(Local Area Connection)." }, "ipv4_addresses": { "type": "string", "description": "Single or ordered list of DNS server IPv4 addresses to configure for lookup. An empty list will configure the adapter to use the DHCP-assigned values on connections where DHCP is enabled, or disable DNS lookup on statically-configured connections." } } }, "oneandone_private_network": { "required": [ "auth_token", "name", "private_network" ], "type": "object", "description": "Create, remove, reconfigure, update a private network. This module has a dependency on 1and1 >= 1.0", "properties": { "datacenter": { "type": "string", "description": "The identifier of the datacenter where the private network will be created" }, "description": { "type": "string", "description": "Set a description for the network." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the _wait_for methods" }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1." }, "network_address": { "type": "string", "description": "Set a private network space, i.e. 192.168.1.0" }, "subnet_mask": { "type": "string", "description": "Set the netmask for the private network, i.e. 255.255.255.0" }, "state": { "type": "string", "description": "Default: present\n\nDefine a network's state to create, remove, or update." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "remove_members": { "type": "array", "description": "List of server identifiers (name or id) to be removed from the private network." }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." }, "private_network": { "type": "string", "description": "The identifier (id or name) of the network used with update state." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" }, "add_members": { "type": "array", "description": "List of server identifiers (name or id) to be added to the private network." }, "name": { "type": "string", "description": "Private network name used with present state. Used as identifier (id or name) when used with absent state." } } }, "azure_rm_containerregistry": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete an Azure Container Registry.", "properties": { "sku": { "type": "string", "description": "Default: Standard\n\nSpecifies the SKU to use. Currently can be either Basic, Standard or Premium." }, "name": { "type": "string", "description": "Name of the Container Registry." }, "resource_group": { "type": "string", "description": "Name of a resource group where the Container Registry exists or will be created." }, "admin_user_enabled": { "type": "string", "description": "If enabled, you can use the registry name as username and admin user access key as password to docker login to your container registry." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the container registry. Use 'present' to create or update an container registry and 'absent' to delete it." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." } } }, "cloudscale_server": { "type": "object", "description": "Create, start, stop and delete servers on the cloudscale.ch IaaS service.\nAll operations are performed using the cloudscale.ch public API v1.\nFor details consult the full API documentation: U(https://www.cloudscale.ch/en/api/v1).\nA valid API token is required for all operations. You can create as many tokens as you like using the cloudscale.ch control panel at U(https://control.cloudscale.ch).", "properties": { "anti_affinity_with": { "type": "string", "description": "UUID of another server to create an anti-affinity group with." }, "uuid": { "type": "string", "description": "UUID of the server.\nEither C(name) or C(uuid) are required. These options are mutually exclusive." }, "use_public_network": { "type": "string", "description": "Default: True\n\nAttach a public network interface to the server." }, "image": { "type": "string", "description": "Image used to create the server." }, "api_timeout": { "type": "string", "description": "Default: 30\n\nTimeout in seconds for calls to the cloudscale.ch API." }, "api_token": { "type": "string", "description": "cloudscale.ch API token.\nThis can also be passed in the CLOUDSCALE_API_TOKEN environment variable." }, "user_data": { "type": "string", "description": "Cloud-init configuration (cloud-config) data to use for the server." }, "bulk_volume_size_gb": { "type": "string", "description": "Size of the bulk storage volume in GB.\nNo bulk storage volume if not set." }, "volume_size_gb": { "type": "string", "description": "Default: 10\n\nSize of the root volume in GB." }, "use_private_network": { "type": "string", "description": "Attach a private network interface to the server." }, "state": { "type": "string", "description": "Default: running\n\nState of the server" }, "use_ipv6": { "type": "string", "description": "Default: True\n\nEnable IPv6 on the public network interface." }, "flavor": { "type": "string", "description": "Flavor of the server." }, "ssh_keys": { "type": "array", "description": "List of SSH public keys.\nUse the full content of your .pub file here." }, "name": { "type": "string", "description": "Name of the Server.\nEither C(name) or C(uuid) are required. These options are mutually exclusive." } } }, "vr_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "ssh_keys", "ssh_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "label" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "label" ], "type": "object" } ] } ] } ], "type": "object", "description": "Deploy, start, stop, update, restart, reinstall servers.", "properties": { "reserved_ip_v4": { "type": "string", "description": "IP address of the floating IP to use as the main IP of this server.\nOnly considered on creation." }, "force": { "type": "string", "description": "Force stop/start the server if required to apply changes\nOtherwise a running server will not be changed." }, "ssh_keys": { "type": "array", "description": "List of SSH keys passed to the server on creation." }, "state": { "type": "string", "description": "Default: present\n\nState of the server." }, "startup_script": { "type": "string", "description": "Name of the startup script to execute on boot.\nOnly considered while creating the server." }, "region": { "type": "string", "description": "Region the server is deployed into.\nRequired if the server does not yet exist." }, "hostname": { "type": "string", "description": "Hostname to assign to this server." }, "user_data": { "type": "string", "description": "User data to be passed to the server." }, "notify_activate": { "description": "Whether to send an activation email when the server is ready or not.\nOnly considered on creation.", "$ref": "#/definitions/ansible_truth" }, "ssh_key": { "type": "array", "description": "List of SSH keys passed to the server on creation." }, "private_network_enabled": { "description": "Whether to enable private networking or not.", "$ref": "#/definitions/ansible_truth" }, "firewall_group": { "type": "string", "description": "The firewall group to assign this server to." }, "tag": { "type": "string", "description": "Tag for the server." }, "auto_backup_enabled": { "description": "Whether to enable automatic backups or not.", "$ref": "#/definitions/ansible_truth" }, "plan": { "type": "string", "description": "Plan to use for the server.\nRequired if the server does not yet exist." }, "ipv6_enabled": { "description": "Whether to enable IPv6 or not.", "$ref": "#/definitions/ansible_truth" }, "label": { "type": "string", "description": "Name of the server." }, "os": { "type": "string", "description": "The operating system.\nRequired if the server does not yet exist." }, "name": { "type": "string", "description": "Name of the server." } } }, "proxysql_scheduler": { "required": [ "filename" ], "type": "object", "description": "The M(proxysql_scheduler) module adds or removes schedules using the proxysql admin interface.", "properties": { "comment": { "type": "string", "description": "Text field that can be used for any purposed defined by the user." }, "arg1": { "type": "string", "description": "Argument that can be passed to the job." }, "arg2": { "type": "string", "description": "Argument that can be passed to the job." }, "arg3": { "type": "string", "description": "Argument that can be passed to the job." }, "arg4": { "type": "string", "description": "Argument that can be passed to the job." }, "arg5": { "type": "string", "description": "Argument that can be passed to the job." }, "filename": { "type": "string", "description": "Full path of the executable to be executed." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) - adds the schedule, when C(absent) - removes the schedule." }, "interval_ms": { "type": "string", "description": "Default: 10000\n\nHow often (in millisecond) the job will be started. The minimum value for I(interval_ms) is 100 milliseconds." }, "force_delete": { "type": "string", "description": "By default we avoid deleting more than one schedule in a single batch, however if you need this behaviour and you're not concerned about the schedules deleted, you can set I(force_delete) to C(True)." }, "active": { "type": "string", "description": "Default: True\n\nA schedule with I(active) set to C(False) will be tracked in the database, but will be never loaded in the in-memory data structures." } } }, "homebrew_cask": { "allOf": [ { "allOf": [ { "not": { "required": [ "update_homebrew", "update-brew" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "pkg", "package", "cask" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "pkg" ], "type": "object" }, { "required": [ "package" ], "type": "object" }, { "required": [ "cask" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "install_options", "options" ], "type": "object" } } ] } ], "type": "object", "description": "Manages Homebrew casks.", "properties": { "install_options": { "type": "string", "description": "options flags to install a package" }, "name": { "type": "string", "description": "name of cask to install/remove" }, "package": { "type": "string", "description": "name of cask to install/remove" }, "update_homebrew": { "type": "string", "description": "update homebrew itself first. Note that C(brew cask update) is a synonym for C(brew update)." }, "cask": { "type": "string", "description": "name of cask to install/remove" }, "state": { "type": "string", "description": "Default: present\n\nstate of the cask" }, "update-brew": { "type": "string", "description": "update homebrew itself first. Note that C(brew cask update) is a synonym for C(brew update)." }, "pkg": { "type": "string", "description": "name of cask to install/remove" }, "path": { "type": "string", "description": "Default: /usr/local/bin\n\n':' separated list of paths to search for 'brew' executable." }, "options": { "type": "string", "description": "options flags to install a package" } } }, "vmware_guest_powerstate": { "type": "object", "description": "Power on / Power off / Restart a virtual machine.", "properties": { "force": { "description": "Ignore warnings and complete the actions.\nThis parameter is useful while forcing virtual machine state.", "$ref": "#/definitions/ansible_truth" }, "uuid": { "type": "string", "description": "UUID of the instance to manage if known, this is VMware's unique identifier.\nThis is required if name is not supplied." }, "name": { "type": "string", "description": "Name of the virtual machine to work with.\nVirtual machine names in vCenter are not necessarily unique, which may be problematic, see C(name_match)." }, "state": { "type": "string", "description": "Default: present\n\nSet the state of the virtual machine." }, "name_match": { "type": "string", "description": "Default: first\n\nIf multiple virtual machines matching the name, use the first or last found." }, "folder": { "type": "string", "description": "Default: /vm\n\nDestination folder, absolute or relative path to find an existing guest or create the new guest.\nThe folder should include the datacenter. ESX's datacenter is ha-datacenter\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2\n folder: vm/folder2\n folder: folder2" }, "scheduled_at": { "type": "string", "description": "Date and time in string format at which specificed task needs to be performed.\nThe required format for date and time - 'dd/mm/yyyy hh:mm'.\nScheduling task requires vCenter server. A standalone ESXi server does not support this option." } } }, "azure_rm_availabilityset_facts": { "type": "object", "description": "Get facts for a specific availability set or all availability sets.", "properties": { "name": { "type": "string", "description": "Limit results to a specific availability set" }, "resource_group": { "type": "string", "description": "The resource group to search for the desired availability set" } } }, "import_playbook": { "type": "object", "description": "Includes a file with a list of plays to be executed.\nFiles with a list of plays can only be included at the top level. You cannot use this action inside a play.", "properties": { "free-form": { "type": "string", "description": "The name of the imported playbook is specified directly without any other option." } } }, "cs_instancegroup": { "required": [ "name" ], "type": "object", "description": "Create and remove instance groups.", "properties": { "project": { "type": "string", "description": "Project the instance group is related to." }, "account": { "type": "string", "description": "Account the instance group is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the instance group." }, "domain": { "type": "string", "description": "Domain the instance group is related to." }, "name": { "type": "string", "description": "Name of the instance group." } } }, "cs_vmsnapshot": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "display_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "display_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create, remove and revert VM from snapshots.", "properties": { "snapshot_memory": { "type": "string", "description": "Snapshot memory if set to true." }, "domain": { "type": "string", "description": "Domain the VM snapshot is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "description": { "type": "string", "description": "Description of the snapshot." }, "zone": { "type": "string", "description": "Name of the zone in which the VM is in. If not set, default zone is used." }, "vm": { "type": "string", "description": "Name of the virtual machine." }, "project": { "type": "string", "description": "Name of the project the VM is assigned to." }, "state": { "type": "string", "description": "Default: present\n\nState of the snapshot." }, "account": { "type": "string", "description": "Account the VM snapshot is related to." }, "display_name": { "type": "string", "description": "Unique Name of the snapshot. In CloudStack terms display name." }, "name": { "type": "string", "description": "Unique Name of the snapshot. In CloudStack terms display name." } } }, "pn_vrouterbgp": { "required": [ "pn_vrouter_name", "state" ], "type": "object", "description": "Execute vrouter-bgp-add, vrouter-bgp-remove, vrouter-bgp-modify command.\nEach fabric, cluster, standalone switch, or virtual network (VNET) can provide its tenants with a vRouter service that forwards traffic between networks and implements Layer 4 protocols.", "properties": { "pn_vrouter_name": { "type": "string", "description": "Specify a name for the vRouter service." }, "pn_soft_reconfig": { "type": "string", "description": "Specify if you want a soft reconfiguration of inbound traffic." }, "pn_ebgp": { "type": "string", "description": "Specify a value for external BGP to accept or attempt BGP connections to external peers, not directly connected, on the network. This is a value between 1 and 255." }, "pn_route_reflector": { "type": "string", "description": "Specify if a route reflector client is used." }, "pn_keepalive": { "type": "string", "description": "Specify BGP neighbor keepalive interval in seconds." }, "pn_multiprotocol": { "type": "string", "description": "Specify a multi-protocol for BGP." }, "pn_prefix_listout": { "type": "string", "description": "Specify the prefix list to filter traffic outbound." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to add bgp, 'absent' to remove bgp and 'update' to modify bgp." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the cli on." }, "pn_max_prefix": { "type": "string", "description": "Specify the maximum number of prefixes." }, "pn_route_mapout": { "type": "string", "description": "Specify outbound route map for neighbor." }, "pn_bfd": { "type": "string", "description": "Specify if you want BFD protocol support for fault detection." }, "pn_override_capability": { "type": "string", "description": "Specify if you want to override capability." }, "pn_route_mapin": { "type": "string", "description": "Specify inbound route map for neighbor." }, "pn_prefix_listin": { "type": "string", "description": "Specify the prefix list to filter traffic inbound." }, "pn_password": { "type": "string", "description": "Specify a password, if desired." }, "pn_neighbor": { "type": "string", "description": "Specify a neighbor IP address to use for BGP.\nRequired for vrouter-bgp-add." }, "pn_default_originate": { "type": "string", "description": "Specify if you want announce default routes to the neighbor or not." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_weight": { "type": "string", "description": "Specify a default weight value between 0 and 65535 for the neighbor routes." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_remote_as": { "type": "string", "description": "Specify the remote Autonomous System(AS) number. This value is between 1 and 4294967295.\nRequired for vrouter-bgp-add." }, "pn_max_prefix_warn": { "type": "string", "description": "Specify if you want a warning message when the maximum number of prefixes is exceeded." }, "pn_holdtime": { "type": "string", "description": "Specify BGP neighbor holdtime in seconds." }, "pn_next_hop_self": { "type": "string", "description": "Specify if the next-hop is the same router or not." } } }, "iosxr_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on Cisco IOS XR network devices.", "properties": { "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down), I(tx_rate) and I(rx_rate)." }, "name": { "type": "string", "description": "Name of the interface to configure in C(type + path) format. e.g. C(GigabitEthernet0/0/0/0)" }, "duplex": { "type": "string", "description": "Configures the interface duplex mode. Default is auto-negotiation when not configured." }, "enabled": { "description": "Default: True\n\nRemoves the shutdown configuration, which removes the forced administrative down on the interface, enabling it to move to an up or down state.", "$ref": "#/definitions/ansible_truth" }, "mtu": { "type": "string", "description": "Sets the MTU value for the interface. Range is between 64 and 65535'" }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "aggregate": { "type": "array", "description": "List of Interface definitions. Include multiple interface configurations together, one each on a seperate line" }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) means present and operationally up and C(down) means present and operationally C(down)" }, "active": { "type": "string", "description": "Default: active\n\nWhether the interface is C(active) or C(preconfigured). Preconfiguration allows you to configure modular services cards before they are inserted into the router. When the cards are inserted, they are instantly configured. Active cards are the ones already inserted." }, "speed": { "type": "string", "description": "Configure the speed for an interface. Default is auto-negotiation when not configured." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface being configured." } } }, "panos_object": { "required": [ "password", "ip_address", "operation" ], "type": "object", "description": "Policy objects form the match criteria for policy rules and many other functions in PAN-OS. These may include address object, address groups, service objects, service groups, and tag.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for authentication." }, "servicegroup": { "type": "string", "description": "A group of service objects." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "static_value": { "type": "string", "description": "A group of address objects to be used in an addressgroup definition." }, "description": { "type": "string", "description": "The description of the object." }, "color": { "type": "string", "description": "- The color of the tag object. Valid values are I(red, green, blue, yellow, copper, orange, purple, gray, light green, cyan, light gray, blue gray, lime, black, gold, and brown).\n" }, "dynamic_value": { "type": "string", "description": "The filter match criteria to be used in a dynamic addressgroup definition." }, "protocol": { "type": "string", "description": "The IP protocol to be used in a service object definition. Valid values are I(tcp) or I(udp)." }, "addressgroup": { "type": "string", "description": "A static group of address objects or dynamic address group." }, "addressobject": { "type": "string", "description": "The name of the address object." }, "source_port": { "type": "string", "description": "The source port to be used in a service object definition." }, "tag_name": { "type": "string", "description": "The name of an object or rule tag." }, "address_type": { "type": "string", "description": "The type of address object definition. Valid types are I(ip-netmask) and I(ip-range)." }, "serviceobject": { "type": "string", "description": "The name of the service object." }, "address": { "type": "string", "description": "The IP address of the host or network in CIDR notation." }, "services": { "type": "string", "description": "The group of service objects used in a servicegroup definition." }, "devicegroup": { "type": "string", "description": "Default: None\n\n- The name of the Panorama device group. The group must exist on Panorama. If device group is not defined it is assumed that we are contacting a firewall.\n" }, "destination_port": { "type": "string", "description": "The destination port to be used in a service object definition." }, "password": { "type": "string", "description": "Password credentials to use for authentication." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device or Panorama management console being configured." }, "operation": { "type": "string", "description": "The operation to be performed. Supported values are I(add)/I(delete)/I(find)." } } }, "cnos_backup": { "required": [ "serverpassword", "configType", "protocol", "serverusername", "rcserverip", "rcpath" ], "type": "object", "description": "This module allows you to work with switch configurations. It provides a way to back up the running or startup configurations of a switch to a remote server. This is achieved by periodically saving a copy of the startup or running configuration of the network device to a remote server using FTP, SFTP, TFTP, or SCP. The first step is to create a directory from where the remote server can be reached. The next step is to provide the full file path of the location where the configuration will be backed up. Authentication details required by the remote server must be provided as well. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_backup.html)", "properties": { "serverpassword": { "type": "string", "description": "Specify the password for the server relating to the protocol used." }, "protocol": { "type": "string", "description": "This refers to the protocol used by the network device to interact with the remote server to where to upload the backup configuration. The choices are FTP, SFTP, TFTP, or SCP. Any other protocols will result in error. If this parameter is not specified, there is no default value to be used." }, "configType": { "type": "string", "description": "This specifies what type of configuration will be backed up. The choices are the running or startup configurations. There is no default value, so it will result in an error if the input is incorrect." }, "serverusername": { "type": "string", "description": "Specify the username for the server relating to the protocol used." }, "rcserverip": { "type": "string", "description": "-This specifies the IP Address of the remote server to where the configuration will be backed up." }, "rcpath": { "type": "string", "description": "This specifies the full file path where the configuration file will be copied on the remote server. In case the relative path is used as the variable value, the root folder for the user of the server needs to be specified." } } }, "os_subnet": { "required": [ "name" ], "type": "object", "description": "Add or Remove a subnet to an OpenStack network", "properties": { "no_gateway_ip": { "type": "string", "description": "The gateway IP would not be assigned for this subnet" }, "use_default_subnetpool": { "type": "string", "description": "Use the default subnetpool for I(ip_version) to obtain a CIDR." }, "enable_dhcp": { "type": "string", "description": "Default: True\n\nWhether DHCP should be enabled for this subnet." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "dns_nameservers": { "type": "array", "description": "Default: None\n\nList of DNS nameservers for this subnet." }, "gateway_ip": { "type": "string", "description": "Default: None\n\nThe ip that would be assigned to the gateway for this subnet" }, "project": { "type": "string", "description": "Default: None\n\nProject name or ID containing the subnet (name admin-only)" }, "ipv6_ra_mode": { "type": "string", "description": "Default: None\n\nIPv6 router advertisement mode" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "allocation_pool_start": { "type": "string", "description": "Default: None\n\nFrom the subnet pool the starting address from which the IP should be allocated." }, "host_routes": { "type": "string", "description": "Default: None\n\nA list of host route dictionaries for the subnet." }, "ip_version": { "type": "string", "description": "Default: 4\n\nThe IP version of the subnet 4 or 6" }, "ipv6_address_mode": { "type": "string", "description": "Default: None\n\nIPv6 address mode" }, "cidr": { "type": "string", "description": "Default: None\n\nThe CIDR representation of the subnet that should be assigned to the subnet. Required when I(state) is 'present' and a subnetpool is not specified." }, "network_name": { "type": "string", "description": "Name of the network to which the subnet should be attached\nRequired when I(state) is 'present'" }, "allocation_pool_end": { "type": "string", "description": "Default: None\n\nFrom the subnet pool the last IP that should be assigned to the virtual machines." }, "name": { "type": "string", "description": "The name of the subnet that should be created. Although Neutron allows for non-unique subnet names, this module enforces subnet name uniqueness." } } }, "eos_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of the local usernames configured on Arista EOS devices. It allows playbooks to manage either individual usernames or the collection of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the remote Arista EOS device. The password needs to be provided in clear and it will be encrypted on the device. Please note that this option is not same as C(provider password)." }, "users": { "type": "string", "description": "The set of username objects to be configured on the remote Arista EOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(username) argument." }, "nopassword": { "description": "Defines the username without assigning a password. This will allow the user to login to the system without being authenticated by a password.", "$ref": "#/definitions/ansible_truth" }, "collection": { "type": "string", "description": "The set of username objects to be configured on the remote Arista EOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(username) argument." }, "purge": { "description": "Instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user which cannot be deleted per EOS constraints.", "$ref": "#/definitions/ansible_truth" }, "privilege": { "type": "string", "description": "The C(privilege) argument configures the privilege level of the user when logged into the system. This argument accepts integer values in the range of 1 to 15." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "role": { "type": "string", "description": "Configures the role for the username in the device running configuration. The argument accepts a string value defining the role name. This argument does not check if the role has been configured on the device." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote Arista EOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(username) argument." }, "sshkey": { "type": "string", "description": "Specifies the SSH public key to configure for the given username. This argument accepts a valid SSH key value." }, "name": { "type": "string", "description": "The username to be configured on the remote Arista EOS device. This argument accepts a stringv value and is mutually exclusive with the C(aggregate) argument. Please note that this option is not same as C(provider username)." } } }, "azure_rm_deployment": { "required": [ "resource_group_name" ], "type": "object", "description": "Create or destroy Azure Resource Manager template deployments via the Azure SDK for Python. You can find some quick start templates in GitHub here https://github.com/azure/azure-quickstart-templates. For more information on Azue resource manager templates see https://azure.microsoft.com/en-us/documentation/articles/resource-group-template-deploy/.", "properties": { "resource_group_name": { "type": "string", "description": "The resource group name to use or create to host the deployed template" }, "parameters": { "type": "string", "description": "A hash of all the required template variables for the deployment template. This parameter is mutually exclusive with 'parameters_link'. Either one of them is required if \"state\" parameter is \"present\"." }, "deployment_name": { "type": "string", "description": "Default: ansible-arm\n\nThe name of the deployment to be tracked in the resource group deployment history. Re-using a deployment name will overwrite the previous value in the resource group's deployment history." }, "wait_for_deployment_polling_period": { "type": "string", "description": "Default: 10\n\nTime (in seconds) to wait between polls when waiting for deployment completion." }, "template_link": { "type": "string", "description": "Uri of file containing the template body. This parameter is mutually exclusive with 'template'. Either one of them is required if \"state\" parameter is \"present\"." }, "state": { "type": "string", "description": "Default: present\n\nIf state is \"present\", template will be created. If state is \"present\" and if deployment exists, it will be updated. If state is \"absent\", stack will be removed." }, "location": { "type": "string", "description": "Default: westus\n\nThe geo-locations in which the resource group will be located." }, "wait_for_deployment_completion": { "type": "string", "description": "Default: True\n\nWhether or not to block until the deployment has completed." }, "parameters_link": { "type": "string", "description": "Uri of file containing the parameters body. This parameter is mutually exclusive with 'parameters'. Either one of them is required if \"state\" parameter is \"present\"." }, "deployment_mode": { "type": "string", "description": "Default: incremental\n\nIn incremental mode, resources are deployed without deleting existing resources that are not included in the template. In complete mode resources are deployed and existing resources in the resource group not included in the template are deleted." }, "template": { "type": "string", "description": "A hash containing the templates inline. This parameter is mutually exclusive with 'template_link'. Either one of them is required if \"state\" parameter is \"present\"." } } }, "packet_sshkey": { "type": "object", "description": "Create/delete an SSH key in Packet host.\nAPI is documented at U(https://www.packet.net/help/api/#page:ssh-keys,header:ssh-keys-ssh-keys-post).", "properties": { "auth_token": { "type": "string", "description": "Packet api token. You can also supply it in env var C(PACKET_API_TOKEN)." }, "label": { "type": "string", "description": "Label for the key. If you keep it empty, it will be read from key string." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "key": { "type": "string", "description": "Public Key string ({type} {base64 encoded key} {description})." }, "fingerprint": { "type": "string", "description": "Fingerprint of the key which you want to remove." }, "key_file": { "type": "string", "description": "File with the public key." }, "id": { "type": "string", "description": "UUID of the key which you want to remove." } } }, "nmcli": { "required": [ "conn_name", "state" ], "type": "object", "description": "Manage the network devices. Create, modify, and manage, ethernet, teams, bonds, vlans etc.", "properties": { "conn_name": { "type": "string", "description": "Where conn_name will be the name used to call the connection. when not provided a default name is generated: [-][-]" }, "ingress": { "type": "string", "description": "Default: None\n\nThis is only used with VLAN - VLAN ingress priority mapping" }, "slavepriority": { "type": "string", "description": "Default: 32\n\nThis is only used with 'bridge-slave' - [<0-63>] - STP priority of this slave" }, "path_cost": { "type": "string", "description": "Default: 100\n\nThis is only used with 'bridge-slave' - [<1-65535>] - STP port cost for destinations via this slave" }, "vlandev": { "type": "string", "description": "Default: None\n\nThis is only used with VLAN - parent device this VLAN is on, can use ifname" }, "forwarddelay": { "type": "string", "description": "Default: 15\n\nThis is only used with bridge - [forward-delay <2-30>] STP forwarding delay, in seconds" }, "primary": { "type": "string", "description": "Default: None\n\nThis is only used with bond and is the primary interface name (for \"active-backup\" mode), this is the usually the 'ifname'" }, "hairpin": { "type": "string", "description": "Default: True\n\nThis is only used with 'bridge-slave' - 'hairpin mode' for the slave, which allows frames to be sent back out through the slave the frame was received on." }, "egress": { "type": "string", "description": "Default: None\n\nThis is only used with VLAN - VLAN egress priority mapping" }, "ageingtime": { "type": "string", "description": "Default: 300\n\nThis is only used with bridge - [ageing-time <0-1000000>] the Ethernet MAC address aging time, in seconds" }, "mtu": { "type": "string", "description": "Default: 1500\n\nThe connection MTU, e.g. 9000. This can't be applied when creating the interface and is done once the interface has been created.\nCan be used when modifying Team, VLAN, Ethernet (Future plans to implement wifi, pppoe, infiniband)" }, "arp_ip_target": { "type": "string", "description": "Default: None\n\nThis is only used with bond - ARP IP target" }, "maxage": { "type": "string", "description": "Default: 20\n\nThis is only used with bridge - [max-age <6-42>] STP maximum message age, in seconds" }, "vlanid": { "type": "string", "description": "Default: None\n\nThis is only used with VLAN - VLAN ID in range <0-4095>" }, "priority": { "type": "string", "description": "Default: 128\n\nThis is only used with 'bridge' - sets STP priority" }, "gw4": { "type": "string", "description": "The IPv4 gateway for this interface using this format ie: \"192.0.2.1\"" }, "state": { "type": "string", "description": "Whether the device should exist or not, taking action if the state is different from what is stated." }, "gw6": { "type": "string", "description": "Default: None\n\nThe IPv6 gateway for this interface using this format ie: \"2001:db8::1\"" }, "master": { "type": "string", "description": "Default: None\n\nmaster ] STP hello time, in seconds" }, "downdelay": { "type": "string", "description": "Default: None\n\nThis is only used with bond - downdelay" }, "mac": { "type": "string", "description": "Default: None\n\nThis is only used with bridge - MAC address of the bridge (note: this requires a recent kernel feature, originally introduced in 3.15 upstream kernel)" }, "ip6": { "type": "string", "description": "Default: None\n\nThe IPv6 address to this interface using this format ie: \"abbe::cafe\"" }, "ip4": { "type": "string", "description": "Default: None\n\nThe IPv4 address to this interface using this format ie: \"192.0.2.24/24\"" }, "autoconnect": { "type": "string", "description": "Default: yes\n\nWhether the connection should start on boot.\nWhether the connection profile can be automatically activated" }, "dns6": { "type": "string", "description": "A list of upto 3 dns servers, ipv6 format e.g. To add two IPv6 DNS server addresses: [\"2001:4860:4860::8888 2001:4860:4860::8844\"]" }, "dns4": { "type": "string", "description": "Default: None\n\nA list of upto 3 dns servers, ipv4 format e.g. To add two IPv4 DNS server addresses: [\"192.0.2.53\", \"198.51.100.53\"]" }, "arp_interval": { "type": "string", "description": "Default: None\n\nThis is only used with bond - ARP interval" }, "stp": { "type": "string", "description": "Default: None\n\nThis is only used with bridge and controls whether Spanning Tree Protocol (STP) is enabled for this bridge" }, "mode": { "type": "string", "description": "Default: balence-rr\n\nThis is the type of device or network connection that you wish to create for a bond, team or bridge." }, "updelay": { "type": "string", "description": "Default: None\n\nThis is only used with bond - updelay" } } }, "avi_ipamdnsproviderprofile": { "required": [ "name", "type" ], "type": "object", "description": "This module is used to configure IpamDnsProviderProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "allocate_ip_in_vrf": { "description": "If this flag is set, only allocate ip from networks in the virtual service vrf.\nApplicable for avi vantage ipam only.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "openstack_profile": { "type": "string", "description": "Provider details if type is openstack." }, "azure_profile": { "type": "string", "description": "Provider details if type is microsoft azure.\nField introduced in 17.2.1." }, "uuid": { "type": "string", "description": "Uuid of the ipam/dns provider profile." }, "gcp_profile": { "type": "string", "description": "Provider details if type is google cloud." }, "proxy_configuration": { "type": "string", "description": "Field introduced in 17.1.1." }, "infoblox_profile": { "type": "string", "description": "Provider details if type is infoblox." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "aws_profile": { "type": "string", "description": "Provider details if type is aws." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "internal_profile": { "type": "string", "description": "Provider details if type is avi." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "custom_profile": { "type": "string", "description": "Provider details if type is custom.\nField introduced in 17.1.1." }, "type": { "type": "string", "description": "Provider type for the ipam/dns provider profile.\nEnum options - IPAMDNS_TYPE_INFOBLOX, IPAMDNS_TYPE_AWS, IPAMDNS_TYPE_OPENSTACK, IPAMDNS_TYPE_GCP, IPAMDNS_TYPE_INFOBLOX_DNS, IPAMDNS_TYPE_CUSTOM,\nIPAMDNS_TYPE_CUSTOM_DNS, IPAMDNS_TYPE_AZURE, IPAMDNS_TYPE_INTERNAL, IPAMDNS_TYPE_INTERNAL_DNS, IPAMDNS_TYPE_AWS_DNS, IPAMDNS_TYPE_AZURE_DNS." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name for the ipam/dns provider profile." } } }, "azure_rm_resouregroup_facts": { "type": "object", "description": "Get facts for a specific resource group or all resource groups.", "properties": { "name": { "type": "string", "description": "Limit results to a specific resource group." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "cnos_portchannel": { "required": [ "interfaceRange", "interfaceArg1" ], "type": "object", "description": "This module allows you to work with port aggregation related configurations. The operators used are overloaded to ensure control over switch port aggregation configurations. Apart from the regular device connection related attributes, there are five LAG arguments which are overloaded variables that will perform further configurations. They are interfaceArg1, interfaceArg2, interfaceArg3, interfaceArg4, and interfaceArg5. For more details on how to use these arguments, see [Overloaded Variables]. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_portchannel.html)", "properties": { "interfaceRange": { "type": "string", "description": "This specifies the interface range in which the port aggregation is envisaged" }, "interfaceArg4": { "type": "string", "description": "This is an overloaded Port Channel fourth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg5": { "type": "string", "description": "This is an overloaded Port Channel fifth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg6": { "type": "string", "description": "This is an overloaded Port Channel sixth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg7": { "type": "string", "description": "This is an overloaded Port Channel seventh argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg1": { "type": "string", "description": "This is an overloaded Port Channel first argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg2": { "type": "string", "description": "This is an overloaded Port Channel second argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg3": { "type": "string", "description": "This is an overloaded Port Channel third argument. Usage of this argument can be found is the User Guide referenced above." } } }, "ec2_vpc_vgw_facts": { "type": "object", "description": "Gather facts about virtual gateways in AWS.", "properties": { "vpn_gateway_ids": { "type": "string", "description": "Default: None\n\nGet details of a specific Virtual Gateway ID. This value should be provided as a list." }, "filters": { "type": "string", "description": "Default: None\n\nA dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) for possible filters." } } }, "gunicorn": { "allOf": [ { "allOf": [ { "not": { "required": [ "venv", "virtualenv" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "app", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "app" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Starts gunicorn with the parameters specified. Common settings for gunicorn configuration are supported. For additional configuration use a config file See U(https://gunicorn-docs.readthedocs.io/en/latest/settings.html) for more options. It's recommended to always use the chdir option to avoid problems with the location of the app.", "properties": { "virtualenv": { "type": "string", "description": "Path to the virtualenv directory." }, "venv": { "type": "string", "description": "Path to the virtualenv directory." }, "name": { "type": "string", "description": "The app module. A name refers to a WSGI callable that should be found in the specified module." }, "pid": { "type": "string", "description": "A filename to use for the PID file. If not set and not found on the configuration file a tmp pid file will be created to check a successful run of gunicorn." }, "app": { "type": "string", "description": "The app module. A name refers to a WSGI callable that should be found in the specified module." }, "worker": { "type": "string", "description": "The type of workers to use. The default class (sync) should handle most \"normal\" types of workloads." }, "chdir": { "type": "string", "description": "Chdir to specified directory before apps loading." }, "user": { "type": "string", "description": "Switch worker processes to run as this user." }, "config": { "type": "string", "description": "Path to the gunicorn configuration file." } } }, "aci_aaa_user_certificate": { "allOf": [ { "allOf": [ { "not": { "required": [ "certificate_name", "cert_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "certificate", "cert_data", "certificate_data" ], "type": "object" } } ] } ], "type": "object", "description": "Manage AAA user certificates on Cisco ACI fabrics.", "properties": { "certificate_data": { "type": "string", "description": "The PEM format public key extracted from the X.509 certificate." }, "aaa_user": { "type": "string", "description": "The name of the user to add a certificate to." }, "certificate": { "type": "string", "description": "The PEM format public key extracted from the X.509 certificate." }, "certificate_name": { "type": "string", "description": "The name of the user certificate entry in ACI." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "aaa_user_type": { "type": "string", "description": "Default: user\n\nWhether this is a normal user or an appuser." }, "cert_name": { "type": "string", "description": "The name of the user certificate entry in ACI." }, "cert_data": { "type": "string", "description": "The PEM format public key extracted from the X.509 certificate." } } }, "aci_switch_policy_leaf_profile": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "leaf_profile", "leaf_profile_name", "name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage switch policy leaf profiles on Cisco ACI fabrics.", "properties": { "leaf_profile_name": { "type": "string", "description": "The name of the Leaf Profile." }, "name": { "type": "string", "description": "The name of the Leaf Profile." }, "descr": { "type": "string", "description": "Description for the Leaf Profile." }, "leaf_profile": { "type": "string", "description": "The name of the Leaf Profile." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "description": { "type": "string", "description": "Description for the Leaf Profile." } } }, "net_system": { "type": "object", "description": "This module provides declarative management of node system attributes on network devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "lookup_source": { "type": "string", "description": "Provides one or more source interfaces to use for performing DNS lookups. The interface provided in C(lookup_source) must be a valid interface configured on the device." }, "domain_search": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "domain_name": { "type": "string", "description": "Configure the IP domain name on the remote device to the provided value. Value should be in the dotted name form and will be appended to the C(hostname) to create a fully-qualified domain name." }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "name_servers": { "type": "array", "description": "List of DNS name servers by IP address to use to perform name resolution lookups. This argument accepts either a list of DNS servers See examples." } } }, "ce_interface_ospf": { "required": [ "area", "process_id", "interface" ], "type": "object", "description": "Manages configuration of an OSPF interface instanceon HUAWEI CloudEngine switches.", "properties": { "process_id": { "type": "string", "description": "Specifies a process ID. The value is an integer ranging from 1 to 4294967295." }, "cost": { "type": "string", "description": "The cost associated with this interface. Valid values are an integer in the range from 1 to 65535." }, "area": { "type": "string", "description": "Ospf area associated with this ospf process. Valid values are a string, formatted as an IP address (i.e. \"0.0.0.0\") or as an integer between 1 and 4294967295." }, "silent_interface": { "type": "string", "description": "Setting to true will prevent this interface from receiving HELLO packets. Valid values are 'true' and 'false'." }, "auth_mode": { "type": "string", "description": "Specifies the authentication type." }, "auth_key_id": { "type": "string", "description": "Authentication key id when C(auth_mode) is 'hmac-sha256', 'md5' or 'hmac-md5. Valid value is an integer is in the range from 1 to 255." }, "auth_text_simple": { "type": "string", "description": "Specifies a password for simple authentication. The value is a string of 1 to 8 characters." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "dead_interval": { "type": "string", "description": "Time interval an ospf neighbor waits for a hello packet before tearing down adjacencies. Valid values are an integer in the range from 1 to 235926000." }, "hello_interval": { "type": "string", "description": "Time between sending successive hello packets. Valid values are an integer in the range from 1 to 65535." }, "auth_text_md5": { "type": "string", "description": "Specifies a password for MD5, HMAC-MD5, or HMAC-SHA256 authentication. The value is a string of 1 to 255 case-sensitive characters, spaces not supported." }, "interface": { "type": "string", "description": "Full name of interface, i.e. 40GE1/0/10." } } }, "cloudwatchevent_rule": { "required": [ "name" ], "type": "object", "description": "This module creates and manages CloudWatch event rules and targets.", "properties": { "role_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role associated with the rule" }, "description": { "type": "string", "description": "A description of the rule" }, "event_pattern": { "type": "string", "description": "A string pattern (in valid JSON format) that is used to match against incoming events to determine if the rule should be triggered" }, "schedule_expression": { "type": "string", "description": "A cron or rate expression that defines the schedule the rule will trigger on. For example, C(cron(0 20 * * ? *)), C(rate(5 minutes))" }, "state": { "type": "string", "description": "Default: present\n\nWhether the rule is present (and enabled), disabled, or absent" }, "targets": { "type": "object", "description": "A dictionary array of targets to add to or update for the rule, in the form C({ id: [string], arn: [string], role_arn: [string], input: [valid JSON string], input_path: [valid JSONPath string], ecs_parameters: {task_definition_arn: [string], task_count: [int]}}). I(id) [required] is the unique target assignment ID. I(arn) (required) is the Amazon Resource Name associated with the target. I(role_arn) (optional) is The Amazon Resource Name of the IAM role to be used for this target when the rule is triggered. I(input) (optional) is a JSON object that will override the event data when passed to the target. I(input_path) (optional) is a JSONPath string (e.g. C($.detail)) that specifies the part of the event data to be passed to the target. If neither I(input) nor I(input_path) is specified, then the entire event is passed to the target in JSON form. I(task_definition_arn) [optional] is ecs task definition arn. I(task_count) [optional] is ecs task count." }, "name": { "type": "string", "description": "The name of the rule you are creating, updating or deleting. No spaces or special characters allowed (i.e. must match C([\\.\\-_A-Za-z0-9]+))" } } }, "gc_storage": { "allOf": [ { "allOf": [ { "not": { "required": [ "force", "overwrite" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows users to manage their objects/buckets in Google Cloud Storage. It allows upload and download operations and can set some canned permissions. It also allows retrieval of URLs for objects for use in playbooks, and retrieval of string contents of objects. This module requires setting the default project in GCS prior to playbook usage. See U(https://developers.google.com/storage/docs/reference/v1/apiversion1) for information about setting the default project.", "properties": { "src": { "type": "string", "description": "The source file path when performing a PUT operation." }, "force": { "type": "string", "description": "Default: True\n\nForces an overwrite either locally on the filesystem or remotely with the object/key. Used with PUT and GET operations." }, "permission": { "type": "string", "description": "Default: private\n\nThis option let's the user set the canned permissions on the object/bucket that are created. The permissions that can be set are 'private', 'public-read', 'authenticated-read'." }, "dest": { "type": "string", "description": "The destination file path when downloading an object/key with a GET operation." }, "gs_access_key": { "type": "string", "description": "GS access key. If not set then the value of the GS_ACCESS_KEY_ID environment variable is used." }, "object": { "type": "string", "description": "Keyname of the object inside the bucket. Can be also be used to create \"virtual directories\" (see examples)." }, "bucket": { "type": "string", "description": "Bucket name." }, "versioning": { "type": "string", "description": "Whether versioning is enabled or disabled (note that once versioning is enabled, it can only be suspended)" }, "headers": { "type": "string", "description": "Default: {}\n\nHeaders to attach to object." }, "gs_secret_key": { "type": "string", "description": "GS secret key. If not set then the value of the GS_SECRET_ACCESS_KEY environment variable is used." }, "mode": { "type": "string", "description": "Switches the module behaviour between upload, download, get_url (return download url) , get_str (download object as string), create (bucket) and delete (bucket)." }, "region": { "type": "string", "description": "Default: US\n\nThe gs region to use. If not defined then the value 'US' will be used. See U(https://cloud.google.com/storage/docs/bucket-locations)" }, "overwrite": { "type": "string", "description": "Default: True\n\nForces an overwrite either locally on the filesystem or remotely with the object/key. Used with PUT and GET operations." }, "expiration": { "type": "string", "description": "Time limit (in seconds) for the URL generated and returned by GCA when performing a mode=put or mode=get_url operation. This url is only available when public-read is the acl for the object." } } }, "onyx_pfc_interface": { "type": "object", "description": "This module provides declarative management of priority flow control (PFC) on interfaces of Mellanox ONYX network devices.", "properties": { "aggregate": { "type": "array", "description": "List of interfaces PFC should be configured on." }, "purge": { "description": "Purge interfaces not defined in the aggregate parameter.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: enabled\n\nState of the PFC configuration." }, "name": { "type": "string", "description": "Name of the interface PFC should be configured on." } } }, "aci_interface_policy_lldp": { "allOf": [ { "allOf": [ { "not": { "required": [ "lldp_policy", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "lldp_policy" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage LLDP interface policies on Cisco ACI fabrics.", "properties": { "receive_state": { "type": "string", "description": "Default: enabled\n\nEnable or disable Receive state." }, "name": { "type": "string", "description": "The LLDP interface policy name." }, "descr": { "type": "string", "description": "The description for the LLDP interface policy name." }, "lldp_policy": { "type": "string", "description": "The LLDP interface policy name." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "transmit_state": { "type": "string", "description": "Default: enabled\n\nEnable or Disable Transmit state." }, "description": { "type": "string", "description": "The description for the LLDP interface policy name." } } }, "rabbitmq_policy": { "required": [ "name", "tags", "pattern" ], "type": "object", "description": "Manage the state of a virtual host in RabbitMQ.", "properties": { "node": { "type": "string", "description": "Default: rabbit\n\nErlang node name of the rabbit we wish to configure." }, "name": { "type": "string", "description": "The name of the policy to manage." }, "tags": { "type": "string", "description": "A dict or string describing the policy." }, "pattern": { "type": "string", "description": "A regex of queues to apply the policy to." }, "priority": { "type": "string", "description": "The priority of the policy." }, "vhost": { "type": "string", "description": "Default: /\n\nThe name of the vhost to apply to." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the policy." }, "apply_to": { "type": "string", "description": "Default: all\n\nWhat the policy applies to. Requires RabbitMQ 3.2.0 or later." } } }, "route53_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "resource_id", "resource_ids" ], "type": "object" } } ] } ], "type": "object", "description": "Gets various details related to Route53 zone, record set or health check details", "properties": { "start_record_name": { "type": "string", "description": "The first name in the lexicographic ordering of domain names that you want the list_command: record_sets to start listing from" }, "type": { "type": "string", "description": "The type of DNS record" }, "resource_id": { "type": "string", "description": "The ID/s of the specified resource/s" }, "hosted_zone_method": { "type": "string", "description": "Default: list\n\nThis is used in conjunction with query: hosted_zone. It allows for listing details, counts or tags of various hosted zone details." }, "dns_name": { "type": "string", "description": "The first name in the lexicographic ordering of domain names that you want the list_command to start listing from" }, "health_check_method": { "type": "string", "description": "Default: list\n\nThis is used in conjunction with query: health_check. It allows for listing details, counts or tags of various health check details." }, "max_items": { "type": "string", "description": "Maximum number of items to return for various get/list requests" }, "hosted_zone_id": { "type": "string", "description": "The Hosted Zone ID of the DNS zone" }, "health_check_id": { "type": "string", "description": "The ID of the health check" }, "change_id": { "type": "string", "description": "The ID of the change batch request. The value that you specify here is the value that ChangeResourceRecordSets returned in the Id element when you submitted the request." }, "query": { "type": "string", "description": "specifies the query action to take" }, "resource_ids": { "type": "string", "description": "The ID/s of the specified resource/s" }, "delegation_set_id": { "type": "string", "description": "The DNS Zone delegation set ID" }, "next_marker": { "type": "string", "description": "Some requests such as list_command: hosted_zones will return a maximum number of entries - EG 100. If the number of entries exceeds this maximum another request can be sent using the NextMarker entry from the first response to get the next page of results" } } }, "k8s_scale": { "type": "object", "description": "Similar to the kubectl scale command. Use to set the number of replicas for a Deployment, ReplicatSet, or Replication Controller, or the parallelism attribute of a Job. Supports check mode.", "properties": {} }, "rax_mon_notification_plan": { "required": [ "label" ], "type": "object", "description": "Create or delete a Rackspace Cloud Monitoring notification plan by associating existing rax_mon_notifications with severity levels. Rackspace monitoring module flow | rax_mon_entity -> rax_mon_check -> rax_mon_notification -> *rax_mon_notification_plan* -> rax_mon_alarm", "properties": { "ok_state": { "type": "string", "description": "Notification list to use when the alarm state is OK. Must be an array of valid rax_mon_notification ids." }, "state": { "type": "string", "description": "Ensure that the notification plan with this C(label) exists or does not exist." }, "warning_state": { "type": "string", "description": "Notification list to use when the alarm state is WARNING. Must be an array of valid rax_mon_notification ids." }, "critical_state": { "type": "string", "description": "Notification list to use when the alarm state is CRITICAL. Must be an array of valid rax_mon_notification ids." }, "label": { "type": "string", "description": "Defines a friendly name for this notification plan. String between 1 and 255 characters long." } } }, "bigip_provision": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "module" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "module" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage BIG-IP module provisioning. This module will only provision at the standard levels of Dedicated, Nominal, and Minimum.", "properties": { "state": { "type": "string", "description": "Default: present\n\nThe state of the provisioned module on the system. When C(present), guarantees that the specified module is provisioned at the requested level provided that there are sufficient resources on the device (such as physical RAM) to support the provisioned module. When C(absent), de-provision the module." }, "name": { "type": "string", "description": "The module to provision in BIG-IP." }, "module": { "type": "string", "description": "The module to provision in BIG-IP." }, "level": { "type": "string", "description": "Default: nominal\n\nSets the provisioning level for the requested modules. Changing the level for one module may require modifying the level of another module. For example, changing one module to C(dedicated) requires setting all others to C(none). Setting the level of a module to C(none) means that the module is not activated." } } }, "elasticache": { "allOf": [ { "allOf": [ { "not": { "required": [ "cache_parameter_group", "parameter_group" ], "type": "object" } } ] } ], "type": "object", "description": "Manage cache clusters in Amazon Elasticache.\nReturns information about the specified cache cluster.", "properties": { "engine": { "type": "string", "description": "Default: memcached\n\nName of the cache engine to be used." }, "cache_port": { "type": "string", "description": "Default: None\n\nThe port number on which each of the cache nodes will accept connections" }, "security_group_ids": { "type": "string", "description": "Default: None\n\nA list of vpc security group names to associate with this cache cluster. Only use if inside a vpc" }, "name": { "type": "string", "description": "The cache cluster identifier" }, "cache_engine_version": { "type": "string", "description": "Default: None\n\nThe version number of the cache engine" }, "node_type": { "type": "string", "description": "Default: cache.m1.small\n\nThe compute and memory capacity of the nodes in the cache cluster" }, "parameter_group": { "type": "string", "description": "Default: None\n\nThe name of the cache parameter group to associate with this cache cluster. If this argument is omitted, the default cache parameter group for the specified engine will be used." }, "num_nodes": { "type": "string", "description": "The initial number of cache nodes that the cache cluster will have. Required when state=present." }, "state": { "type": "string", "description": "C(absent) or C(present) are idempotent actions that will create or destroy a cache cluster as needed. C(rebooted) will reboot the cluster, resulting in a momentary outage." }, "cache_security_groups": { "type": "string", "description": "Default: None\n\nA list of cache security group names to associate with this cache cluster. Must be an empty list if inside a vpc" }, "zone": { "type": "string", "description": "Default: None\n\nThe EC2 Availability Zone in which the cache cluster will be created" }, "hard_modify": { "type": "string", "description": "Whether to destroy and recreate an existing cache cluster if necessary in order to modify its state" }, "cache_subnet_group": { "type": "string", "description": "Default: None\n\nThe subnet group name to associate with. Only use if inside a vpc. Required if inside a vpc" }, "cache_parameter_group": { "type": "string", "description": "Default: None\n\nThe name of the cache parameter group to associate with this cache cluster. If this argument is omitted, the default cache parameter group for the specified engine will be used." }, "wait": { "type": "string", "description": "Default: True\n\nWait for cache cluster result before returning" } } }, "aos_rack_type": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Rack Type module let you manage your Rack Type easily. You can create create and delete Rack Type by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "content": { "type": "string", "description": "Datastructure of the Rack Type to create. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Rack Type (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "name": { "type": "string", "description": "Name of the Rack Type to manage. Only one of I(name), I(id) or I(content) can be set." }, "id": { "type": "string", "description": "AOS Id of the Rack Type to manage (can't be used to create a new Rack Type), Only one of I(name), I(id) or I(content) can be set." } } }, "apt_repository": { "required": [ "repo" ], "type": "object", "description": "Add or remove an APT repositories in Ubuntu and Debian.", "properties": { "filename": { "type": "string", "description": "Sets the name of the source list file in sources.list.d. Defaults to a file name based on the repository source url. The .list extension will be automatically added." }, "repo": { "type": "string", "description": "A source string for the repository." }, "state": { "type": "string", "description": "Default: present\n\nA source string state." }, "update_cache": { "description": "Default: yes\n\nRun the equivalent of C(apt-get update) when a change occurs. Cache updates are run after making changes.", "$ref": "#/definitions/ansible_truth" }, "mode": { "type": "string", "description": "Default: 420\n\nThe octal mode for newly created files in sources.list.d" }, "codename": { "type": "string", "description": "Override the distribution codename to use for PPA repositories. Should usually only be set when working with a PPA on a non-Ubuntu target (e.g. Debian or Mint)" }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates for the target repo will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" } } }, "vr_firewall_rule": { "allOf": [ { "allOf": [ { "not": { "required": [ "ip_version", "ip_type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "start_port", "port" ], "type": "object" } } ] } ], "type": "object", "description": "Create and remove firewall rules.", "properties": { "protocol": { "type": "string", "description": "Default: tcp\n\nProtocol of the firewall rule." }, "start_port": { "type": "string", "description": "Start port for the firewall rule.\nRequired if C(protocol) is tcp or udp and C(state=present)." }, "end_port": { "type": "string", "description": "End port for the firewall rule.\nOnly considered if C(protocol) is tcp or udp and C(state=present)." }, "group": { "type": "string", "description": "Name of the firewall group." }, "state": { "type": "string", "description": "Default: present\n\nState of the firewall rule." }, "ip_version": { "type": "string", "description": "Default: v4\n\nIP address version" }, "ip_type": { "type": "string", "description": "Default: v4\n\nIP address version" }, "cidr": { "type": "string", "description": "Default: 0.0.0.0/0 or ::/0 depending on C(ip_version)\n\nNetwork in CIDR format\nThe CIDR format must match with the C(ip_type) value.\nRequired if C(state=present)." }, "port": { "type": "string", "description": "Start port for the firewall rule.\nRequired if C(protocol) is tcp or udp and C(state=present)." } } }, "ecs_attribute": { "required": [ "cluster", "ec2_instance_id", "attributes" ], "type": "object", "description": "Create, update or delete ECS container instance attributes.", "properties": { "cluster": { "type": "string", "description": "The short name or full Amazon Resource Name (ARN) of the cluster that contains the resource to apply attributes." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the attributes." }, "ec2_instance_id": { "type": "string", "description": "EC2 instance ID of ECS cluster container instance." }, "attributes": { "type": "array", "description": "List of attributes." } } }, "ipa_host": { "allOf": [ { "allOf": [ { "not": { "required": [ "ns_os_version", "nsosversion" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "fqdn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "fqdn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "ns_host_location", "nshostlocation" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mac_address", "macaddress" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "user_certificate", "usercertificate" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ns_hardware_platform", "nshardwareplatform" ], "type": "object" } } ] } ], "type": "object", "description": "Add, modify and delete an IPA host using IPA API", "properties": { "macaddress": { "type": "array", "description": "List of Hardware MAC address(es) off this host.\nIf option is omitted MAC addresses will not be checked or changed.\nIf an empty list is passed all assigned MAC addresses will be removed.\nMAC addresses that are already assigned but not passed will be removed." }, "update_dns": { "type": "string", "description": "If set C(\"True\") with state as C(\"absent\"), then removes DNS records of the host managed by FreeIPA DNS.\nThis option has no effect for states other than \"absent\"." }, "force": { "type": "string", "description": "Force host name even if not in DNS." }, "name": { "type": "string", "description": "Full qualified domain name.\nCan not be changed as it is the unique identifier." }, "nshardwareplatform": { "type": "string", "description": "Host hardware platform (e.g. \"Lenovo T61\")" }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "nshostlocation": { "type": "string", "description": "Host location (e.g. \"Lab 2\")" }, "fqdn": { "type": "string", "description": "Full qualified domain name.\nCan not be changed as it is the unique identifier." }, "nsosversion": { "type": "string", "description": "Host operating system and version (e.g. \"Fedora 9\")" }, "ip_address": { "type": "string", "description": "Add the host to DNS with this IP address." }, "ns_os_version": { "type": "string", "description": "Host operating system and version (e.g. \"Fedora 9\")" }, "random_password": { "description": "Generate a random password to be used in bulk enrollment", "$ref": "#/definitions/ansible_truth" }, "usercertificate": { "type": "array", "description": "List of Base-64 encoded server certificates.\nIf option is omitted certificates will not be checked or changed.\nIf an empty list is passed all assigned certificates will be removed.\nCertificates already assigned but not passed will be removed." }, "mac_address": { "type": "array", "description": "List of Hardware MAC address(es) off this host.\nIf option is omitted MAC addresses will not be checked or changed.\nIf an empty list is passed all assigned MAC addresses will be removed.\nMAC addresses that are already assigned but not passed will be removed." }, "user_certificate": { "type": "array", "description": "List of Base-64 encoded server certificates.\nIf option is omitted certificates will not be checked or changed.\nIf an empty list is passed all assigned certificates will be removed.\nCertificates already assigned but not passed will be removed." }, "ns_host_location": { "type": "string", "description": "Host location (e.g. \"Lab 2\")" }, "ns_hardware_platform": { "type": "string", "description": "Host hardware platform (e.g. \"Lenovo T61\")" }, "description": { "type": "string", "description": "A description of this host." } } }, "oneview_logical_interconnect_group": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage Logical Interconnect Group resources. Can create, update, or delete.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired state for the Logical Interconnect Group resource. C(absent) will remove the resource from OneView, if it exists. C(present) will ensure data properties are compliant with OneView." }, "data": { "type": "array", "description": "List with the Logical Interconnect Group properties." } } }, "win_domain_controller": { "required": [ "domain_admin_user", "domain_admin_password" ], "type": "object", "description": "Ensure that a Windows Server 2012+ host is configured as a domain controller or demoted to member server. This module may require subsequent use of the M(win_reboot) action if changes are made.", "properties": { "read_only": { "description": "Default: no\n\nWhether to install the domain controller as a read only replica for an existing domain.", "$ref": "#/definitions/ansible_truth" }, "database_path": { "type": "string", "description": "The path to a directory on a fixed disk of the Windows host where the domain database will be created..\nIf not set then the default path is C(%SYSTEMROOT%\\NTDS)." }, "site_name": { "type": "string", "description": "Specifies the name of an existing site where you can place the new domain controller.\nThis option is required when I(read_only) is C(yes)." }, "domain_admin_user": { "type": "string", "description": "Username of a domain admin for the target domain (necessary to promote or demote a domain controller)." }, "dns_domain_name": { "type": "string", "description": "When C(state) is C(domain_controller), the DNS name of the domain for which the targeted Windows host should be a DC." }, "safe_mode_password": { "type": "string", "description": "Safe mode password for the domain controller (required when C(state) is C(domain_controller))." }, "domain_admin_password": { "type": "string", "description": "Password for the specified C(domain_admin_user)." }, "state": { "type": "string", "description": "Whether the target host should be a domain controller or a member server." }, "local_admin_password": { "type": "string", "description": "Password to be assigned to the local C(Administrator) user (required when C(state) is C(member_server))." }, "sysvol_path": { "type": "string", "description": "The path to a directory on a fixed disk of the Windows host where the Sysvol folder will be created.\nIf not set then the default path is C(%SYSTEMROOT%\\SYSVOL)." } } }, "vsphere_copy": { "required": [ "src", "datacenter", "host", "path", "login", "password", "datastore" ], "type": "object", "description": "Upload files to a vCenter datastore", "properties": { "src": { "type": "string", "description": "The file to push to vCenter" }, "datacenter": { "type": "string", "description": "The datacenter on the vCenter server that holds the datastore." }, "host": { "type": "string", "description": "The vCenter server on which the datastore is available." }, "path": { "type": "string", "description": "The file to push to the datastore on the vCenter server." }, "login": { "type": "string", "description": "The login name to authenticate on the vCenter server." }, "password": { "type": "string", "description": "The password to authenticate on the vCenter server." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be set to C(no) when no other option exists." }, "datastore": { "type": "string", "description": "The datastore on the vCenter server to push files to." } } }, "service": { "allOf": [ { "allOf": [ { "not": { "required": [ "arguments", "args" ], "type": "object" } } ] } ], "type": "object", "description": "Controls services on remote hosts. Supported init systems include BSD init, OpenRC, SysV, Solaris SMF, systemd, upstart.", "properties": { "use": { "type": "string", "description": "Default: auto\n\nThe service module actually uses system specific modules, normally through auto detection, this setting can force a specific module.\nNormally it uses the value of the 'ansible_service_mgr' fact and falls back to the old 'service' module when none matching is found." }, "name": { "type": "string", "description": "Name of the service." }, "pattern": { "type": "string", "description": "If the service does not respond to the status command, name a substring to look for as would be found in the output of the I(ps) command as a stand-in for a status result. If the string is found, the service will be assumed to be running." }, "args": { "type": "string", "description": "Additional arguments provided on the command line" }, "enabled": { "type": "string", "description": "Whether the service should start on boot. B(At least one of state and enabled are required.)" }, "state": { "type": "string", "description": "C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the service. C(reloaded) will always reload. B(At least one of state and enabled are required.)" }, "sleep": { "type": "string", "description": "If the service is being C(restarted) then sleep this many seconds between the stop and start command. This helps to workaround badly behaving init scripts that exit immediately after signaling a process to stop." }, "arguments": { "type": "string", "description": "Additional arguments provided on the command line" }, "runlevel": { "type": "string", "description": "Default: default\n\nFor OpenRC init scripts (ex: Gentoo) only. The runlevel that this service belongs to." } } }, "aws_batch_job_definition": { "required": [ "state", "job_definition_name", "type" ], "type": "object", "description": "This module allows the management of AWS Batch Job Definitions. It is idempotent and supports \"Check\" mode. Use module M(batch_compute_environment) to manage the compute environment, M(batch_job_queue) to manage job queues, M(batch_job_definition) to manage job definitions.", "properties": { "readonly_root_filesystem": { "type": "string", "description": "When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run." }, "parameters": { "type": "string", "description": "Default parameter substitution placeholders to set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a SubmitJob request override any corresponding parameter defaults from the job definition." }, "mount_points": { "type": "string", "description": "The mount points for data volumes in your container. This parameter maps to Volumes in the Create a container section of the Docker Remote API and the --volume option to docker run. List of dictionaries." }, "image": { "type": "string", "description": "The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with `` repository-url /image tag ``. Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of docker run." }, "job_role_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "privileged": { "type": "string", "description": "When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run." }, "environment": { "type": "string", "description": "The environment variables to pass to a container. This parameter maps to Env in the Create a container section of the Docker Remote API and the --env option to docker run. List of dictionaries." }, "attempts": { "type": "string", "description": "Retry strategy - The number of times to move a job to the RUNNABLE status. You may specify between 1 and 10 attempts. If attempts is greater than one, the job is retried if it fails until it has moved to RUNNABLE that many times." }, "command": { "type": "string", "description": "The command that is passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#cmd." }, "user": { "type": "string", "description": "The user name to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run." }, "volumes": { "type": "string", "description": "A list of data volumes used in a job. List of dictionaries." }, "memory": { "type": "string", "description": "The hard limit (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run." }, "job_definition_name": { "type": "string", "description": "The name for the job definition" }, "job_definition_arn": { "type": "string", "description": "The arn for the job definition" }, "type": { "type": "string", "description": "The type of job definition" }, "vcpus": { "type": "string", "description": "The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares." }, "ulimits": { "type": "string", "description": "A list of ulimits to set in the container. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run. List of dictionaries." } } }, "os_project_facts": { "required": [ "name" ], "type": "object", "description": "Retrieve facts about a one or more OpenStack projects", "properties": { "domain": { "type": "string", "description": "Default: None\n\nName or ID of the domain containing the project if the cloud supports domains" }, "name": { "type": "string", "description": "Name or ID of the project" }, "filters": { "type": "object", "description": "Default: None\n\nA dictionary of meta data to use for further filtering. Elements of this dictionary may be additional dictionaries." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" } } }, "rax_network": { "type": "object", "description": "creates / deletes a Rackspace Public Cloud isolated network.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "cidr": { "type": "string", "description": "cidr of the network being created" }, "label": { "type": "string", "description": "Label (name) to give the network" } } }, "ce_aaa_server_host": { "type": "object", "description": "Manages AAA server host configuration on HUAWEI CloudEngine switches.", "properties": { "radius_server_port": { "type": "string", "description": "Configured server port for a particular server. The value is an integer ranging from 1 to 65535." }, "hwtacacs_server_ipv6": { "type": "string", "description": "Server IPv6 address. Must be a valid unicast IP address. The total length is 128 bits." }, "local_service_type": { "type": "string", "description": "The type of local user login through, such as ftp ssh snmp telnet." }, "hwtacacs_server_type": { "type": "string", "description": "Hwtacacs server type." }, "radius_server_ipv6": { "type": "string", "description": "IPv6 address of configured server. The total length is 128 bits." }, "radius_server_type": { "type": "string", "description": "Type of Radius Server." }, "hwtacacs_server_ip": { "type": "string", "description": "Server IPv4 address. Must be a valid unicast IP address. The value is a string of 0 to 255 characters, in dotted decimal notation." }, "local_user_group": { "type": "string", "description": "Name of the user group where the user belongs. The user inherits all the rights of the user group. The value is a string of 1 to 32 characters." }, "local_user_level": { "type": "string", "description": "Login level of a local user. The value is an integer ranging from 0 to 15." }, "radius_vpn_name": { "type": "string", "description": "Set VPN instance. The value is a string of 1 to 31 case-sensitive characters." }, "hwtacacs_vpn_name": { "type": "string", "description": "VPN instance name." }, "hwtacacs_is_secondary_server": { "type": "string", "description": "Whether the server is secondary." }, "local_password": { "type": "string", "description": "Login password of a user. The password can contain letters, numbers, and special characters. The value is a string of 1 to 255 characters." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "local_user_name": { "type": "string", "description": "Name of a local user. The value is a string of 1 to 253 characters." }, "radius_server_name": { "type": "string", "description": "Hostname of configured server. The value is a string of 0 to 255 case-sensitive characters." }, "radius_server_mode": { "type": "string", "description": "Configured primary or secondary server for a particular server." }, "radius_server_ip": { "type": "string", "description": "IPv4 address of configured server. The value is a string of 0 to 255 characters, in dotted decimal notation." }, "local_ftp_dir": { "type": "string", "description": "FTP user directory. The value is a string of 1 to 255 characters." }, "radius_group_name": { "type": "string", "description": "RADIUS server group's name. The value is a string of 1 to 32 case-insensitive characters." }, "hwtacacs_template": { "type": "string", "description": "Name of a HWTACACS template. The value is a string of 1 to 32 case-insensitive characters." }, "hwtacacs_server_host_name": { "type": "string", "description": "Hwtacacs server host name." }, "hwtacacs_is_public_net": { "type": "string", "description": "Set the public-net." } } }, "grafana_datasource": { "required": [ "grafana_url", "ds_type", "name", "url" ], "type": "object", "description": "Create/update/delete Grafana datasources via API.", "properties": { "tsdb_version": { "type": "string", "description": "Default: 1\n\nThe opentsdb version.\nUse C(1) for <=2.1, C(2) for ==2.2, C(3) for ==2.3." }, "tls_client_key": { "type": "string", "description": "The client TLS private key\nStarts with ----- BEGIN RSA PRIVATE KEY -----" }, "access": { "type": "string", "description": "Default: proxy\n\nThe access mode for this datasource." }, "basic_auth_user": { "type": "string", "description": "The datasource basic auth user.\nSetting this option with basic_auth_password will enable basic auth." }, "with_credentials": { "description": "Default: no\n\nWhether credentials such as cookies or auth headers should be sent with cross-site requests.", "$ref": "#/definitions/ansible_truth" }, "tls_ca_cert": { "type": "string", "description": "The TLS CA certificate for self signed certificates.\nOnly used when C(tls_client_cert) and C(tls_client_key) are set." }, "state": { "type": "string", "description": "Default: present\n\nStatus of the datasource" }, "tls_client_cert": { "type": "string", "description": "The client TLS certificate.\nIf C(tls_client_cert) and C(tls_client_key) are set, this will enable TLS authentication.\nStarts with ----- BEGIN CERTIFICATE -----" }, "sslmode": { "type": "string", "description": "SSL mode for C(postgres) datasoure type." }, "time_interval": { "type": "string", "description": "Minimum group by interval for C(influxdb) or C(elasticsearch) datasources.\nfor example C(>10s)" }, "grafana_user": { "type": "string", "description": "Default: admin\n\nThe Grafana API user." }, "is_default": { "description": "Default: no\n\nMake this datasource the default one.", "$ref": "#/definitions/ansible_truth" }, "grafana_password": { "type": "string", "description": "Default: admin\n\nThe Grafana API password." }, "user": { "type": "string", "description": "The datasource login user for influxdb datasources." }, "password": { "type": "string", "description": "The datasource password" }, "max_concurrent_shard_requests": { "type": "string", "description": "Default: 256\n\nStarting with elasticsearch 5.6, you can specify the max concurrent shard per requests." }, "basic_auth_password": { "type": "string", "description": "The datasource basic auth password, when C(basic auth) is C(yes)." }, "name": { "type": "string", "description": "The name of the datasource." }, "database": { "type": "string", "description": "Name of the database for the datasource.\nThis options is required when the C(ds_type) is C(influxdb), C(elasticsearch) (index name), C(mysql) or C(postgres)." }, "time_field": { "type": "string", "description": "Default: timestamp\n\nName of the time field in elasticsearch ds.\nFor example C(@timestamp)" }, "interval": { "type": "string", "description": "For elasticsearch C(ds_type), this is the index pattern used." }, "org_id": { "type": "string", "description": "Default: 1\n\nGrafana Organisation ID in which the datasource should be created.\nNot used when C(grafana_api_key) is set, because the C(grafana_api_key) only belong to one organisation." }, "tsdb_resolution": { "type": "string", "description": "Default: second\n\nThe opentsdb time resolution." }, "grafana_url": { "type": "string", "description": "The Grafana URL." }, "grafana_api_key": { "type": "string", "description": "The Grafana API key.\nIf set, C(grafana_user) and C(grafana_password) will be ignored." }, "es_version": { "type": "string", "description": "Default: 5\n\nElasticsearch version (for C(ds_type = elasticsearch) only)\nVersion 56 is for elasticsearch 5.6+ where tou can specify the C(max_concurrent_shard_requests) option." }, "url": { "type": "string", "description": "The URL of the datasource." }, "validate_certs": { "description": "Default: yes\n\nWhether to validate the Grafana certificate.", "$ref": "#/definitions/ansible_truth" }, "ds_type": { "type": "string", "description": "The type of the datasource." } } }, "nios_host_record": { "allOf": [ { "allOf": [ { "not": { "required": [ "ipv6addrs", "ipv6" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ipv4addrs", "ipv4" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "view", "dns_view" ], "type": "object" } }, { "oneOf": [ { "required": [ "view" ], "type": "object" }, { "required": [ "dns_view" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds and/or removes instances of host record objects from Infoblox NIOS servers. This module manages NIOS C(record:host) objects using the Infoblox WAPI interface over REST.", "properties": { "comment": { "type": "string", "description": "Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance." }, "name": { "type": "string", "description": "Specifies the fully qualified hostname to add or remove from the system" }, "ttl": { "type": "string", "description": "Configures the TTL to be associated with this host record" }, "extattrs": { "type": "string", "description": "Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration." }, "ipv6addrs": { "type": "string", "description": "Configures the IPv6 addresses for the host record. This argument accepts a list of values (see options)" }, "state": { "type": "string", "description": "Default: present\n\nConfigures the intended state of the instance of the object on the NIOS server. When this value is set to C(present), the object is configured on the device and when this value is set to C(absent) the value is removed (if necessary) from the device." }, "dns_view": { "type": "string", "description": "Default: default\n\nSets the DNS view to associate this host record with. The DNS view must already be configured on the system" }, "ipv4": { "type": "string", "description": "Configures the IPv4 addresses for this host record. This argument accepts a list of values (see suboptions)" }, "ipv4addrs": { "type": "string", "description": "Configures the IPv4 addresses for this host record. This argument accepts a list of values (see suboptions)" }, "ipv6": { "type": "string", "description": "Configures the IPv6 addresses for the host record. This argument accepts a list of values (see options)" }, "view": { "type": "string", "description": "Default: default\n\nSets the DNS view to associate this host record with. The DNS view must already be configured on the system" } } }, "nxos_vpc": { "required": [ "domain", "auto_recovery", "peer_gw", "state" ], "type": "object", "description": "Manages global VPC configuration", "properties": { "domain": { "type": "string", "description": "VPC domain" }, "system_priority": { "type": "string", "description": "System priority device. Remember they must match between peers." }, "role_priority": { "type": "string", "description": "Role priority for device. Remember lower is better." }, "auto_recovery": { "type": "string", "description": "Enables/Disables auto recovery" }, "pkl_vrf": { "type": "string", "description": "Default: management\n\nVRF used for peer keepalive link" }, "delay_restore": { "type": "string", "description": "manages delay restore command and config value in seconds" }, "peer_gw": { "type": "string", "description": "Enables/Disables peer gateway" }, "state": { "type": "string", "description": "Manages desired state of the resource" }, "pkl_dest": { "type": "string", "description": "Destination (remote) IP address used for peer keepalive link" }, "pkl_src": { "type": "string", "description": "Source IP address used for peer keepalive link" } } }, "solaris_zone": { "required": [ "name", "state" ], "type": "object", "description": "Create, start, stop and delete Solaris zones. This module doesn't currently allow changing of options for a zone that's already been created.", "properties": { "install_options": { "type": "string", "description": "Default: empty string\n\nExtra options to the zoneadm(1M) install command. To automate Solaris 11 zone creation, use this to specify the profile XML file, e.g. install_options=\"-c sc_profile.xml\"" }, "timeout": { "type": "string", "description": "Default: 600\n\nTimeout, in seconds, for zone to boot." }, "name": { "type": "string", "description": "Zone name." }, "create_options": { "type": "string", "description": "Default: empty string\n\nExtra options to the zonecfg(1M) create command." }, "state": { "type": "string", "description": "Default: present\n\nC(present), configure and install the zone.\nC(installed), synonym for C(present).\nC(running), if the zone already exists, boot it, otherwise, configure and install the zone first, then boot it.\nC(started), synonym for C(running).\nC(stopped), shutdown a zone.\nC(absent), destroy the zone.\nC(configured), configure the ready so that it's to be attached.\nC(attached), attach a zone, but do not boot it.\nC(detached), shutdown and detach a zone" }, "root_password": { "type": "string", "description": "The password hash for the root account. If not specified, the zone's root account will not have a password." }, "sparse": { "type": "string", "description": "Whether to create a sparse (C(true)) or whole root (C(false)) zone." }, "path": { "type": "string", "description": "The path where the zone will be created. This is required when the zone is created, but not used otherwise." }, "config": { "type": "string", "description": "Default: empty string\n\nThe zonecfg configuration commands for this zone. See zonecfg(1M) for the valid options and syntax. Typically this is a list of options separated by semi-colons or new lines, e.g. \"set auto-boot=true;add net;set physical=bge0;set address=10.1.1.1;end\"" }, "attach_options": { "type": "string", "description": "Default: empty string\n\nExtra options to the zoneadm attach command. For example, this can be used to specify whether a minimum or full update of packages is required and if any packages need to be deleted. For valid values, see zoneadm(1M)" } } }, "win_domain_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "organizational_unit", "ou", "path" ], "type": "object" } } ] } ], "type": "object", "description": "Creates, modifies or removes groups in Active Directory.\nFor local groups, use the M(win_group) module instead.", "properties": { "category": { "type": "string", "description": "The category of the group, this is the value to assign to the LDAP C(groupType) attribute.\nIf a new group is created then C(security) will be used by default." }, "protect": { "description": "Will set the C(ProtectedFromAccidentalDeletion) flag based on this value.\nThis flag stops a user from deleting or moving a group to a different path.", "$ref": "#/definitions/ansible_truth" }, "display_name": { "type": "string", "description": "The value to assign to the LDAP C(displayName) attribute." }, "description": { "type": "string", "description": "The value to be assigned to the LDAP C(description) attribute." }, "domain_username": { "type": "string", "description": "The username to use when interacting with AD.\nIf this is not set then the user Ansible used to log in with will be used instead." }, "ignore_protection": { "description": "Default: no\n\nWill ignore the C(ProtectedFromAccidentalDeletion) flag when deleting or moving a group.\nThe module will fail if one of these actions need to occur and this value is set to no.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nIf C(state=present) this module will ensure the group is created and is configured accordingly.\nIf C(state=absent) this module will delete the group if it exists" }, "domain_password": { "type": "string", "description": "The password for C(username)." }, "organizational_unit": { "type": "string", "description": "The full LDAP path to create or move the group to.\nThis should be the path to the parent object to create or move the group to.\nSee examples for details of how this path is formed." }, "domain_server": { "type": "string", "description": "Specifies the Active Directory Domain Services instance to connect to.\nCan be in the form of an FQDN or NetBIOS name.\nIf not specified then the value is based on the domain of the computer running PowerShell." }, "managed_by": { "type": "string", "description": "The value to be assigned to the LDAP C(managedBy) attribute.\nThis value can be in the forms C(Distinguished Name), C(objectGUID), C(objectSid) or C(sAMAccountName), see examples for more details." }, "path": { "type": "string", "description": "The full LDAP path to create or move the group to.\nThis should be the path to the parent object to create or move the group to.\nSee examples for details of how this path is formed." }, "ou": { "type": "string", "description": "The full LDAP path to create or move the group to.\nThis should be the path to the parent object to create or move the group to.\nSee examples for details of how this path is formed." }, "attributes": { "type": "string", "description": "A dict of custom LDAP attributes to set on the group.\nThis can be used to set custom attributes that are not exposed as module parameters, e.g. C(mail).\nSee the examples on how to format this parameter." }, "scope": { "type": "string", "description": "The scope of the group.\nIf C(state=present) and the group doesn't exist then this must be set." }, "name": { "type": "string", "description": "The name of the group to create, modify or remove.\nThis value can be in the forms C(Distinguished Name), C(objectGUID), C(objectSid) or C(sAMAccountName), see examples for more details." } } }, "vmware_vm_vss_dvs_migrate": { "required": [ "vm_name", "dvportgroup_name" ], "type": "object", "description": "Migrates a virtual machine from a standard vswitch to distributed", "properties": { "vm_name": { "type": "string", "description": "Name of the virtual machine to migrate to a dvSwitch" }, "dvportgroup_name": { "type": "string", "description": "Name of the portgroup to migrate to the virtual machine to" } } }, "aci_vlan_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "pool_allocation_mode", "allocation_mode", "mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool", "name", "pool_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage VLAN pools on Cisco ACI fabrics.", "properties": { "pool_name": { "type": "string", "description": "The name of the pool." }, "pool_allocation_mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "description": { "type": "string", "description": "Description for the C(pool)." }, "descr": { "type": "string", "description": "Description for the C(pool)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "allocation_mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "pool": { "type": "string", "description": "The name of the pool." }, "name": { "type": "string", "description": "The name of the pool." } } }, "cnos_save": { "type": "object", "description": "This module allows you to copy the running configuration of a switch over its startup configuration. It is recommended to use this module shortly after any major configuration changes so they persist after a switch restart. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_save.html)", "properties": {} }, "ucs_vnic_template": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "peer_redundancy_template", "peer_redundancy_templ" ], "type": "object" } } ] } ], "type": "object", "description": "Configures vNIC templates on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "redundancy_type": { "type": "string", "description": "Default: none\n\nThe Redundancy Type used for vNIC redundancy pairs during fabric failover.\nThis can be one of the following:\nprimary — Creates configurations that can be shared with the Secondary template.\nsecondary — All shared configurations are inherited from the Primary template.\nnone - Legacy vNIC template behavior. Select this option if you do not want to use redundancy." }, "description": { "type": "string", "description": "A user-defined description of the vNIC template.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "stats_policy": { "type": "string", "description": "Default: default\n\nThe statistics collection policy that vNICs created from this vNIC template should use." }, "network_control_policy": { "type": "string", "description": "The network control policy that vNICs created from this vNIC template should use." }, "peer_redundancy_templ": { "type": "string", "description": "The Peer Redundancy Template.\nThe name of the vNIC template sharing a configuration with this template.\nIf the redundancy_type is primary, the name of the secondary template should be provided.\nIf the redundancy_type is secondary, the name of the primary template should be provided.\nSecondary templates can only configure non-shared properties (name, description, and mac_pool)." }, "vlans_list": { "type": "array", "description": "List of VLANs used by the vNIC template.\nEach list element has the following suboptions:\n= name\n The name of the VLAN (required).\n- native\n Designates the VLAN as a native VLAN. Only one VLAN in the list can be a native VLAN.\n [choices: 'no', 'yes']\n [Default: 'no']" }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "peer_redundancy_template": { "type": "string", "description": "The Peer Redundancy Template.\nThe name of the vNIC template sharing a configuration with this template.\nIf the redundancy_type is primary, the name of the secondary template should be provided.\nIf the redundancy_type is secondary, the name of the primary template should be provided.\nSecondary templates can only configure non-shared properties (name, description, and mac_pool)." }, "name": { "type": "string", "description": "The name of the vNIC template.\nThis name can be between 1 and 16 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the template is created." }, "template_type": { "type": "string", "description": "Default: initial-template\n\nThe Template Type field.\nThis can be one of the following:\ninitial-template — vNICs created from this template are not updated if the template changes.\nupdating-template - vNICs created from this template are updated if the template changes." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify vNIC templates are present and will create if needed.\nIf C(absent), will verify vNIC templates are absent and will delete if needed." }, "fabric": { "type": "string", "description": "Default: A\n\nThe Fabric ID field specifying the fabric interconnect associated with vNICs created from this template.\nIf you want fabric failover enabled on vNICs created from this template, use of of the following:\"\nA-B to use Fabric A by default with failover enabled.\nB-A to use Fabric B by default with failover enabled.\nDo not enable vNIC fabric failover under the following circumstances:\n- If the Cisco UCS domain is running in Ethernet switch mode. vNIC fabric failover is not supported in that mode.\n- If you plan to associate one or more vNICs created from this template to a server with an adapter that does not support fabric failover." }, "mac_pool": { "type": "string", "description": "The MAC address pool that vNICs created from this vNIC template should use." }, "descr": { "type": "string", "description": "A user-defined description of the vNIC template.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "pin_group": { "type": "string", "description": "The LAN pin group that vNICs created from this vNIC template should use." }, "cdn_source": { "type": "string", "description": "Default: vnic-name\n\nCDN Source field.\nThis can be one of the following options:\nvnic-name - Uses the vNIC template name of the vNIC instance as the CDN name. This is the default option.\nuser-defined - Uses a user-defined CDN name for the vNIC template. If this option is chosen, cdn_name must also be provided." }, "qos_policy": { "type": "string", "description": "The quality of service (QoS) policy that vNICs created from this vNIC template should use." }, "mtu": { "type": "string", "description": "Default: 1500\n\nThe MTU field.\nThe maximum transmission unit, or packet size, that vNICs created from this vNIC template should use.\nEnter a string between '1500' and '9000'.\nIf the vNIC template has an associated QoS policy, the MTU specified here must be equal to or less than the MTU specified in the QoS system class." }, "target": { "type": "string", "description": "Default: adapter\n\nThe possible target for vNICs created from this template.\nThe target determines whether or not Cisco UCS Manager automatically creates a VM-FEX port profile with the appropriate settings for the vNIC template.\nThis can be one of the following:\nadapter — The vNICs apply to all adapters. No VM-FEX port profile is created if you choose this option.\nvm - The vNICs apply to all virtual machines. A VM-FEX port profile is created if you choose this option." }, "cdn_name": { "type": "string", "description": "CDN Name used when cdn_source is set to user-defined." } } }, "azure_rm_resourcegroup_facts": { "type": "object", "description": "Get facts for a specific resource group or all resource groups.", "properties": { "name": { "type": "string", "description": "Limit results to a specific resource group." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "bigip_remote_syslog": { "required": [ "remote_host" ], "type": "object", "description": "Manipulate remote syslog settings on a BIG-IP.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhen C(present), guarantees that the remote syslog exists with the provided attributes.\nWhen C(absent), removes the remote syslog from the system." }, "local_ip": { "type": "string", "description": "Specifies the local IP address of the system that is logging. To provide no local IP, specify the value C(none). When creating a remote syslog, if this parameter is not specified, the default value C(none) is used." }, "remote_host": { "type": "string", "description": "Specifies the IP address, or hostname, for the remote system to which the system sends log messages." }, "remote_port": { "type": "string", "description": "Specifies the port that the system uses to send messages to the remote logging server. When creating a remote syslog, if this parameter is not specified, the default value C(514) is used." } } }, "netscaler": { "required": [ "name", "nsc_host", "user", "password" ], "type": "object", "description": "Manages Citrix NetScaler server and service entities.", "properties": { "name": { "type": "string", "description": "Default: hostname\n\nName of the entity." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated.\nThis should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "nsc_protocol": { "type": "string", "description": "Default: https\n\nProtocol used to access netscaler." }, "nsc_host": { "type": "string", "description": "Hostname or ip of your netscaler." }, "user": { "type": "string", "description": "Username." }, "action": { "type": "string", "description": "Default: disable\n\nThe action you want to perform on the entity." }, "password": { "type": "string", "description": "Password." }, "type": { "type": "string", "description": "Default: server\n\nType of the entity." } } }, "azure_rm_dnszone": { "required": [ "name", "resource_group" ], "type": "object", "description": "Creates and deletes Azure DNS zones.", "properties": { "state": { "type": "string", "description": "Default: present\n\nAssert the state of the zone. Use 'present' to create or update and 'absent' to delete." }, "name": { "type": "string", "description": "name of the DNS Zone." }, "resource_group": { "type": "string", "description": "name of resource group." } } }, "junos_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Network devices running the Junos operating system provide a command driven interface both over CLI and RPC. This module provides an interface to execute commands using these functions and return the results to the Ansible playbook. In addition, this module can specify a set of conditionals to be evaluated against the returned output, only returning control to the playbook once the entire set of conditionals has been met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(waitfor) conditionals." }, "commands": { "type": "string", "description": "The C(commands) to send to the remote device over the Netconf transport. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of I(retries) has been exceeded." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditional, the interval indicates how to long to wait before trying the command again." }, "rpcs": { "type": "string", "description": "The C(rpcs) argument accepts a list of RPCs to be executed over a netconf session and the results from the RPC execution is return to the playbook via the modules results dictionary." }, "format": { "type": "string", "description": "Default: xml\n\nConfigures the encoding scheme to use when serializing output from the device. This handles how to properly understand the output and apply the conditionals path to the result set." }, "waitfor": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "ce_netstream_global": { "required": [ "interface" ], "type": "object", "description": "Manages global parameters of NetStream on HUAWEI CloudEngine switches.", "properties": { "index_switch": { "type": "string", "description": "Default: 16\n\nSpecifies the netstream index-switch." }, "statistics_direction": { "type": "string", "description": "Specifies the netstream statistic direction." }, "statistics_record": { "type": "string", "description": "Specifies the flexible netstream statistic record, length is 1 - 32." }, "sampler_interval": { "type": "string", "description": "Specifies the netstream sampler interval, length is 1 - 65535." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "sampler_direction": { "type": "string", "description": "Specifies the netstream sampler direction." }, "interface": { "type": "string", "description": "Netstream global interface." }, "type": { "type": "string", "description": "Default: ip\n\nSpecifies the type of netstream global." } } }, "apache2_module": { "required": [ "name" ], "type": "object", "description": "Enables or disables a specified module of the Apache2 webserver.", "properties": { "state": { "type": "string", "description": "Default: present\n\nindicate the desired state of the resource" }, "force": { "type": "string", "description": "force disabling of default modules and override Debian warnings" }, "name": { "type": "string", "description": "name of the module to enable/disable" } } }, "lxc_container": { "required": [ "name" ], "type": "object", "description": "Management of LXC containers", "properties": { "zfs_root": { "type": "string", "description": "Create zfs under given zfsroot." }, "clone_name": { "type": "string", "description": "Name of the new cloned server. This is only used when state is clone." }, "container_config": { "type": "array", "description": "list of 'key=value' options to use when configuring a container." }, "fs_type": { "type": "string", "description": "Default: ext4\n\nCreate fstype TYPE." }, "archive": { "type": "string", "description": "Create an archive of a container. This will create a tarball of the running container." }, "container_log": { "type": "string", "description": "Enable a container log for host actions to the container." }, "state": { "type": "string", "description": "Default: started\n\nDefine the state of a container. If you clone a container using `clone_name` the newly cloned container created in a stopped state. The running container will be stopped while the clone operation is happening and upon completion of the clone the original container state will be restored." }, "template": { "type": "string", "description": "Default: ubuntu\n\nName of the template to use within an LXC create." }, "config": { "type": "string", "description": "Path to the LXC configuration file." }, "archive_path": { "type": "string", "description": "Path the save the archived container. If the path does not exist the archive method will attempt to create it." }, "container_log_level": { "type": "string", "description": "Default: INFO\n\nSet the log level for a container where *container_log* was set." }, "template_options": { "type": "string", "description": "Template options when building the container." }, "container_command": { "type": "string", "description": "Run a command within a container." }, "lxc_path": { "type": "string", "description": "Place container under PATH" }, "archive_compression": { "type": "string", "description": "Default: gzip\n\nType of compression to use when creating an archive of a running container." }, "thinpool": { "type": "string", "description": "Use LVM thin pool called TP." }, "clone_snapshot": { "type": "string", "description": "Create a snapshot a container when cloning. This is not supported by all container storage backends. Enabling this may fail if the backing store does not support snapshots." }, "name": { "type": "string", "description": "Name of a container." }, "lv_name": { "type": "string", "description": "Default: $CONTAINER_NAME\n\nName of the logical volume, defaults to the container name." }, "fs_size": { "type": "string", "description": "Default: 5G\n\nFile system Size." }, "backing_store": { "type": "string", "description": "Default: dir\n\nBackend storage type for the container." }, "vg_name": { "type": "string", "description": "Default: lxc\n\nIf Backend store is lvm, specify the name of the volume group." }, "directory": { "type": "string", "description": "Place rootfs directory under DIR." } } }, "eos_eapi": { "allOf": [ { "allOf": [ { "not": { "required": [ "http", "enable_http" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "https", "enable_https" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "local_http", "enable_local_http" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "socket", "enable_socket" ], "type": "object" } } ] } ], "type": "object", "description": "Use to enable or disable eAPI access, and set the port and state of http, https, local_http and unix-socket servers.\nWhen enabling eAPI access the default is to enable HTTP on port 80, enable HTTPS on port 443, disable local HTTP, and disable Unix socket server. Use the options listed below to override the default configuration.\nRequires EOS v4.12 or greater.", "properties": { "local_http_port": { "type": "string", "description": "Default: 8080\n\nConfigures the HTTP port that will listen for connections when the HTTP transport protocol is enabled. This argument accepts integer values in the valid range of 1 to 65535." }, "http_port": { "type": "string", "description": "Default: 80\n\nConfigures the HTTP port that will listen for connections when the HTTP transport protocol is enabled. This argument accepts integer values in the valid range of 1 to 65535." }, "http": { "type": "string", "description": "The C(http) argument controls the operating state of the HTTP transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTP protocol is enabled and when the value is set to False, the HTTP protocol is disabled. By default, when eAPI is first configured, the HTTP protocol is disabled." }, "https_port": { "type": "string", "description": "Default: 443\n\nConfigures the HTTP port that will listen for connections when the HTTP transport protocol is enabled. This argument accepts integer values in the valid range of 1 to 65535." }, "enable_socket": { "type": "string", "description": "The C(socket) argument controls the operating state of the UNIX Domain Socket used to receive eAPI requests. When the value of this argument is set to True, the UDS will listen for eAPI requests. When the value is set to False, the UDS will not be available to handle requests. By default when eAPI is first configured, the UDS is disabled." }, "enable_https": { "type": "string", "description": "Default: True\n\nThe C(https) argument controls the operating state of the HTTPS transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTPS protocol is enabled and when the value is set to False, the HTTPS protocol is disabled. By default, when eAPI is first configured, the HTTPS protocol is enabled." }, "state": { "type": "string", "description": "Default: started\n\nThe C(state) argument controls the operational state of eAPI on the remote device. When this argument is set to C(started), eAPI is enabled to receive requests and when this argument is C(stopped), eAPI is disabled and will not receive requests." }, "socket": { "type": "string", "description": "The C(socket) argument controls the operating state of the UNIX Domain Socket used to receive eAPI requests. When the value of this argument is set to True, the UDS will listen for eAPI requests. When the value is set to False, the UDS will not be available to handle requests. By default when eAPI is first configured, the UDS is disabled." }, "vrf": { "type": "string", "description": "Default: default\n\nThe C(vrf) argument will configure eAPI to listen for connections in the specified VRF. By default, eAPI transports will listen for connections in the global table. This value requires the VRF to already be created otherwise the task will fail." }, "https": { "type": "string", "description": "Default: True\n\nThe C(https) argument controls the operating state of the HTTPS transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTPS protocol is enabled and when the value is set to False, the HTTPS protocol is disabled. By default, when eAPI is first configured, the HTTPS protocol is enabled." }, "enable_http": { "type": "string", "description": "The C(http) argument controls the operating state of the HTTP transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTP protocol is enabled and when the value is set to False, the HTTP protocol is disabled. By default, when eAPI is first configured, the HTTP protocol is disabled." }, "config": { "type": "string", "description": "Default: nul\n\nThe module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "local_http": { "type": "string", "description": "The C(local_http) argument controls the operating state of the local HTTP transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTP protocol is enabled and restricted to connections from localhost only. When the value is set to False, the HTTP local protocol is disabled.\nNote is value is independent of the C(http) argument" }, "enable_local_http": { "type": "string", "description": "The C(local_http) argument controls the operating state of the local HTTP transport protocol when eAPI is present in the running-config. When the value is set to True, the HTTP protocol is enabled and restricted to connections from localhost only. When the value is set to False, the HTTP local protocol is disabled.\nNote is value is independent of the C(http) argument" } } }, "win_file": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Creates (empty) files, updates file modification stamps of existing files, and can create or remove directories.\nUnlike M(file), does not modify ownership, permissions or manipulate links.\nFor non-Windows targets, use the M(file) module instead.", "properties": { "dest": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" }, "path": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" }, "state": { "type": "string", "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(absent), directories will be recursively deleted, and files will be removed. If C(touch), 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 C(touch) works from the command line)." }, "name": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" } } }, "rax": { "allOf": [ { "allOf": [ { "not": { "required": [ "key_name", "keypair" ], "type": "object" } } ] } ], "type": "object", "description": "creates / deletes a Rackspace Public Cloud instance and optionally waits for it to be 'running'.", "properties": { "boot_volume_terminate": { "type": "string", "description": "Whether the I(boot_volume) or newly created volume from I(image) will be terminated when the server is terminated" }, "image": { "type": "string", "description": "image to use for the instance. Can be an C(id), C(human_id) or C(name). With I(boot_from_volume), a Cloud Block Storage volume will be created with this image" }, "user_data": { "type": "string", "description": "Data to be uploaded to the servers config drive. This option implies I(config_drive). Can be a file path or a string" }, "keypair": { "type": "string", "description": "key pair to use on the instance" }, "meta": { "type": "string", "description": "A hash of metadata to associate with the instance" }, "flavor": { "type": "string", "description": "flavor to use for the instance" }, "networks": { "type": "string", "description": "Default: ['public', 'private']\n\nThe network to attach to the instances. If specified, you must include ALL networks including the public and private interfaces. Can be C(id) or C(label)." }, "boot_from_volume": { "type": "string", "description": "Default: no\n\nWhether or not to boot the instance from a Cloud Block Storage volume. If C(yes) and I(image) is specified a new volume will be created at boot time. I(boot_volume_size) is required with I(image) to create a new volume at boot time." }, "group": { "type": "string", "description": "host group to assign to server, is also used for idempotent operations to ensure a specific number of instances" }, "exact_count": { "type": "string", "description": "Explicitly ensure an exact count of instances, used with state=active/present. If specified as C(yes) and I(count) is less than the servers matched, servers will be deleted to match the count. If the number of matched servers is fewer than specified in I(count) additional servers will be added." }, "disk_config": { "type": "string", "description": "Default: auto\n\nDisk partitioning strategy" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "key_name": { "type": "string", "description": "key pair to use on the instance" }, "boot_volume_size": { "type": "string", "description": "Default: 100\n\nSize of the volume to create in Gigabytes. This is only required with I(image) and I(boot_from_volume)." }, "config_drive": { "type": "string", "description": "Attach read-only configuration drive to server as label config-2" }, "files": { "type": "string", "description": "Files to insert into the instance. remotefilename:localcontent" }, "auto_increment": { "type": "string", "description": "Default: True\n\nWhether or not to increment a single number with the name of the created servers. Only applicable when used with the I(group) attribute or meta key." }, "count_offset": { "type": "string", "description": "Default: 1\n\nnumber count to start at" }, "boot_volume": { "type": "string", "description": "Cloud Block Storage ID or Name to use as the boot volume of the instance" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "instance_ids": { "type": "array", "description": "list of instance ids, currently only used when state='absent' to remove instances" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the instance to be in state 'running' before returning" }, "count": { "type": "string", "description": "Default: 1\n\nnumber of instances to launch" }, "name": { "type": "string", "description": "Name to give the instance" }, "extra_client_args": { "type": "string", "description": "A hash of key/value pairs to be used when creating the cloudservers client. This is considered an advanced option, use it wisely and with caution." }, "extra_create_args": { "type": "string", "description": "A hash of key/value pairs to be used when creating a new server. This is considered an advanced option, use it wisely and with caution." } } }, "cs_ip_address": { "type": "object", "description": "Acquires and associates a public IP to an account or project. Due to API limitations this is not an idempotent call, so be sure to only conditionally call this when C(state=present)", "properties": { "domain": { "type": "string", "description": "Domain the IP address is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "network": { "type": "string", "description": "Network the IP address is related to." }, "zone": { "type": "string", "description": "Name of the zone in which the IP address is in.\nIf not set, default zone is used." }, "account": { "type": "string", "description": "Account the IP address is related to." }, "project": { "type": "string", "description": "Name of the project the IP address is related to." }, "vpc": { "type": "string", "description": "VPC the IP address is related to." }, "ip_address": { "type": "string", "description": "Public IP address.\nRequired if C(state=absent)" } } }, "ce_vrf_interface": { "required": [ "vrf", "vpn_interface" ], "type": "object", "description": "Manages interface specific VPN configuration of HUAWEI CloudEngine switches.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "vrf": { "type": "string", "description": "VPN instance, the length of vrf name is 1 ~ 31, i.e. \"test\", but can not be C(_public_)." }, "vpn_interface": { "type": "string", "description": "An interface that can binding VPN instance, i.e. 40GE1/0/22, Vlanif10. Must be fully qualified interface name. Interface types, such as 10GE, 40GE, 100GE, LoopBack, MEth, Tunnel, Vlanif...." } } }, "ec2_vpc_igw_facts": { "type": "object", "description": "Gather facts about internet gateways in AWS.", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInternetGateways.html) for possible filters." }, "internet_gateway_ids": { "type": "string", "description": "Default: None\n\nGet details of specific Internet Gateway ID. Provide this value as a list." } } }, "zypper_repository": { "allOf": [ { "allOf": [ { "not": { "required": [ "autorefresh", "refresh" ], "type": "object" } } ] } ], "type": "object", "description": "Add or remove Zypper repositories on SUSE and openSUSE", "properties": { "priority": { "type": "string", "description": "Set priority of repository. Packages will always be installed from the repository with the smallest priority number.\nNeeds zypper version >= 1.12.25." }, "name": { "type": "string", "description": "Default: none\n\nA name for the repository. Not required when adding repofiles." }, "auto_import_keys": { "type": "string", "description": "Default: no\n\nAutomatically import the gpg signing key of the new or changed repository.\nHas an effect only if state is I(present). Has no effect on existing (unchanged) repositories or in combination with I(absent).\nImplies runrefresh.\nOnly works with C(.repo) files if `name` is given explicitly." }, "description": { "type": "string", "description": "Default: none\n\nA description of the repository" }, "enabled": { "type": "string", "description": "Default: yes\n\nSet repository to enabled (or disabled)." }, "disable_gpg_check": { "type": "string", "description": "Default: no\n\nWhether to disable GPG signature checking of all packages. Has an effect only if state is I(present).\nNeeds zypper version >= 1.6.2." }, "refresh": { "type": "string", "description": "Default: yes\n\nEnable autorefresh of the repository." }, "repo": { "type": "string", "description": "Default: none\n\nURI of the repository or .repo file. Required when state=present." }, "state": { "type": "string", "description": "Default: present\n\nA source string state." }, "overwrite_multiple": { "type": "string", "description": "Default: no\n\nOverwrite multiple repository entries, if repositories with both name and URL already exist." }, "runrefresh": { "type": "string", "description": "Default: no\n\nRefresh the package list of the given repository.\nCan be used with repo=* to refresh all repositories." }, "autorefresh": { "type": "string", "description": "Default: yes\n\nEnable autorefresh of the repository." } } }, "aos_login": { "required": [ "server" ], "type": "object", "description": "Obtain the AOS server session token by providing the required username and password credentials. Upon successful authentication, this module will return the session-token that is required by all subsequent AOS module usage. On success the module will automatically populate ansible facts with the variable I(aos_session) This module is not idempotent and do not support check mode.", "properties": { "passwd": { "type": "string", "description": "Default: admin\n\nPassword to use when connecting to the AOS server." }, "port": { "type": "string", "description": "Default: 443\n\nPort number to use when connecting to the AOS server." }, "user": { "type": "string", "description": "Default: admin\n\nLogin username to use when connecting to the AOS server." }, "server": { "type": "string", "description": "Address of the AOS Server on which you want to open a connection." } } }, "aci_tenant_span_src_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "src_group", "name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SPAN source groups on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "The description for Span source group." }, "descr": { "type": "string", "description": "The description for Span source group." }, "tenant_name": { "type": "string", "description": "The name of the Tenant." }, "src_group": { "type": "string", "description": "The name of the Span source group." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "admin_state": { "type": "string", "description": "Default: enabled\n\nEnable or disable the span sources." }, "dst_group": { "type": "string", "description": "The Span destination group to associate with the source group." }, "tenant": { "type": "string", "description": "The name of the Tenant." }, "name": { "type": "string", "description": "The name of the Span source group." } } }, "ce_info_center_log": { "type": "object", "description": "Setting the Timestamp Format of Logs. Configuring the Device to Output Logs to the Log Buffer.", "properties": { "log_level": { "type": "string", "description": "Specifies a log severity." }, "log_enable": { "type": "string", "description": "Default: no_use\n\nIndicates whether log filtering is enabled." }, "log_buff_size": { "type": "string", "description": "Specifies the maximum number of logs in the log buffer. The value is an integer that ranges from 0 to 10240. If logbuffer-size is 0, logs are not displayed." }, "channel_id": { "type": "string", "description": "Specifies a channel ID. The value is an integer ranging from 0 to 9." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "log_buff_enable": { "type": "string", "description": "Default: no_use\n\nEnables the Switch to send logs to the log buffer." }, "log_time_stamp": { "type": "string", "description": "Sets the timestamp format of logs." }, "module_name": { "type": "string", "description": "Specifies the name of a module. The value is a module name in registration logs." } } }, "netscaler_ssl_certkey": { "type": "object", "description": "Manage ssl cerificate keys.", "properties": { "certkey": { "type": "string", "description": "Name for the certificate and private-key pair. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Cannot be changed after the certificate-key pair is created.\nThe following requirement applies only to the NetScaler CLI:\nIf the name includes one or more spaces, enclose the name in double or single quotation marks (for example, \"my cert\" or 'my cert').\nMinimum length = 1" }, "passplain": { "type": "string", "description": "Pass phrase used to encrypt the private-key. Required when adding an encrypted private-key in PEM format.\nMinimum length = 1" }, "inform": { "type": "string", "description": "Input format of the certificate and the private-key files. The three formats supported by the appliance are:\nPEM - Privacy Enhanced Mail\nDER - Distinguished Encoding Rule\nPFX - Personal Information Exchange." }, "cert": { "type": "string", "description": "Name of and, optionally, path to the X509 certificate file that is used to form the certificate-key pair. The certificate file should be present on the appliance's hard-disk drive or solid-state drive. Storing a certificate in any location other than the default might cause inconsistency in a high availability setup. /nsconfig/ssl/ is the default path.\nMinimum length = 1" }, "key": { "type": "string", "description": "Name of and, optionally, path to the private-key file that is used to form the certificate-key pair. The certificate file should be present on the appliance's hard-disk drive or solid-state drive. Storing a certificate in any location other than the default might cause inconsistency in a high availability setup. /nsconfig/ssl/ is the default path.\nMinimum length = 1" }, "notificationperiod": { "type": "string", "description": "Time, in number of days, before certificate expiration, at which to generate an alert that the certificate is about to expire.\nMinimum value = C(10)\nMaximum value = C(100)" }, "expirymonitor": { "type": "string", "description": "Issue an alert when the certificate is about to expire." }, "password": { "type": "string", "description": "Passphrase that was used to encrypt the private-key. Use this option to load encrypted private-keys in PEM format." } } }, "aci_interface_policy_port_security": { "allOf": [ { "allOf": [ { "not": { "required": [ "port_security", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "port_security" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage port security on Cisco ACI fabrics.", "properties": { "max_end_points": { "type": "string", "description": "Maximum number of end points (range 0-12000).\nThe APIC defaults new port-security policies to C(0)." }, "name": { "type": "string", "description": "The name of the port security." }, "descr": { "type": "string", "description": "The description for the contract." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "port_security": { "type": "string", "description": "The name of the port security." }, "description": { "type": "string", "description": "The description for the contract." } } }, "win_wakeonlan": { "required": [ "mac" ], "type": "object", "description": "The C(win_wakeonlan) module sends magic Wake-on-LAN (WoL) broadcast packets.", "properties": { "broadcast": { "type": "string", "description": "Default: 255.255.255.255\n\nNetwork broadcast address to use for broadcasting magic Wake-on-LAN packet." }, "mac": { "type": "string", "description": "MAC address to send Wake-on-LAN broadcast packet for." }, "port": { "type": "string", "description": "Default: 7\n\nUDP port to use for magic Wake-on-LAN packet." } } }, "ec2_lc": { "required": [ "name", "instance_type", "state" ], "type": "object", "description": "Can create or delete AWS Autoscaling Configurations\nWorks with the ec2_asg module to manage Autoscaling Groups", "properties": { "ebs_optimized": { "type": "string", "description": "Specifies whether the instance is optimized for EBS I/O (true) or not (false)." }, "spot_price": { "type": "string", "description": "The spot price you are bidding. Only applies for an autoscaling group with spot instances." }, "name": { "type": "string", "description": "Unique name for configuration" }, "instance_profile_name": { "type": "string", "description": "The name or the Amazon Resource Name (ARN) of the instance profile associated with the IAM role for the instances." }, "instance_type": { "type": "string", "description": "instance type to use for the instance" }, "kernel_id": { "type": "string", "description": "Kernel id for the EC2 instance" }, "key_name": { "type": "string", "description": "The SSH key name to be used for access to managed instances" }, "ramdisk_id": { "type": "string", "description": "A RAM disk id for the instances." }, "user_data": { "type": "string", "description": "opaque blob of data which is made available to the ec2 instance" }, "image_id": { "type": "string", "description": "The AMI unique identifier to be used for the group" }, "state": { "type": "string", "description": "register or deregister the instance" }, "volumes": { "type": "string", "description": "a list of volume dicts, each containing device name and optionally ephemeral id or snapshot id. Size and type (and number of iops for io device type) must be specified for a new volume or a root volume, and may be passed for a snapshot volume. For any volume, a volume size less than 1 will be interpreted as a request not to create the volume." }, "assign_public_ip": { "type": "string", "description": "Used for Auto Scaling groups that launch instances into an Amazon Virtual Private Cloud. Specifies whether to assign a public IP address to each instance launched in a Amazon VPC." }, "instance_monitoring": { "type": "string", "description": "whether instances in group are launched with detailed monitoring." }, "classic_link_vpc_id": { "type": "string", "description": "Id of ClassicLink enabled VPC" }, "security_groups": { "type": "string", "description": "A list of security groups to apply to the instances. For VPC instances, specify security group IDs. For EC2-Classic, specify either security group names or IDs." }, "classic_link_vpc_security_groups": { "type": "string", "description": "A list of security group id's with which to associate the ClassicLink VPC instances." } } }, "rax_cdb": { "allOf": [ { "allOf": [ { "not": { "required": [ "cdb_type", "type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "cdb_version", "version" ], "type": "object" } } ] } ], "type": "object", "description": "creates / deletes or resize a Rackspace Cloud Databases instance and optionally waits for it to be 'running'. The name option needs to be unique since it's used to identify the instance.", "properties": { "cdb_type": { "type": "string", "description": "Default: MySQL\n\ntype of instance (i.e. MySQL, MariaDB, Percona)" }, "name": { "type": "string", "description": "Name of the databases server instance" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "cdb_version": { "type": "string", "description": "version of database (MySQL supports 5.1 and 5.6, MariaDB supports 10, Percona supports 5.6)" }, "volume": { "type": "string", "description": "Default: 2\n\nVolume size of the database 1-150GB" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "version": { "type": "string", "description": "version of database (MySQL supports 5.1 and 5.6, MariaDB supports 10, Percona supports 5.6)" }, "flavor": { "type": "string", "description": "Default: 1\n\nflavor to use for the instance 1 to 6 (i.e. 512MB to 16GB)" }, "type": { "type": "string", "description": "Default: MySQL\n\ntype of instance (i.e. MySQL, MariaDB, Percona)" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the instance to be in state 'running' before returning" } } }, "vyos_system": { "allOf": [ { "allOf": [ { "not": { "required": [ "name_servers", "name_server" ], "type": "object" } } ] } ], "type": "object", "description": "Runs one or more commands on remote devices running VyOS. This module can also be introspected to validate key parameters before returning successfully.", "properties": { "name_server": { "type": "string", "description": "A list of name servers to use with the device. Mutually exclusive with I(domain_search)" }, "domain_search": { "type": "string", "description": "A list of domain names to search. Mutually exclusive with I(name_server)" }, "domain_name": { "type": "string", "description": "The new domain name to apply to the device." }, "state": { "type": "string", "description": "Default: present\n\nWhether to apply (C(present)) or remove (C(absent)) the settings." }, "host_name": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "name_servers": { "type": "string", "description": "A list of name servers to use with the device. Mutually exclusive with I(domain_search)" } } }, "proxysql_replication_hostgroups": { "required": [ "reader_hostgroup", "writer_hostgroup" ], "type": "object", "description": "Each row in mysql_replication_hostgroups represent a pair of writer_hostgroup and reader_hostgroup. ProxySQL will monitor the value of read_only for all the servers in specified hostgroups, and based on the value of read_only will assign the server to the writer or reader hostgroups.", "properties": { "comment": { "type": "string", "description": "Text field that can be used for any purposed defined by the user." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) - adds the replication hostgroup, when C(absent) - removes the replication hostgroup." }, "reader_hostgroup": { "type": "string", "description": "Id of the reader hostgroup." }, "writer_hostgroup": { "type": "string", "description": "Id of the writer hostgroup." } } }, "ce_command": { "required": [ "commands" ], "type": "object", "description": "Sends an arbitrary command to an HUAWEI CloudEngine node and returns the results read from the device. The ce_command module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditionals." }, "commands": { "type": "string", "description": "The commands to send to the remote HUAWEI CloudEngine device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of I(retries) has been exceeded." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditional, the interval indicates how to long to wait before trying the command again." } } }, "aws_direct_connect_gateway": { "required": [ "amazon_asn" ], "type": "object", "description": "Creates AWS Direct Connect Gateway\nDeletes AWS Direct Connect Gateway\nAttaches Virtual Gateways to Direct Connect Gateway\nDetaches Virtual Gateways to Direct Connect Gateway", "properties": { "virtual_gateway_id": { "type": "string", "description": "vpn gateway id of an existing virtual gateway" }, "state": { "type": "string", "description": "Default: present\n\npresent to ensure resource is created.\nabsent to remove resource" }, "direct_connect_gateway_id": { "type": "string", "description": "id of an existing direct connect gateway" }, "name": { "type": "string", "description": "name of the dxgw to be created or deleted" }, "amazon_asn": { "type": "string", "description": "amazon side asn" } } }, "cs_user": { "required": [ "username" ], "type": "object", "description": "Create, update, disable, lock, enable and remove users.", "properties": { "username": { "type": "string", "description": "Username of the user." }, "account": { "type": "string", "description": "Account the user will be created under.\nRequired on C(state=present)." }, "last_name": { "type": "string", "description": "Last name of the user.\nRequired on C(state=present)." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "first_name": { "type": "string", "description": "First name of the user.\nRequired on C(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nState of the user.\nC(unlocked) is an alias for C(enabled)." }, "domain": { "type": "string", "description": "Default: ROOT\n\nDomain the user is related to." }, "timezone": { "type": "string", "description": "Timezone of the user." }, "password": { "type": "string", "description": "Password of the user to be created.\nRequired on C(state=present).\nOnly considered on creation and will not be updated if user exists." }, "email": { "type": "string", "description": "Email of the user.\nRequired on C(state=present)." } } }, "grove": { "required": [ "message", "channel_token" ], "type": "object", "description": "The M(grove) module sends a message for a service to a Grove.io channel.", "properties": { "service": { "type": "string", "description": "Default: ansible\n\nName of the service (displayed as the \"user\" in the message)" }, "url": { "type": "string", "description": "Service URL for the web client" }, "icon_url": { "type": "string", "description": "Icon for the service" }, "channel_token": { "type": "string", "description": "Token of the channel to post to." }, "message": { "type": "string", "description": "Message content" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "avi_trafficcloneprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure TrafficCloneProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the traffic clone profile.\nField introduced in 17.1.1." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud.\nField introduced in 17.1.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "Name for the traffic clone profile.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "preserve_client_ip": { "description": "Specifies if client ip needs to be preserved to clone destination.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "clone_servers": { "type": "string", "description": "Field introduced in 17.1.1." } } }, "ovirt_tags_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV tags.", "properties": { "host": { "type": "string", "description": "Name of the host, which tags should be listed." }, "name": { "type": "string", "description": "Name of the tag which should be listed." }, "vm": { "type": "string", "description": "Name of the VM, which tags should be listed." } } }, "azure_rm_virtualmachineimage_facts": { "required": [ "location" ], "type": "object", "description": "Get facts for virtual machine images.", "properties": { "sku": { "type": "string", "description": "Image offering SKU. Combine with offer to see a list of available versions." }, "publisher": { "type": "string", "description": "Name of an image publisher. List image offerings associated with a particular publisher." }, "name": { "type": "string", "description": "Only show results for a specific security group." }, "offer": { "type": "string", "description": "Name of an image offering. Combine with sku to see a list of available image versions." }, "version": { "type": "string", "description": "Specific version number of an image." }, "location": { "type": "string", "description": "Azure location value (ie. westus, eastus, eastus2, northcentralus, etc.). Supplying only a location value will yield a list of available publishers for the location." } } }, "manageiq_tags": { "required": [ "resource_name", "resource_type" ], "type": "object", "description": "The manageiq_tags module supports adding, updating and deleting tags in ManageIQ.", "properties": { "state": { "type": "string", "description": "Default: present\n\nabsent - tags should not exist,\npresent - tags should exist,\nlist - list current tags." }, "resource_name": { "type": "string", "description": "the relevant resource name in manageiq" }, "resource_type": { "type": "string", "description": "the relevant resource type in manageiq" }, "tags": { "type": "string", "description": "tags - list of dictionaries, each includes 'name' and 'category' keys.\nrequired if state is present or absent." } } }, "imc_rest": { "allOf": [ { "allOf": [ { "not": { "required": [ "username", "user" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "hostname", "host", "ip" ], "type": "object" } }, { "oneOf": [ { "required": [ "hostname" ], "type": "object" }, { "required": [ "host" ], "type": "object" }, { "required": [ "ip" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "path", "src", "config_file" ], "type": "object" } } ] } ], "type": "object", "description": "Provides direct access to the Cisco IMC REST API.\nPerform any configuration changes and actions that the Cisco IMC supports.\nMore information about the IMC REST API is available from U(http://www.cisco.com/c/en/us/td/docs/unified_computing/ucs/c/sw/api/3_0/b_Cisco_IMC_api_301.html)", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername used to login to the switch." }, "src": { "type": "string", "description": "Name of the absolute path of the filename that includes the body of the http request being sent to the Cisco IMC REST API.\nParameter C(path) is mutual exclusive with parameter C(content)." }, "protocol": { "type": "string", "description": "Default: https\n\nConnection protocol to use." }, "ip": { "type": "string", "description": "IP Address or hostname of Cisco IMC, resolvable by Ansible control host." }, "hostname": { "type": "string", "description": "IP Address or hostname of Cisco IMC, resolvable by Ansible control host." }, "config_file": { "type": "string", "description": "Name of the absolute path of the filename that includes the body of the http request being sent to the Cisco IMC REST API.\nParameter C(path) is mutual exclusive with parameter C(content)." }, "content": { "type": "string", "description": "When used instead of C(path), sets the content of the API requests directly.\nThis may be convenient to template simple requests, for anything complex use the M(template) module.\nYou can collate multiple IMC XML fragments and they will be processed sequentially in a single stream, the Cisco IMC output is subsequently merged.\nParameter C(content) is mutual exclusive with parameter C(path)." }, "host": { "type": "string", "description": "IP Address or hostname of Cisco IMC, resolvable by Ansible control host." }, "user": { "type": "string", "description": "Default: admin\n\nUsername used to login to the switch." }, "timeout": { "type": "string", "description": "Default: 60\n\nThe socket level timeout in seconds.\nThis is the time that every single connection (every fragment) can spend. If this C(timeout) is reached, the module will fail with a C(Connection failure) indicating that C(The read operation timed out)." }, "path": { "type": "string", "description": "Name of the absolute path of the filename that includes the body of the http request being sent to the Cisco IMC REST API.\nParameter C(path) is mutual exclusive with parameter C(content)." }, "password": { "type": "string", "description": "Default: password\n\nThe password to use for authentication." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" } } }, "runit": { "required": [ "name" ], "type": "object", "description": "Controls runit services on remote hosts using the sv utility.", "properties": { "state": { "type": "string", "description": "C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the service (sv restart) and C(killed) will always bounce the service (sv force-stop). C(reloaded) will send a HUP (sv reload). C(once) will run a normally downed sv once (sv once), not really an idempotent operation." }, "enabled": { "description": "Wheater the service is enabled or not, if disabled it also implies stopped.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name of the service to manage." }, "service_src": { "type": "string", "description": "Default: /etc/sv\n\ndirectory where services are defined, the source of symlinks to service_dir." }, "service_dir": { "type": "string", "description": "Default: /var/service\n\ndirectory runsv watches for services" } } }, "swupd": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "bundle" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "manifest", "release", "version" ], "type": "object" } } ] } ], "type": "object", "description": "Manages updates and bundles with the swupd bundle manager, which is used by the Clear Linux Project for Intel Architecture.", "properties": { "contenturl": { "type": "string", "description": "URL pointing to the contents of available bundles. If not specified, the contents are retrieved from clearlinux.org." }, "name": { "type": "string", "description": "Name of the (I)bundle to install or remove." }, "format": { "type": "string", "description": "The format suffix for version file downloads. For example [1,2,3,staging,etc]. If not specified, the default format is used." }, "url": { "type": "string", "description": "Overrides both I(contenturl) and I(versionurl)." }, "verify": { "type": "string", "description": "Verify content for OS version." }, "update": { "type": "string", "description": "Updates the OS to the latest version." }, "bundle": { "type": "string", "description": "Name of the (I)bundle to install or remove." }, "manifest": { "type": "string", "description": "The manifest contains information about the bundles at certaion version of the OS. Specify a Manifest version to verify against that version or leave unspecified to verify against the current version." }, "state": { "type": "string", "description": "Default: present\n\nIndicates the desired (I)bundle state. C(present) ensures the bundle is installed while C(absent) ensures the (I)bundle is not installed." }, "version": { "type": "string", "description": "The manifest contains information about the bundles at certaion version of the OS. Specify a Manifest version to verify against that version or leave unspecified to verify against the current version." }, "release": { "type": "string", "description": "The manifest contains information about the bundles at certaion version of the OS. Specify a Manifest version to verify against that version or leave unspecified to verify against the current version." }, "versionurl": { "type": "string", "description": "URL for version string download." } } }, "aci_epg_to_contract": { "allOf": [ { "allOf": [ { "not": { "required": [ "contract", "contract_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ap", "app_profile", "app_profile_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "epg", "epg_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind EPGs to Contracts on Cisco ACI fabrics.", "properties": { "epg_name": { "type": "string", "description": "The name of the end point group." }, "contract_name": { "type": "string", "description": "The name of the contract." }, "app_profile": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "tenant_name": { "type": "string", "description": "Name of an existing tenant." }, "contract": { "type": "string", "description": "The name of the contract." }, "priority": { "type": "string", "description": "Default: unspecified\n\nQoS class.\nThe APIC defaults new EPG to Contract bindings to C(unspecified)." }, "ap": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "app_profile_name": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "contract_type": { "type": "string", "description": "Determines if the EPG should Provide or Consume the Contract." }, "epg": { "type": "string", "description": "The name of the end point group." }, "provider_match": { "type": "string", "description": "Default: at_least_one\n\nThe matching algorithm for Provided Contracts.\nThe APIC defaults new EPG to Provided Contracts to C(at_least_one)." }, "tenant": { "type": "string", "description": "Name of an existing tenant." } } }, "azure_rm_virtualmachine_scaleset": { "allOf": [ { "allOf": [ { "not": { "required": [ "virtual_network_name", "virtual_network" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subnet_name", "subnet" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "os_disk_caching", "disk_caching" ], "type": "object" } } ] } ], "type": "object", "description": "Create and update a virtual machine scale set.", "properties": { "resource_group": { "type": "string", "description": "Name of the resource group containing the virtual machine scale set." }, "image": { "type": "string", "description": "Specifies the image used to build the VM.\nIf a string, the image is sourced from a custom image based on the name.\nIf a dict with the keys C(publisher), C(offer), C(sku), and C(version), the image is sourced from a Marketplace image. NOTE: set image.version to C(latest) to get the most recent version of a given image.\nIf a dict with the keys C(name) and C(resource_group), the image is sourced from a custom image based on the C(name) and C(resource_group) set. NOTE: the key C(resource_group) is optional and if omitted, all images in the subscription will be searched for by C(name).\nCustom image support was added in Ansible 2.5" }, "upgrade_policy": { "type": "string", "description": "Upgrade policy." }, "managed_disk_type": { "type": "string", "description": "Managed disk type." }, "ssh_public_keys": { "type": "string", "description": "For os_type Linux provide a list of SSH keys. Each item in the list should be a dictionary where the dictionary contains two keys: path and key_data. Set the path to the default location of the authorized_keys files. On an Enterprise Linux host, for example, the path will be /home//.ssh/authorized_keys. Set key_data to the actual value of the public key." }, "ssh_password_enabled": { "type": "string", "description": "Default: True\n\nWhen the os_type is Linux, setting ssh_password_enabled to false will disable SSH password authentication and require use of SSH keys." }, "remove_on_absent": { "type": "string", "description": "Default: ['all']\n\nWhen removing a VM using state 'absent', also remove associated resources.\nIt can be 'all' or a list with any of the following: ['network_interfaces', 'virtual_storage', 'public_ips'].\nAny other input will be ignored." }, "subnet": { "type": "string", "description": "Subnet name." }, "capacity": { "type": "string", "description": "Capacity of VMSS." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the virtual machine scale set.\nState 'present' will check that the machine exists with the requested configuration. If the configuration of the existing machine does not match, the machine will be updated. state.\nState 'absent' will remove the virtual machine scale set." }, "subnet_name": { "type": "string", "description": "Subnet name." }, "admin_password": { "type": "string", "description": "Password for the admin username. Not required if the os_type is Linux and SSH password authentication is disabled by setting ssh_password_enabled to false." }, "location": { "type": "string", "description": "Valid Azure location. Defaults to location of the resource group." }, "load_balancer": { "type": "string", "description": "Load balancer name." }, "virtual_network_name": { "type": "string", "description": "Virtual Network name." }, "tier": { "type": "string", "description": "SKU Tier." }, "vm_size": { "type": "string", "description": "A valid Azure VM size value. For example, 'Standard_D4'. The list of choices varies depending on the subscription and location. Check your subscription for available choices." }, "name": { "type": "string", "description": "Name of the virtual machine." }, "disk_caching": { "type": "string", "description": "Default: ReadOnly\n\nType of OS disk caching." }, "admin_username": { "type": "string", "description": "Admin username used to access the host after it is created. Required when creating a VM." }, "virtual_network": { "type": "string", "description": "Virtual Network name." }, "os_type": { "type": "string", "description": "Default: ['Linux']\n\nBase type of operating system." }, "data_disks": { "type": "string", "description": "Describes list of data disks." }, "os_disk_caching": { "type": "string", "description": "Default: ReadOnly\n\nType of OS disk caching." } } }, "ec2_vpc": { "required": [ "state", "resource_tags" ], "type": "object", "description": "Create or terminates AWS virtual private clouds. This module has a dependency on python-boto.", "properties": { "subnets": { "type": "object", "description": "A dictionary array of subnets to add of the form C({ cidr: ..., az: ... , resource_tags: ... }).\nWhere C(az) is the desired availability zone of the subnet, optional.\nTags C(resource_tags) use dictionary form C({ \"Environment\":\"Dev\", \"Tier\":\"Web\", ...}), optional.\nC(resource_tags) see resource_tags for VPC below. The main difference is subnet tags not specified here will be deleted.\nAll VPC subnets not in this list will be removed as well.\nAs of 1.8, if the subnets parameter is not specified, no existing subnets will be modified.'" }, "route_tables": { "type": "object", "description": "A dictionary array of route tables to add of the form: C({ subnets: [172.22.2.0/24, 172.22.3.0/24,], routes: [{ dest: 0.0.0.0/0, gw: igw},], resource_tags: ... }). Where the subnets list is those subnets the route table should be associated with, and the routes list is a list of routes to be in the table. The special keyword for the gw of igw specifies that you should the route should go through the internet gateway attached to the VPC. gw also accepts instance-ids, interface-ids, and vpc-peering-connection-ids in addition igw. resource_tags is optional and uses dictionary form: C({ \"Name\": \"public\", ... }). This module is currently unable to affect the \"main\" route table due to some limitations in boto, so you must explicitly define the associated subnets or they will be attached to the main table implicitly. As of 1.8, if the route_tables parameter is not specified, no existing routes will be modified.\n" }, "dns_support": { "type": "string", "description": "Default: yes\n\nToggles the \"Enable DNS resolution\" flag." }, "internet_gateway": { "type": "string", "description": "Default: no\n\nToggle whether there should be an Internet gateway attached to the VPC." }, "instance_tenancy": { "type": "string", "description": "Default: default\n\nThe supported tenancy options for instances launched into the VPC." }, "state": { "type": "string", "description": "Create or terminate the VPC." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long before wait gives up, in seconds." }, "dns_hostnames": { "type": "string", "description": "Default: yes\n\nToggles the \"Enable DNS hostname support for instances\" flag." }, "resource_tags": { "type": "object", "description": "A dictionary array of resource tags of the form C({ tag1: value1, tag2: value2 }). - Tags in this list are used in conjunction with CIDR block to uniquely identify a VPC in lieu of vpc_id. Therefore, if CIDR/Tag combination does not exist, a new VPC will be created. VPC tags not on this list will be ignored. Prior to 1.7, specifying a resource tag was optional." }, "vpc_id": { "type": "string", "description": "A VPC id to terminate when I(state=absent)." }, "cidr_block": { "type": "string", "description": "The cidr block representing the VPC, e.g. C(10.0.0.0/16), required when I(state=present)." }, "wait": { "type": "string", "description": "Default: no\n\nWait for the VPC to be in state 'available' before returning." } } }, "avi_gslbapplicationpersistenceprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure GslbApplicationPersistenceProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the persistence profile.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "Field introduced in 17.1.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "name": { "type": "string", "description": "A user-friendly name for the persistence profile.\nField introduced in 17.1.1." } } }, "bigip_configsync_action": { "required": [ "device_group" ], "type": "object", "description": "Allows one to run different config-sync actions. These actions allow you to manually sync your configuration across multiple BIG-IPs when those devices are in an HA pair.", "properties": { "overwrite_config": { "type": "string", "description": "Indicates that the sync operation overwrites the configuration on the target." }, "sync_device_to_group": { "type": "string", "description": "Specifies that the system synchronizes configuration data from this device to other members of the device group. In this case, the device will do a \"push\" to all the other devices in the group. This option is mutually exclusive with the C(sync_group_to_device) option." }, "sync_most_recent_to_device": { "type": "string", "description": "Specifies that the system synchronizes configuration data from the device with the most recent configuration. In this case, the device will do a \"pull\" from the most recently updated device. This option is mutually exclusive with the C(sync_device_to_group) options." }, "device_group": { "type": "string", "description": "The device group that you want to perform config-sync actions on." } } }, "layman": { "required": [ "name" ], "type": "object", "description": "Uses Layman to manage an additional repositories for the Portage package manager on Gentoo Linux. Please note that Layman must be installed on a managed node prior using this module.", "properties": { "list_url": { "type": "string", "description": "An URL of the alternative overlays list that defines the overlay to install. This list will be fetched and saved under C(${overlay_defs})/${name}.xml), where C(overlay_defs) is readed from the Layman's configuration." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be set to C(no) when no other option exists. Prior to 1.9.3 the code defaulted to C(no)." }, "name": { "type": "string", "description": "The overlay id to install, synchronize, or uninstall. Use 'ALL' to sync all of the installed overlays (can be used only when C(state=updated))." }, "state": { "type": "string", "description": "Default: present\n\nWhether to install (C(present)), sync (C(updated)), or uninstall (C(absent)) the overlay." } } }, "ipmi_boot": { "required": [ "bootdev", "name", "user", "password" ], "type": "object", "description": "Use this module to manage order of boot devices", "properties": { "bootdev": { "type": "string", "description": "Set boot device to use on next reboot" }, "name": { "type": "string", "description": "Hostname or ip address of the BMC." }, "uefiboot": { "description": "If set, request UEFI boot explicitly. Strictly speaking, the spec suggests that if not set, the system should BIOS boot and offers no \"don't care\" option. In practice, this flag not being set does not preclude UEFI boot on any system I've encountered.", "$ref": "#/definitions/ansible_truth" }, "persistent": { "description": "If set, ask that system firmware uses this device beyond next boot. Be aware many systems do not honor this.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nWhether to ensure that boot devices is desired." }, "user": { "type": "string", "description": "Username to use to connect to the BMC." }, "password": { "type": "string", "description": "Password to connect to the BMC." }, "port": { "type": "string", "description": "Default: 623\n\nRemote RMCP port." } } }, "iptables": { "type": "object", "description": "Iptables is used to set up, maintain, and inspect the tables of IP packet filter rules in the Linux kernel.\nThis module does not handle the saving and/or loading of rules, but rather only manipulates the current rules that are present in memory. This is the same as the behaviour of the C(iptables) and C(ip6tables) command which this module uses internally.", "properties": { "tcp_flags": { "type": "string", "description": "TCP flags specification.\nC(tcp_flags) expects a dict with the two keys C(flags) and C(flags_set)." }, "comment": { "type": "string", "description": "This specifies a comment that will be added to the rule." }, "log_prefix": { "type": "string", "description": "Specifies a log text for the rule. Only make sense with a LOG jump." }, "protocol": { "type": "string", "description": "The protocol of the rule or of the packet to check.\nThe specified protocol can be one of tcp, udp, udplite, icmp, esp, ah, sctp or the special keyword \"all\", or it can be a numeric value, representing one of these protocols or a different one. A protocol name from /etc/protocols is also allowed. A \"!\" argument before the protocol inverts the test. The number zero is equivalent to all. \"all\" will match with all protocols and is taken as default when this option is omitted." }, "chain": { "type": "string", "description": "Chain to operate on.\nThis option can either be the name of a user defined chain or any of the builtin chains: 'INPUT', 'FORWARD', 'OUTPUT', 'PREROUTING', 'POSTROUTING', 'SECMARK', 'CONNSECMARK'." }, "ip_version": { "type": "string", "description": "Default: ipv4\n\nWhich version of the IP protocol this rule should apply to." }, "out_interface": { "type": "string", "description": "Name of an interface via which a packet is going to be sent (for packets entering the FORWARD, OUTPUT and POSTROUTING chains). When the \"!\" argument is used before the interface name, the sense is inverted. If the interface name ends in a \"+\", then any interface which begins with this name will match. If this option is omitted, any interface name will match." }, "limit_burst": { "type": "string", "description": "Specifies the maximum burst before the above limit kicks in." }, "ctstate": { "type": "string", "description": "C(ctstate) is a list of the connection states to match in the conntrack module. Possible states are: 'INVALID', 'NEW', 'ESTABLISHED', 'RELATED', 'UNTRACKED', 'SNAT', 'DNAT'" }, "jump": { "type": "string", "description": "This specifies the target of the rule; i.e., what to do if the packet matches it. The target can be a user-defined chain (other than the one this rule is in), one of the special builtin targets which decide the fate of the packet immediately, or an extension (see EXTENSIONS below). If this option is omitted in a rule (and the goto parameter is not used), then matching the rule will have no effect on the packet's fate, but the counters on the rule will be incremented." }, "to_ports": { "type": "string", "description": "This specifies a destination port or range of ports to use: without this, the destination port is never altered. This is only valid if the rule also specifies one of the following protocols: tcp, udp, dccp or sctp." }, "flush": { "type": "string", "description": "Flushes the specified table and chain of all rules.\nIf no chain is specified then the entire table is purged.\nIgnores all other parameters." }, "table": { "type": "string", "description": "Default: filter\n\nThis option specifies the packet matching table which the command should operate on. If the kernel is configured with automatic module loading, an attempt will be made to load the appropriate module for that table if it is not already there." }, "icmp_type": { "type": "string", "description": "This allows specification of the ICMP type, which can be a numeric ICMP type, type/code pair, or one of the ICMP type names shown by the command 'iptables -p icmp -h'" }, "to_destination": { "type": "string", "description": "This specifies a destination address to use with DNAT.\nWithout this, the destination address is never altered." }, "uid_owner": { "type": "string", "description": "Specifies the UID or username to use in match by owner rule." }, "set_dscp_mark_class": { "type": "string", "description": "This allows specifying a predefined DiffServ class which will be translated to the corresponding DSCP mark.\nMutually exclusive with C(set_dscp_mark)." }, "destination": { "type": "string", "description": "Destination specification.\nAddress can be either a network name, a hostname, a network IP address (with /mask), or a plain IP address.\nHostnames will be resolved once only, before the rule is submitted to the kernel. Please note that specifying any name to be resolved with a remote query such as DNS is a really bad idea.\nThe mask can be either a network mask or a plain number, specifying the number of 1's at the left side of the network mask. Thus, a mask of 24 is equivalent to 255.255.255.0. A \"!\" argument before the address specification inverts the sense of the address." }, "set_dscp_mark": { "type": "string", "description": "This allows specifying a DSCP mark to be added to packets. It takes either an integer or hex value.\nMutually exclusive with C(set_dscp_mark_class)." }, "source": { "type": "string", "description": "Source specification.\nAddress can be either a network name, a hostname, a network IP address (with /mask), or a plain IP address.\nHostnames will be resolved once only, before the rule is submitted to the kernel. Please note that specifying any name to be resolved with a remote query such as DNS is a really bad idea.\nThe mask can be either a network mask or a plain number, specifying the number of 1's at the left side of the network mask. Thus, a mask of 24 is equivalent to 255.255.255.0. A \"!\" argument before the address specification inverts the sense of the address." }, "state": { "type": "string", "description": "Default: present\n\nWhether the rule should be absent or present." }, "policy": { "type": "string", "description": "Set the policy for the chain to the given target.\nOnly built-in chains can have policies.\nThis parameter requires the C(chain) parameter.\nIgnores all other parameters." }, "set_counters": { "type": "string", "description": "This enables the administrator to initialize the packet and byte counters of a rule (during INSERT, APPEND, REPLACE operations)." }, "match": { "type": "string", "description": "Specifies a match to use, that is, an extension module that tests for a specific property. The set of matches make up the condition under which a target is invoked. Matches are evaluated first to last if specified as an array and work in short-circuit fashion, i.e. if one extension yields false, evaluation will stop." }, "goto": { "type": "string", "description": "This specifies that the processing should continue in a user specified chain. Unlike the jump argument return will not continue processing in this chain but instead in the chain that called us via jump." }, "fragment": { "type": "string", "description": "This means that the rule only refers to second and further fragments of fragmented packets. Since there is no way to tell the source or destination ports of such a packet (or ICMP type), such a packet will not match any rules which specify them. When the \"!\" argument precedes fragment argument, the rule will only match head fragments, or unfragmented packets." }, "to_source": { "type": "string", "description": "This specifies a source address to use with SNAT.\nWithout this, the source address is never altered." }, "syn": { "type": "string", "description": "Default: ignore\n\nThis allows matching packets that have the SYN bit set and the ACK and RST bits unset.\nWhen negated, this matches all packets with the RST or the ACK bits set." }, "action": { "type": "string", "description": "Default: append\n\nWhether the rule should be appended at the bottom or inserted at the top.\nIf the rule already exists the chain won't be modified." }, "rule_num": { "type": "string", "description": "Insert the rule as the given rule number. This works only with action = 'insert'." }, "destination_port": { "type": "string", "description": "Destination port or port range specification. This can either be a service name or a port number. An inclusive range can also be specified, using the format first:last. If the first port is omitted, '0' is assumed; if the last is omitted, '65535' is assumed. If the first port is greater than the second one they will be swapped." }, "reject_with": { "type": "string", "description": "Specifies the error packet type to return while rejecting. It implies \"jump: REJECT\"" }, "limit": { "type": "string", "description": "Specifies the maximum average number of matches to allow per second.\nThe number can specify units explicitly, using `/second', `/minute', `/hour' or `/day', or parts of them (so `5/second' is the same as `5/s')." }, "source_port": { "type": "string", "description": "Source port or port range specification. This can either be a service name or a port number. An inclusive range can also be specified, using the format first:last. If the first port is omitted, '0' is assumed; if the last is omitted, '65535' is assumed. If the first port is greater than the second one they will be swapped." }, "in_interface": { "type": "string", "description": "Name of an interface via which a packet was received (only for packets entering the INPUT, FORWARD and PREROUTING chains). When the \"!\" argument is used before the interface name, the sense is inverted. If the interface name ends in a \"+\", then any interface which begins with this name will match. If this option is omitted, any interface name will match." } } }, "aci_access_port_to_interface_policy_leaf_profile": { "allOf": [ { "allOf": [ { "not": { "required": [ "from", "fromPort", "from_port_range" ], "type": "object" } }, { "oneOf": [ { "required": [ "from" ], "type": "object" }, { "required": [ "fromPort" ], "type": "object" }, { "required": [ "from_port_range" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "access_port_selector", "name", "access_port_selector_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "access_port_selector" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "access_port_selector_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "leaf_port_blk", "leaf_port_blk_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "leaf_port_blk" ], "type": "object" }, { "required": [ "leaf_port_blk_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "policy_group", "policy_group_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "to", "toPort", "to_port_range" ], "type": "object" } }, { "oneOf": [ { "required": [ "to" ], "type": "object" }, { "required": [ "toPort" ], "type": "object" }, { "required": [ "to_port_range" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "leaf_interface_profile", "leaf_interface_profile_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "leaf_interface_profile" ], "type": "object" }, { "required": [ "leaf_interface_profile_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage Fabric interface policy leaf profile interface selectors on Cisco ACI fabrics.", "properties": { "policy_group_name": { "type": "string", "description": "The name of the fabric access policy group to be associated with the leaf interface profile interface selector." }, "leaf_port_blk": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile access port block." }, "from": { "type": "string", "description": "The beggining (from range) of the port range block for the leaf access port block." }, "description": { "type": "string", "description": "The description to assign to the C(access_port_selector)" }, "from_port_range": { "type": "string", "description": "The beggining (from range) of the port range block for the leaf access port block." }, "access_port_selector": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile access port selector." }, "leaf_interface_profile": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile." }, "access_port_selector_name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile access port selector." }, "to": { "type": "string", "description": "The end (to range) of the port range block for the leaf access port block." }, "policy_group": { "type": "string", "description": "The name of the fabric access policy group to be associated with the leaf interface profile interface selector." }, "leaf_port_blk_description": { "type": "string", "description": "The description to assign to the C(leaf_port_blk)" }, "fromPort": { "type": "string", "description": "The beggining (from range) of the port range block for the leaf access port block." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "leaf_interface_profile_name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile." }, "toPort": { "type": "string", "description": "The end (to range) of the port range block for the leaf access port block." }, "to_port_range": { "type": "string", "description": "The end (to range) of the port range block for the leaf access port block." }, "leaf_port_blk_name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile access port block." }, "name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile access port selector." } } }, "rax_mon_entity": { "required": [ "label" ], "type": "object", "description": "Create or delete a Rackspace Cloud Monitoring entity, which represents a device to monitor. Entities associate checks and alarms with a target system and provide a convenient, centralized place to store IP addresses. Rackspace monitoring module flow | *rax_mon_entity* -> rax_mon_check -> rax_mon_notification -> rax_mon_notification_plan -> rax_mon_alarm", "properties": { "state": { "type": "string", "description": "Ensure that an entity with this C(name) exists or does not exist." }, "metadata": { "type": "string", "description": "Hash of arbitrary C(name), C(value) pairs that are passed to associated rax_mon_alarms. Names and values must all be between 1 and 255 characters long." }, "agent_id": { "type": "string", "description": "Rackspace monitoring agent on the target device to which this entity is bound. Necessary to collect C(agent.) rax_mon_checks against this entity." }, "named_ip_addresses": { "type": "string", "description": "Hash of IP addresses that may be referenced by name by rax_mon_checks added to this entity. Must be a dictionary of with keys that are names between 1 and 64 characters long, and values that are valid IPv4 or IPv6 addresses." }, "label": { "type": "string", "description": "Defines a name for this entity. Must be a non-empty string between 1 and 255 characters long." } } }, "vyos_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "The command module allows running one or more commands on remote devices running VyOS. This module can also be introspected to validate key parameters before returning successfully. If the conditional statements are not met in the wait period, the task fails.\nCertain C(show) commands in VyOS produce many lines of output and use a custom pager that can cause this module to hang. If the value of the environment variable C(ANSIBLE_VYOS_TERMINAL_LENGTH) is not set, the default number of 10000 is used.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should be tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditionals." }, "commands": { "type": "string", "description": "The ordered set of commands to execute on the remote device running VyOS. The output from the command execution is returned to the playbook. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has been exceeded." }, "waitfor": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured I(retries), the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between I(retries) of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured I(retries), the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "webfaction_db": { "required": [ "name", "login_password", "type", "login_name" ], "type": "object", "description": "Add or remove a database on a Webfaction host. Further documentation at http://github.com/quentinsf/ansible-webfaction.", "properties": { "name": { "type": "string", "description": "The name of the database" }, "machine": { "type": "string", "description": "The machine name to use (optional for accounts with only one machine)" }, "state": { "type": "string", "description": "Default: present\n\nWhether the database should exist" }, "login_password": { "type": "string", "description": "The webfaction password to use" }, "password": { "type": "string", "description": "Default: None\n\nThe password for the new database user." }, "type": { "type": "string", "description": "The type of database to create." }, "login_name": { "type": "string", "description": "The webfaction account to use" } } }, "netapp_e_snapshot_volume": { "required": [ "snapshot_image_id", "ssid", "api_password", "view_mode", "state", "storage_pool_name", "api_username", "api_url", "name" ], "type": "object", "description": "Create, update, remove snapshot volumes for NetApp E/EF-Series storage arrays.", "properties": { "snapshot_image_id": { "type": "string", "description": "The identifier of the snapshot image used to create the new snapshot volume.\nNote: You'll likely want to use the M(netapp_e_facts) module to find the ID of the image you want." }, "ssid": { "type": "string", "description": "storage array ID" }, "state": { "type": "string", "description": "Whether to create or remove the snapshot volume" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "repo_percentage": { "type": "string", "description": "Default: 20\n\nThe size of the view in relation to the size of the base volume" }, "full_threshold": { "type": "string", "description": "Default: 85\n\nThe repository utilization warning threshold percentage" }, "name": { "type": "string", "description": "The name you wish to give the snapshot volume" }, "view_mode": { "type": "string", "description": "The snapshot volume access mode" }, "storage_pool_name": { "type": "string", "description": "Name of the storage pool on which to allocate the repository volume." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." } } }, "openssl_csr": { "allOf": [ { "allOf": [ { "not": { "required": [ "state_or_province_name", "ST", "stateOrProvinceName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "extended_key_usage_critical", "extKeyUsage_critical", "extendedKeyUsage_critical" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subject_alt_name", "subjectAltName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "basic_constraints", "basicConstraints" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subject_alt_name_critical", "subjectAltName_critical" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ocsp_must_staple", "ocspMustStaple" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "key_usage", "keyUsage" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "common_name", "CN", "commonName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "email_address", "E", "emailAddress" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "key_usage_critical", "keyUsage_critical" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "extended_key_usage", "extKeyUsage", "extendedKeyUsage" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "organizational_unit_name", "OU", "organizationalUnitName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "locality_name", "L", "localityName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "organization_name", "O", "organizationName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "basic_constraints_critical", "basicConstraints_critical" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "country_name", "C", "countryName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ocsp_must_staple_critical", "ocspMustStaple_critical" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows one to (re)generate OpenSSL certificate signing requests. It uses the pyOpenSSL python library to interact with openssl. This module supports the subjectAltName, keyUsage, extendedKeyUsage, basicConstraints and OCSP Must Staple extensions.", "properties": { "privatekey_passphrase": { "type": "string", "description": "The passphrase for the privatekey." }, "force": { "type": "string", "description": "Should the certificate signing request be forced regenerated by this ansible module" }, "extendedKeyUsage": { "type": "string", "description": "Additional restrictions (e.g. client authentication, server authentication) on the allowed purposes for which the public key may be used.\nThis can either be a 'comma separated string' or a YAML list." }, "subject_alt_name_critical": { "type": "string", "description": "Should the subjectAltName extension be considered as critical" }, "extendedKeyUsage_critical": { "type": "string", "description": "Should the extkeyUsage extension be considered as critical" }, "ocsp_must_staple": { "type": "string", "description": "Indicates that the certificate should contain the OCSP Must Staple extension (U(https://tools.ietf.org/html/rfc7633))." }, "key_usage": { "type": "string", "description": "This defines the purpose (e.g. encipherment, signature, certificate signing) of the key contained in the certificate.\nThis can either be a 'comma separated string' or a YAML list." }, "localityName": { "type": "string", "description": "localityName field of the certificate signing request subject" }, "common_name": { "type": "string", "description": "commonName field of the certificate signing request subject" }, "email_address": { "type": "string", "description": "emailAddress field of the certificate signing request subject" }, "digest": { "type": "string", "description": "Default: sha256\n\nDigest used when signing the certificate signing request with the private key" }, "subject": { "type": "string", "description": "Key/value pairs that will be present in the subject name field of the certificate signing request.\nIf you need to specify more than one value with the same key, use a list as value." }, "organizationalUnitName": { "type": "string", "description": "organizationalUnitName field of the certificate signing request subject" }, "subjectAltName": { "type": "string", "description": "SAN extension to attach to the certificate signing request\nThis can either be a 'comma separated string' or a YAML list.\nValues should be prefixed by their options. (i.e., C(email), C(URI), C(DNS), C(RID), C(IP), C(dirName), C(otherName) and the ones specific to your CA)\nMore at U(https://tools.ietf.org/html/rfc5280#section-4.2.1.6)" }, "organizational_unit_name": { "type": "string", "description": "organizationalUnitName field of the certificate signing request subject" }, "locality_name": { "type": "string", "description": "localityName field of the certificate signing request subject" }, "commonName": { "type": "string", "description": "commonName field of the certificate signing request subject" }, "state": { "type": "string", "description": "Default: present\n\nWhether the certificate signing request should exist or not, taking action if the state is different from what is stated." }, "subjectAltName_critical": { "type": "string", "description": "Should the subjectAltName extension be considered as critical" }, "organization_name": { "type": "string", "description": "organizationName field of the certificate signing request subject" }, "keyUsage": { "type": "string", "description": "This defines the purpose (e.g. encipherment, signature, certificate signing) of the key contained in the certificate.\nThis can either be a 'comma separated string' or a YAML list." }, "version": { "type": "string", "description": "Default: 1\n\nVersion of the certificate signing request" }, "keyUsage_critical": { "type": "string", "description": "Should the keyUsage extension be considered as critical" }, "country_name": { "type": "string", "description": "countryName field of the certificate signing request subject" }, "state_or_province_name": { "type": "string", "description": "stateOrProvinceName field of the certificate signing request subject" }, "extended_key_usage_critical": { "type": "string", "description": "Should the extkeyUsage extension be considered as critical" }, "E": { "type": "string", "description": "emailAddress field of the certificate signing request subject" }, "CN": { "type": "string", "description": "commonName field of the certificate signing request subject" }, "subject_alt_name": { "type": "string", "description": "SAN extension to attach to the certificate signing request\nThis can either be a 'comma separated string' or a YAML list.\nValues should be prefixed by their options. (i.e., C(email), C(URI), C(DNS), C(RID), C(IP), C(dirName), C(otherName) and the ones specific to your CA)\nMore at U(https://tools.ietf.org/html/rfc5280#section-4.2.1.6)" }, "basic_constraints": { "type": "string", "description": "Indicates basic constraints, such as if the certificate is a CA." }, "extKeyUsage": { "type": "string", "description": "Additional restrictions (e.g. client authentication, server authentication) on the allowed purposes for which the public key may be used.\nThis can either be a 'comma separated string' or a YAML list." }, "L": { "type": "string", "description": "localityName field of the certificate signing request subject" }, "O": { "type": "string", "description": "organizationName field of the certificate signing request subject" }, "privatekey_path": { "type": "string", "description": "Path to the privatekey to use when signing the certificate signing request" }, "countryName": { "type": "string", "description": "countryName field of the certificate signing request subject" }, "basicConstraints_critical": { "type": "string", "description": "Should the basicConstraints extension be considered as critical" }, "emailAddress": { "type": "string", "description": "emailAddress field of the certificate signing request subject" }, "path": { "type": "string", "description": "Name of the file into which the generated OpenSSL certificate signing request will be written" }, "ocspMustStaple_critical": { "type": "string", "description": "Should the OCSP Must Staple extension be considered as critical\nWarning: according to the RFC, this extension should not be marked as critical, as old clients not knowing about OCSP Must Staple are required to reject such certificates (see U(https://tools.ietf.org/html/rfc7633#section-4))." }, "key_usage_critical": { "type": "string", "description": "Should the keyUsage extension be considered as critical" }, "organizationName": { "type": "string", "description": "organizationName field of the certificate signing request subject" }, "extended_key_usage": { "type": "string", "description": "Additional restrictions (e.g. client authentication, server authentication) on the allowed purposes for which the public key may be used.\nThis can either be a 'comma separated string' or a YAML list." }, "C": { "type": "string", "description": "countryName field of the certificate signing request subject" }, "ocspMustStaple": { "type": "string", "description": "Indicates that the certificate should contain the OCSP Must Staple extension (U(https://tools.ietf.org/html/rfc7633))." }, "stateOrProvinceName": { "type": "string", "description": "stateOrProvinceName field of the certificate signing request subject" }, "ST": { "type": "string", "description": "stateOrProvinceName field of the certificate signing request subject" }, "basic_constraints_critical": { "type": "string", "description": "Should the basicConstraints extension be considered as critical" }, "OU": { "type": "string", "description": "organizationalUnitName field of the certificate signing request subject" }, "ocsp_must_staple_critical": { "type": "string", "description": "Should the OCSP Must Staple extension be considered as critical\nWarning: according to the RFC, this extension should not be marked as critical, as old clients not knowing about OCSP Must Staple are required to reject such certificates (see U(https://tools.ietf.org/html/rfc7633#section-4))." }, "extKeyUsage_critical": { "type": "string", "description": "Should the extkeyUsage extension be considered as critical" }, "basicConstraints": { "type": "string", "description": "Indicates basic constraints, such as if the certificate is a CA." } } }, "bigip_virtual_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "destination", "address", "ip" ], "type": "object" } }, { "oneOf": [ { "required": [ "destination" ], "type": "object" }, { "required": [ "address" ], "type": "object" }, { "required": [ "ip" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "name", "vs" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "vs" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages F5 BIG-IP LTM virtual servers via iControl SOAP API", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nPartition" }, "name": { "type": "string", "description": "Virtual server name" }, "ip": { "type": "string", "description": "Destination IP of the virtual server (only host is currently supported). Required when state=present and vs does not exist." }, "default_persistence_profile": { "type": "string", "description": "Default: None\n\nDefault Profile which manages the session persistence" }, "destination": { "type": "string", "description": "Destination IP of the virtual server (only host is currently supported). Required when state=present and vs does not exist." }, "all_profiles": { "type": "array", "description": "Default: None\n\nList of all Profiles (HTTP,ClientSSL,ServerSSL,etc) that must be used by the virtual server" }, "all_rules": { "type": "array", "description": "Default: None\n\nList of rules to be applied in priority order" }, "enabled_vlans": { "type": "array", "description": "Default: None\n\nList of vlans to be enabled. When a VLAN named C(ALL) is used, all VLANs will be allowed." }, "state": { "type": "string", "description": "Default: present\n\nVirtual Server state\nAbsent, delete the VS if present\nC(present) (and its synonym enabled), create if needed the VS and set state to enabled\nC(disabled), create if needed the VS and set state to disabled" }, "vs": { "type": "string", "description": "Virtual server name" }, "address": { "type": "string", "description": "Destination IP of the virtual server (only host is currently supported). Required when state=present and vs does not exist." }, "snat": { "type": "string", "description": "Default: None\n\nSource network address policy" }, "port": { "type": "string", "description": "Default: None\n\nPort of the virtual server . Required when state=present and vs does not exist" }, "pool": { "type": "string", "description": "Default: None\n\nDefault pool for the virtual server" }, "description": { "type": "string", "description": "Default: None\n\nVirtual server description" } } }, "vyos_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on VyOS network devices.", "properties": { "neighbors": { "type": "string", "description": "Check the operational state of given interface C(name) for LLDP neighbor.\nThe following suboptions are available." }, "name": { "type": "string", "description": "Name of the Interface." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status." }, "enabled": { "type": "string", "description": "Interface link status." }, "mtu": { "type": "string", "description": "Maximum size of transmit packet." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down) and I(neighbors)." }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) means present and operationally up and C(down) means present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed." }, "description": { "type": "string", "description": "Description of Interface." } } }, "patch": { "allOf": [ { "allOf": [ { "not": { "required": [ "src", "patchfile" ], "type": "object" } }, { "oneOf": [ { "required": [ "src" ], "type": "object" }, { "required": [ "patchfile" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "dest", "originalfile" ], "type": "object" } } ] } ], "type": "object", "description": "Apply patch files using the GNU patch tool.", "properties": { "src": { "type": "string", "description": "Path of the patch file as accepted by the GNU patch tool. If C(remote_src) is 'no', the patch source file is looked up from the module's I(files) directory." }, "basedir": { "type": "string", "description": "Path of a base directory in which the patch file will be applied. May be omitted when C(dest) option is specified, otherwise required." }, "patchfile": { "type": "string", "description": "Path of the patch file as accepted by the GNU patch tool. If C(remote_src) is 'no', the patch source file is looked up from the module's I(files) directory." }, "remote_src": { "type": "string", "description": "Default: no\n\nIf C(no), it will search for src at originating/master machine, if C(yes) it will go to the remote/target machine for the C(src)." }, "dest": { "type": "string", "description": "Path of the file on the remote machine to be patched.\nThe names of the files to be patched are usually taken from the patch file, but if there's just one file to be patched it can specified with this option." }, "strip": { "type": "string", "description": "Number that indicates the smallest prefix containing leading slashes that will be stripped from each file name found in the patch file. For more information see the strip parameter of the GNU patch tool." }, "binary": { "type": "string", "description": "Default: no\n\nSetting to C(yes) will disable patch's heuristic for transforming CRLF line endings into LF. Line endings of src and dest must match. If set to C(no), C(patch) will replace CRLF in C(src) files on POSIX." }, "originalfile": { "type": "string", "description": "Path of the file on the remote machine to be patched.\nThe names of the files to be patched are usually taken from the patch file, but if there's just one file to be patched it can specified with this option." }, "backup": { "type": "string", "description": "Default: no\n\nPasses C(--backup --version-control=numbered) to patch, producing numbered backup copies." } } }, "os_networks_facts": { "type": "object", "description": "Retrieve facts about one or more networks from OpenStack.", "properties": { "name": { "type": "string", "description": "Name or ID of the Network" }, "filters": { "type": "object", "description": "A dictionary of meta data to use for further filtering. Elements of this dictionary may be additional dictionaries." } } }, "manageiq_user": { "required": [ "userid" ], "type": "object", "description": "The manageiq_user module supports adding, updating and deleting users in ManageIQ.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords unconditionally. C(on_create) will only set the password for a newly created user." }, "group": { "type": "string", "description": "The name of the group to which the user belongs." }, "name": { "type": "string", "description": "The users' full name." }, "userid": { "type": "string", "description": "The unique userid in manageiq, often mentioned as username." }, "state": { "type": "string", "description": "Default: present\n\nabsent - user should not exist, present - user should be." }, "password": { "type": "string", "description": "The users' password." }, "email": { "type": "string", "description": "The users' E-mail address." } } }, "win_group_membership": { "required": [ "name", "members" ], "type": "object", "description": "Allows the addition and removal of local, service and domain users, and domain groups from a local group.", "properties": { "state": { "type": "string", "description": "Default: present\n\nDesired state of the members in the group." }, "name": { "type": "string", "description": "Name of the local group to manage membership on." }, "members": { "type": "string", "description": "A list of members to ensure are present/absent from the group.\nAccepts local users as username, .\\username, and SERVERNAME\\username.\nAccepts domain users and groups as DOMAIN\\username and username@DOMAIN.\nAccepts service users as NT AUTHORITY\\username." } } }, "beadm": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "be" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "be" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create, delete or activate ZFS boot environments.\nMount and unmount ZFS boot environments.", "properties": { "be": { "type": "string", "description": "ZFS boot environment name." }, "force": { "type": "string", "description": "Specifies if the unmount should be forced." }, "name": { "type": "string", "description": "ZFS boot environment name." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete ZFS boot environment." }, "snapshot": { "type": "string", "description": "If specified, the new boot environment will be cloned from the given snapshot or inactive boot environment." }, "mountpoint": { "type": "string", "description": "Path where to mount the ZFS boot environment" }, "options": { "type": "string", "description": "Create the datasets for new BE with specific ZFS properties. Multiple options can be specified. This option is available only on Solarish platforms." }, "description": { "type": "string", "description": "Associate a description with a new boot environment. This option is available only on Solarish platforms." } } }, "bigip_device_connectivity": { "type": "object", "description": "Manages device IP configuration settings for HA on a BIG-IP. Each BIG-IP device has synchronization and failover connectivity information (IP addresses) that you define as part of HA pairing or clustering. This module allows you to configure that information.", "properties": { "multicast_interface": { "type": "string", "description": "Interface over which the system sends multicast messages associated with failover. When C(failover_multicast) is C(yes) and this option is not provided, a default of C(eth0) will be used." }, "mirror_primary_address": { "type": "string", "description": "Specifies the primary IP address for the system to use to mirror connections." }, "mirror_secondary_address": { "type": "string", "description": "Specifies the secondary IP address for the system to use to mirror connections." }, "config_sync_ip": { "type": "string", "description": "Local IP address that the system uses for ConfigSync operations." }, "multicast_address": { "type": "string", "description": "IP address for the system to send multicast messages associated with failover. When C(failover_multicast) is C(yes) and this option is not provided, a default of C(224.0.0.245) will be used." }, "failover_multicast": { "type": "string", "description": "When C(yes), ensures that the Failover Multicast configuration is enabled and if no further multicast configuration is provided, ensures that C(multicast_interface), C(multicast_address) and C(multicast_port) are the defaults specified in each option's description. When C(no), ensures that Failover Multicast configuration is disabled." }, "unicast_failover": { "type": "string", "description": "Desired addresses to use for failover operations. Options C(address) and C(port) are supported with dictionary structure where C(address) is the local IP address that the system uses for failover operations. Port specifies the port that the system uses for failover operations. If C(port) is not specified, the default value C(1026) will be used. If you are specifying the (recommended) management IP address, use 'management-ip' in the address field." }, "multicast_port": { "type": "string", "description": "Port for the system to send multicast messages associated with failover. When C(failover_multicast) is C(yes) and this option is not provided, a default of C(62960) will be used. This value must be between 0 and 65535." } } }, "open_iscsi": { "allOf": [ { "allOf": [ { "not": { "required": [ "auto_node_startup", "automatic" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "target", "name", "targetname" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "portal", "ip" ], "type": "object" } } ] } ], "type": "object", "description": "Discover targets on given portal, (dis)connect targets, mark targets to manually or auto start, return device nodes of connected targets.", "properties": { "auto_node_startup": { "type": "string", "description": "whether the target node should be automatically connected at startup" }, "target": { "type": "string", "description": "the iscsi target name" }, "show_nodes": { "type": "string", "description": "whether the list of nodes in the persistent iscsi database should be returned by the module" }, "node_auth": { "type": "string", "description": "Default: CHAP\n\ndiscovery.sendtargets.auth.authmethod" }, "automatic": { "type": "string", "description": "whether the target node should be automatically connected at startup" }, "node_pass": { "type": "string", "description": "discovery.sendtargets.auth.password" }, "discover": { "type": "string", "description": "whether the list of target nodes on the portal should be (re)discovered and added to the persistent iscsi database. Keep in mind that iscsiadm discovery resets configurtion, like node.startup to manual, hence combined with auto_node_startup=yes will always return a changed state." }, "portal": { "type": "string", "description": "the ip address of the iscsi target" }, "ip": { "type": "string", "description": "the ip address of the iscsi target" }, "login": { "type": "string", "description": "whether the target node should be connected" }, "node_user": { "type": "string", "description": "discovery.sendtargets.auth.username" }, "targetname": { "type": "string", "description": "the iscsi target name" }, "port": { "type": "string", "description": "Default: 3260\n\nthe port on which the iscsi target process listens" }, "name": { "type": "string", "description": "the iscsi target name" } } }, "aci_firmware_source": { "allOf": [ { "allOf": [ { "not": { "required": [ "url_protocol", "url_proto" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "source", "name", "source_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "source" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "source_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage firmware image sources on Cisco ACI fabrics.", "properties": { "url_password": { "type": "string", "description": "The Firmware password or key string." }, "url_protocol": { "type": "string", "description": "Default: scp\n\nThe Firmware download protocol." }, "source_name": { "type": "string", "description": "The identifying name for the outside source of images, such as an HTTP or SCP server." }, "name": { "type": "string", "description": "The identifying name for the outside source of images, such as an HTTP or SCP server." }, "url": { "type": "string", "description": "The firmware URL for the image(s) on the source." }, "source": { "type": "string", "description": "The identifying name for the outside source of images, such as an HTTP or SCP server." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "url_username": { "type": "string", "description": "The username for the source." }, "polling_interval": { "type": "string", "description": "Polling interval in minutes." }, "url_proto": { "type": "string", "description": "Default: scp\n\nThe Firmware download protocol." } } }, "ce_startup": { "type": "object", "description": "Manages a system startup information on HUAWEI CloudEngine switches.", "properties": { "slot": { "type": "string", "description": "Position of the device.The value is a string of 1 to 32 characters. The possible value of slot is all, slave-board, or the specific slotID." }, "action": { "type": "string", "description": "Display the startup information." }, "software_file": { "type": "string", "description": "File name of the system software that is applied for the next startup. The value is a string of 5 to 255 characters." }, "patch_file": { "type": "string", "description": "Name of the patch file that is applied for the next startup." }, "cfg_file": { "type": "string", "description": "Default: present\n\nName of the configuration file that is applied for the next startup. The value is a string of 5 to 255 characters." } } }, "ce_reboot": { "type": "object", "description": "Reboot a HUAWEI CloudEngine switches.", "properties": { "save_config": { "description": "Flag indicating whether to save the configuration.", "$ref": "#/definitions/ansible_truth" }, "confirm": { "description": "Safeguard boolean. Set to true if you're sure you want to reboot.", "$ref": "#/definitions/ansible_truth" } } }, "fail": { "type": "object", "description": "This module fails the progress with a custom message. It can be useful for bailing out when a certain condition is met using C(when).", "properties": { "msg": { "type": "string", "description": "Default: 'Failed as requested from task'\n\nThe customized message used for failing execution. If omitted, fail will simple bail out with a generic message." } } }, "nso_verify": { "required": [ "data" ], "type": "object", "description": "This module provides support for verifying Cisco NSO configuration is in compliance with specified values.", "properties": { "data": { "type": "string", "description": "NSO data in format as C(| display json) converted to YAML. List entries can be annotated with a C(__state) entry. Set to in-sync/deep-in-sync for services to verify service is in sync with the network. Set to absent in list entries to ensure they are deleted if they exist in NSO.\n" } } }, "ec2_asg_facts": { "type": "object", "description": "Gather facts about ec2 Auto Scaling Groups (ASGs) in AWS", "properties": { "name": { "type": "string", "description": "The prefix or name of the auto scaling group(s) you are searching for.\nNote: This is a regular expression match with implicit '^' (beginning of string). Append '$' for a complete name match." }, "tags": { "type": "object", "description": "A dictionary/hash of tags in the format { tag1_name: 'tag1_value', tag2_name: 'tag2_value' } to match against the auto scaling group(s) you are searching for." } } }, "bigip_profile_client_ssl": { "required": [ "name" ], "type": "object", "description": "Manages client SSL profiles on a BIG-IP.", "properties": { "parent": { "type": "string", "description": "Default: /Common/clientssl\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(clientssl) parent on the C(Common) partition." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Specifies the name of the profile." }, "cert_key_chain": { "type": "string", "description": "One or more certificates and keys to associate with the SSL profile. This option is always a list. The keys in the list dictate the details of the client/key/chain combination. Note that BIG-IPs can only have one of each type of each certificate/key type. This means that you can only have one RSA, one DSA, and one ECDSA per profile. If you attempt to assign two RSA, DSA, or ECDSA certificate/key combo, the device will reject this.\nThis list is a complex list that specifies a number of keys. There are several supported keys." }, "ciphers": { "type": "string", "description": "Specifies the list of ciphers that the system supports. When creating a new profile, the default cipher list is C(DEFAULT)." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the profile exists.\nWhen C(absent), ensures the profile is removed." } } }, "azure_rm_virtualmachine": { "allOf": [ { "allOf": [ { "not": { "required": [ "virtual_network_name", "virtual_network" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "public_ip_allocation_method", "public_ip_allocation" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "os_disk_caching", "disk_caching" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subnet_name", "subnet" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "storage_blob_name", "storage_blob" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update, stop and start a virtual machine. Provide an existing storage account and network interface or allow the module to create these for you. If you choose not to provide a network interface, the resource group must contain a virtual network with at least one subnet.\nBefore Ansible 2.5, this required an image found in the Azure Marketplace which can be discovered with M(azure_rm_virtualmachineimage_facts). In Ansible 2.5 and newer, custom images can be used as well, see the examples for more details.", "properties": { "virtual_network_resource_group": { "type": "string", "description": "When creating a virtual machine, if a specific virtual network from another resource group should be used, use this parameter to specify the resource group to use." }, "resource_group": { "type": "string", "description": "Name of the resource group containing the virtual machine." }, "public_ip_allocation_method": { "type": "string", "description": "Default: ['Static']\n\nIf a public IP address is created when creating the VM (because a Network Interface was not provided), determines if the public IP address remains permanently associated with the Network Interface. If set to 'Dynamic' the public IP address may change any time the VM is rebooted or power cycled." }, "image": { "type": "string", "description": "Specifies the image used to build the VM.\nIf a string, the image is sourced from a custom image based on the name.\nIf a dict with the keys C(publisher), C(offer), C(sku), and C(version), the image is sourced from a Marketplace image. NOTE: set image.version to C(latest) to get the most recent version of a given image.\nIf a dict with the keys C(name) and C(resource_group), the image is sourced from a custom image based on the C(name) and C(resource_group) set. NOTE: the key C(resource_group) is optional and if omitted, all images in the subscription will be searched for by C(name).\nCustom image support was added in Ansible 2.5" }, "disk_caching": { "type": "string", "description": "Default: ReadOnly\n\nType of OS disk caching." }, "ssh_public_keys": { "type": "string", "description": "For os_type Linux provide a list of SSH keys. Each item in the list should be a dictionary where the dictionary contains two keys: path and key_data. Set the path to the default location of the authorized_keys files. On an Enterprise Linux host, for example, the path will be /home//.ssh/authorized_keys. Set key_data to the actual value of the public key." }, "storage_container_name": { "type": "string", "description": "Default: vhds\n\nName of the container to use within the storage account to store VHD blobs. If no name is specified a default container will created." }, "allocated": { "type": "string", "description": "Default: True\n\nToggle that controls if the machine is allocated/deallocated, only useful with state='present'." }, "ssh_password_enabled": { "type": "string", "description": "Default: True\n\nWhen the os_type is Linux, setting ssh_password_enabled to false will disable SSH password authentication and require use of SSH keys." }, "storage_blob_name": { "type": "string", "description": "Name fo the storage blob used to hold the VM's OS disk image. If no name is provided, defaults to the VM name + '.vhd'. If you provide a name, it must end with '.vhd'" }, "remove_on_absent": { "type": "string", "description": "Default: ['all']\n\nWhen removing a VM using state 'absent', also remove associated resources\nIt can be 'all' or a list with any of the following: ['network_interfaces', 'virtual_storage', 'public_ips']\nAny other input will be ignored" }, "short_hostname": { "type": "string", "description": "Name assigned internally to the host. On a linux VM this is the name returned by the `hostname` command. When creating a virtual machine, short_hostname defaults to name." }, "availability_set": { "type": "string", "description": "Name or ID of an existing availability set to add the VM to. The availability_set should be in the same resource group as VM." }, "public_ip_allocation": { "type": "string", "description": "Default: ['Static']\n\nIf a public IP address is created when creating the VM (because a Network Interface was not provided), determines if the public IP address remains permanently associated with the Network Interface. If set to 'Dynamic' the public IP address may change any time the VM is rebooted or power cycled." }, "storage_blob": { "type": "string", "description": "Name fo the storage blob used to hold the VM's OS disk image. If no name is provided, defaults to the VM name + '.vhd'. If you provide a name, it must end with '.vhd'" }, "managed_disk_type": { "type": "string", "description": "Managed OS disk type" }, "started": { "type": "string", "description": "Default: True\n\nUse with state 'present' to start the machine. Set to false to have the machine be 'stopped'." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the virtual machine.\nState 'present' will check that the machine exists with the requested configuration. If the configuration of the existing machine does not match, the machine will be updated. Use options started, allocated and restarted to change the machine's power state.\nState 'absent' will remove the virtual machine." }, "subnet_name": { "type": "string", "description": "When creating a virtual machine, if a network interface name is not provided, one will be created. The new network interface will be assigned to the first subnet found in the virtual network. Use this parameter to provide a specific subnet instead." }, "location": { "type": "string", "description": "Valid Azure location. Defaults to location of the resource group." }, "network_interface_names": { "type": "array", "description": "List of existing network interface names to add to the VM. If a network interface name is not provided when the VM is created, a default network interface will be created. In order for the module to create a network interface, at least one Virtual Network with one Subnet must exist." }, "admin_password": { "type": "string", "description": "Password for the admin username. Not required if the os_type is Linux and SSH password authentication is disabled by setting ssh_password_enabled to false." }, "subnet": { "type": "string", "description": "When creating a virtual machine, if a network interface name is not provided, one will be created. The new network interface will be assigned to the first subnet found in the virtual network. Use this parameter to provide a specific subnet instead." }, "virtual_network_name": { "type": "string", "description": "When creating a virtual machine, if a network interface name is not provided, one will be created. The new network interface will be assigned to the first virtual network found in the resource group. Use this parameter to provide a specific virtual network instead." }, "open_ports": { "type": "string", "description": "If a network interface is created when creating the VM, a security group will be created as well. For Linux hosts a rule will be added to the security group allowing inbound TCP connections to the default SSH port 22, and for Windows hosts ports 3389 and 5986 will be opened. Override the default open ports by providing a list of ports." }, "plan": { "type": "object", "description": "A dictionary describing a third-party billing plan for an instance" }, "vm_size": { "type": "string", "description": "A valid Azure VM size value. For example, 'Standard_D4'. The list of choices varies depending on the subscription and location. Check your subscription for available choices. Required when creating a VM." }, "name": { "type": "string", "description": "Name of the virtual machine." }, "restarted": { "type": "string", "description": "Use with state 'present' to restart a running VM." }, "admin_username": { "type": "string", "description": "Admin username used to access the host after it is created. Required when creating a VM." }, "custom_data": { "type": "string", "description": "Data which is made available to the virtual machine and used by e.g., cloud-init." }, "virtual_network": { "type": "string", "description": "When creating a virtual machine, if a network interface name is not provided, one will be created. The new network interface will be assigned to the first virtual network found in the resource group. Use this parameter to provide a specific virtual network instead." }, "os_type": { "type": "string", "description": "Default: ['Linux']\n\nBase type of operating system." }, "storage_account_name": { "type": "string", "description": "Name of an existing storage account that supports creation of VHD blobs. If not specified for a new VM, a new storage account named 01 will be created using storage type 'Standard_LRS'." }, "data_disks": { "type": "string", "description": "Describes list of data disks." }, "os_disk_caching": { "type": "string", "description": "Default: ReadOnly\n\nType of OS disk caching." } } }, "avi_wafprofile": { "required": [ "name", "config" ], "type": "object", "description": "This module is used to configure WafProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "files": { "type": "array", "description": "List of data files used for waf rules.\nField introduced in 17.2.1." }, "uuid": { "type": "string", "description": "Field introduced in 17.2.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "Field introduced in 17.2.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.2.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "config": { "type": "string", "description": "Config params for waf.\nField introduced in 17.2.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Field introduced in 17.2.1." } } }, "irc": { "required": [ "msg", "channel" ], "type": "object", "description": "Send a message to an IRC channel. This is a very simplistic implementation.", "properties": { "style": { "type": "string", "description": "Default: None\n\nText style for the message. Note italic does not work on some clients" }, "timeout": { "type": "string", "description": "Default: 30\n\nTimeout to use while waiting for successful registration and join messages, this is to prevent an endless loop" }, "nick": { "type": "string", "description": "Default: ansible\n\nNickname to send the message from. May be shortened, depending on server's NICKLEN setting." }, "passwd": { "type": "string", "description": "Server password" }, "server": { "type": "string", "description": "Default: localhost\n\nIRC server name/address" }, "topic": { "type": "string", "description": "Set the channel topic" }, "color": { "type": "string", "description": "Default: none\n\nText color for the message. (\"none\" is a valid option in 1.6 or later, in 1.6 and prior, the default color is black, not \"none\"). Added 11 more colors in version 2.0." }, "part": { "type": "string", "description": "Default: True\n\nDesignates whether user should part from channel after sending message or not. Useful for when using a faux bot and not wanting join/parts between messages." }, "nick_to": { "type": "string", "description": "A list of nicknames to send the message to. One of nick_to or channel needs to be set. When both are defined, the message will be sent to both of them." }, "key": { "type": "string", "description": "Channel key" }, "msg": { "type": "string", "description": "The message body." }, "use_ssl": { "type": "string", "description": "Designates whether TLS/SSL should be used when connecting to the IRC server" }, "port": { "type": "string", "description": "Default: 6667\n\nIRC server port number" }, "channel": { "type": "string", "description": "Channel name. One of nick_to or channel needs to be set. When both are set, the message will be sent to both of them." } } }, "os_project_access": { "required": [ "target_project_id" ], "type": "object", "description": "Add or remove flavor, volume_type or other resources access from OpenStack.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource." }, "resource_name": { "type": "string", "description": "The resource name (eg. tiny)." }, "target_project_id": { "type": "string", "description": "Project id." }, "resource_type": { "type": "string", "description": "The resource type (eg. nova_flavor, cinder_volume_type)." }, "availability_zone": { "type": "string", "description": "The availability zone of the resource." } } }, "import_role": { "required": [ "name" ], "type": "object", "description": "Much like the `roles:` keyword, this task loads a role, but it allows you to control it when the role tasks run in between other tasks of the play.\nMost keywords, loops and conditionals will only be applied to the imported tasks, not to this statement itself. If you want the opposite behavior, use M(include_role) instead. To better understand the difference you can read the L(Including and Importing Guide,../user_guide/playbooks_reuse_includes.html).", "properties": { "name": { "type": "string", "description": "The name of the role to be executed." }, "private": { "type": "string", "description": "Default: None\n\nIf C(True) the variables from C(defaults/) and C(vars/) in a role will not be made available to the rest of the play." }, "allow_duplicates": { "type": "string", "description": "Default: True\n\nOverrides the role's metadata setting to allow using a role more than once with the same parameters." }, "tasks_from": { "type": "string", "description": "Default: main\n\nFile to load from a role's C(tasks/) directory." }, "vars_from": { "type": "string", "description": "Default: main\n\nFile to load from a role's C(vars/) directory." }, "defaults_from": { "type": "string", "description": "Default: main\n\nFile to load from a role's C(defaults/) directory." } } }, "rabbitmq_queue": { "required": [ "name" ], "type": "object", "description": "This module uses rabbitMQ Rest API to create/delete queues", "properties": { "login_port": { "type": "string", "description": "Default: 15672\n\nrabbitMQ management api port" }, "dead_letter_exchange": { "type": "string", "description": "Default: None\n\nOptional name of an exchange to which messages will be republished if they\nare rejected or expire" }, "name": { "type": "string", "description": "Name of the queue to create" }, "login_user": { "type": "string", "description": "Default: guest\n\nrabbitMQ user for connection" }, "login_host": { "type": "string", "description": "Default: localhost\n\nrabbitMQ host for connection" }, "message_ttl": { "type": "string", "description": "Default: forever\n\nHow long a message can live in queue before it is discarded (milliseconds)" }, "vhost": { "type": "string", "description": "Default: /\n\nrabbitMQ virtual host" }, "state": { "type": "string", "description": "Default: present\n\nWhether the queue should be present or absent\nOnly present implemented atm" }, "max_length": { "type": "string", "description": "Default: no limit\n\nHow many messages can the queue contain before it starts rejecting" }, "arguments": { "type": "string", "description": "extra arguments for queue. If defined this argument is a key/value dictionary" }, "auto_delete": { "type": "string", "description": "if the queue should delete itself after all queues/queues unbound from it" }, "login_password": { "type": "string", "description": "rabbitMQ password for connection" }, "auto_expires": { "type": "string", "description": "Default: forever\n\nHow long a queue can be unused before it is automatically deleted (milliseconds)" }, "dead_letter_routing_key": { "type": "string", "description": "Default: None\n\nOptional replacement routing key to use when a message is dead-lettered.\nOriginal routing key will be used if unset" }, "durable": { "type": "string", "description": "Default: True\n\nwhether queue is durable or not" } } }, "bigip_monitor_tcp": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM tcp monitors via iControl SOAP API.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/tcp\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(tcp) parent on the C(Common) partition." }, "receive": { "type": "string", "description": "The receive string for the monitor call." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'.\nIf this value is an IP address, and the C(type) is C(tcp) (the default), then a C(port) number must be specified." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "send": { "type": "string", "description": "The send string for the monitor call." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." }, "port": { "type": "string", "description": "Port address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'. Note that if specifying an IP address, a value between 1 and 65535 must be specified\nThis argument is not supported for TCP Echo types." } } }, "bigip_ssl_key": { "allOf": [ { "allOf": [ { "not": { "required": [ "content", "key_content" ], "type": "object" } } ] } ], "type": "object", "description": "This module will import/delete SSL keys on a BIG-IP. Keys can be imported from key files on the local disk, in PEM format.", "properties": { "name": { "type": "string", "description": "The name of the key." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "content": { "type": "string", "description": "Sets the contents of a key directly to the specified value. This is used with lookup plugins or for anything with formatting or templating. This must be provided when C(state) is C(present)." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the key is uploaded to the device. When C(absent), ensures that the key is removed from the device. If the key is currently in use, the module will not be able to remove the key." }, "passphrase": { "type": "string", "description": "Passphrase on key." }, "key_content": { "type": "string", "description": "Sets the contents of a key directly to the specified value. This is used with lookup plugins or for anything with formatting or templating. This must be provided when C(state) is C(present)." } } }, "bigip_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "pool" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "pool" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages F5 BIG-IP LTM pools via iControl REST API.", "properties": { "lb_method": { "type": "string", "description": "Load balancing method. When creating a new pool, if this value is not specified, the default of C(round-robin) will be used." }, "description": { "type": "string", "description": "Specifies descriptive text that identifies the pool." }, "name": { "type": "string", "description": "Pool name" }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "slow_ramp_time": { "type": "string", "description": "Sets the ramp-up time (in seconds) to gradually ramp up the load on newly added or freshly detected up pool members." }, "service_down_action": { "type": "string", "description": "Sets the action to take when node goes down in pool." }, "reselect_tries": { "type": "string", "description": "Sets the number of times the system tries to contact a pool member after a passive failure." }, "monitor_type": { "type": "string", "description": "Monitor rule type when C(monitors) is specified.\nWhen creating a new pool, if this value is not specified, the default of 'and_list' will be used.\nWhen C(single) ensures that all specified monitors are checked, but additionally includes checks to make sure you only specified a single monitor.\nWhen C(and_list) ensures that B(all) monitors are checked.\nWhen C(m_of_n) ensures that C(quorum) of C(monitors) are checked. C(m_of_n) B(requires) that a C(quorum) of 1 or greater be set either in the playbook, or already existing on the device.\nBoth C(single) and C(and_list) are functionally identical since BIG-IP considers all monitors as \"a list\"." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), guarantees that the pool exists with the provided attributes.\nWhen C(absent), removes the pool from the system." }, "metadata": { "type": "string", "description": "Arbitrary key/value pairs that you can attach to a pool. This is useful in situations where you might want to annotate a pool to me managed by Ansible.\nKey names will be stored as strings; this includes names that are numbers.\nValues for all of the keys will be stored as strings; this includes values that are numbers.\nData will be persisted, not ephemeral." }, "monitors": { "type": "string", "description": "Monitor template name list. If the partition is not provided as part of the monitor name, then the C(partition) option will be used instead." }, "pool": { "type": "string", "description": "Pool name" }, "quorum": { "type": "string", "description": "Monitor quorum value when C(monitor_type) is C(m_of_n).\nQuorum must be a value of 1 or greater when C(monitor_type) is C(m_of_n)." } } }, "panos_restart": { "required": [ "password", "ip_address" ], "type": "object", "description": "Restart a device", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "nxos_vpc_interface": { "required": [ "state", "portchannel" ], "type": "object", "description": "Manages interface VPC configuration", "properties": { "peer_link": { "type": "string", "description": "Set to true/false for peer link config on associated portchannel." }, "state": { "type": "string", "description": "Manages desired state of the resource." }, "portchannel": { "type": "string", "description": "Group number of the portchannel that will be configured." }, "vpc": { "type": "string", "description": "VPC group/id that will be configured on associated portchannel." } } }, "os_ironic_node": { "type": "object", "description": "Deploy to nodes controlled by Ironic.", "properties": { "timeout": { "type": "string", "description": "An integer value representing the number of seconds to wait for the node activation or deactivation to complete." }, "uuid": { "type": "string", "description": "Default: None\n\nglobally unique identifier (UUID) to be given to the resource." }, "power": { "type": "string", "description": "Default: present\n\nA setting to allow power state to be asserted allowing nodes that are not yet deployed to be powered on, and nodes that are deployed to be powered off." }, "deploy": { "type": "string", "description": "Default: True\n\nIndicates if the resource should be deployed. Allows for deployment logic to be disengaged and control of the node power or maintenance state to be changed." }, "ironic_url": { "type": "string", "description": "Default: None\n\nIf noauth mode is utilized, this is required to be set to the endpoint URL for the Ironic API. Use with \"auth\" and \"auth_type\" settings set to None." }, "maintenance_reason": { "type": "string", "description": "Default: None\n\nA string expression regarding the reason a node is in a maintenance mode." }, "state": { "type": "string", "description": "Default: present\n\nIndicates desired state of the resource" }, "maintenance": { "type": "string", "description": "A setting to allow the direct control if a node is in maintenance mode." }, "wait": { "type": "string", "description": "A boolean value instructing the module to wait for node activation or deactivation to complete before returning." }, "instance_info": { "type": "string", "description": "Definition of the instance information which is used to deploy the node. This information is only required when an instance is set to present." }, "config_drive": { "type": "string", "description": "Default: None\n\nA configdrive file or HTTP(S) URL that will be passed along to the node." } } }, "ios_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an ios node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(ios_config) to configure IOS devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote ios device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "junos_l2_interface": { "type": "object", "description": "This module provides declarative management of Layer-2 interface on Juniper JUNOS network devices.", "properties": { "native_vlan": { "type": "string", "description": "Native VLAN to be configured in trunk port. The value of C(native_vlan) should be vlan id." }, "access_vlan": { "type": "string", "description": "Configure given VLAN in access port. The value of C(access_vlan) should be vlan name." }, "name": { "type": "string", "description": "Name of the interface excluding any logical unit number." }, "state": { "type": "string", "description": "Default: present\n\nState of the Layer-2 Interface configuration." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "trunk_vlans": { "type": "array", "description": "List of VLAN names to be configured in trunk port. The value of C(trunk_vlans) should be list of vlan names." }, "mode": { "type": "string", "description": "Mode in which interface needs to be configured." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." }, "unit": { "type": "string", "description": "Logical interface number. Value of C(unit) should be of type integer." }, "description": { "type": "string", "description": "Description of Interface." } } }, "vmware_vm_vm_drs_rule": { "required": [ "cluster_name", "drs_rule_name" ], "type": "object", "description": "This module can be used to configure VMware DRS Affinity rule for virtual machine in given cluster.", "properties": { "drs_rule_name": { "type": "string", "description": "The name of the DRS rule to manage." }, "mandatory": { "description": "If set to C(True), the DRS rule will be mandatory.\nEffective only if C(state) is set to C(present).", "$ref": "#/definitions/ansible_truth" }, "affinity_rule": { "description": "Default: True\n\nIf set to C(True), the DRS rule will be an Affinity rule.\nIf set to C(False), the DRS rule will be an Anti-Affinity rule.\nEffective only if C(state) is set to C(present).", "$ref": "#/definitions/ansible_truth" }, "enabled": { "description": "If set to C(True), the DRS rule will be enabled.\nEffective only if C(state) is set to C(present).", "$ref": "#/definitions/ansible_truth" }, "cluster_name": { "type": "string", "description": "Desired cluster name where virtual machines are present for the DRS rule." }, "state": { "type": "string", "description": "Default: present\n\nIf set to C(present), then the DRS rule is created if not present.\nIf set to C(present), then the DRS rule is deleted and created if present already.\nIf set to C(absent), then the DRS rule is deleted if present." }, "vms": { "type": "array", "description": "List of virtual machines name for which DRS rule needs to be applied.\nRequired if C(state) is set to C(present)." } } }, "aws_s3": { "allOf": [ { "allOf": [ { "not": { "required": [ "overwrite", "force" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_secret_key", "ec2_secret_key", "secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_access_key", "ec2_access_key", "access_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "s3_url", "S3_URL" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows the user to manage S3 buckets and the objects within them. Includes support for creating and deleting both objects and buckets, retrieving objects as files or strings and generating download links. This module has a dependency on boto3 and botocore.", "properties": { "force": { "type": "string", "description": "Default: always\n\nForce overwrite either locally on the filesystem or remotely with the object/key. Used with PUT and GET operations. Boolean or one of [always, never, different], true is equal to 'always' and false is equal to 'never', new in 2.0. When this is set to 'different', the md5 sum of the local file is compared with the 'ETag' of the object/key in S3. The ETag may or may not be an MD5 digest of the object data. See the ETag response header here U(http://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonResponseHeaders.html)" }, "mode": { "type": "string", "description": "Switches the module behaviour between put (upload), get (download), geturl (return download url, Ansible 1.3+), getstr (download object as string (1.3+)), list (list keys, Ansible 2.0+), create (bucket), delete (bucket), and delobj (delete object, Ansible 2.0+)." }, "prefix": { "type": "string", "description": "Limits the response to keys that begin with the specified prefix for list mode" }, "marker": { "type": "string", "description": "Specifies the key to start with when using list mode. Object keys are returned in alphabetical order, starting with key after the marker in order." }, "ignore_nonexistent_bucket": { "type": "string", "description": "Overrides initial bucket lookups in case bucket or iam policies are restrictive. Example: a user may have the GetObject permission but no other permissions. In this case using the option mode: get will fail without specifying ignore_nonexistent_bucket: True." }, "overwrite": { "type": "string", "description": "Default: always\n\nForce overwrite either locally on the filesystem or remotely with the object/key. Used with PUT and GET operations. Boolean or one of [always, never, different], true is equal to 'always' and false is equal to 'never', new in 2.0. When this is set to 'different', the md5 sum of the local file is compared with the 'ETag' of the object/key in S3. The ETag may or may not be an MD5 digest of the object data. See the ETag response header here U(http://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonResponseHeaders.html)" }, "aws_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "encrypt": { "type": "string", "description": "Default: True\n\nWhen set for PUT mode, asks for server-side encryption." }, "rgw": { "type": "string", "description": "Enable Ceph RGW S3 support. This option requires an explicit url via s3_url." }, "retries": { "type": "string", "description": "On recoverable failure, how many times to retry before actually failing." }, "max_keys": { "type": "string", "description": "Default: 1000\n\nMax number of results to return in list mode, set this if you want to retrieve fewer than the default 1000 keys." }, "version": { "type": "string", "description": "Version ID of the object inside the bucket. Can be used to get a specific version of a file if versioning is enabled in the target bucket." }, "s3_url": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "metadata": { "type": "string", "description": "Metadata for PUT operation, as a dictionary of 'key=value' and 'key=value,key=value'." }, "permission": { "type": "string", "description": "Default: private\n\nThis option lets the user set the canned permissions on the object/bucket that are created. The permissions that can be set are 'private', 'public-read', 'public-read-write', 'authenticated-read' for a bucket or 'private', 'public-read', 'public-read-write', 'aws-exec-read', 'authenticated-read', 'bucket-owner-read', 'bucket-owner-full-control' for an object. Multiple permissions can be specified as a list." }, "dest": { "type": "string", "description": "The destination file path when downloading an object/key with a GET operation." }, "object": { "type": "string", "description": "Keyname of the object inside the bucket. Can be used to create \"virtual directories\", see examples." }, "ec2_access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "ec2_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "S3_URL": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "src": { "type": "string", "description": "The source file path when performing a PUT operation." }, "aws_access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "region": { "type": "string", "description": "AWS region to create the bucket in. If not set then the value of the AWS_REGION and EC2_REGION environment variables are checked, followed by the aws_region and ec2_region settings in the Boto config file. If none of those are set the region defaults to the S3 Location: US Standard. Prior to ansible 1.8 this parameter could be specified but had no effect." }, "bucket": { "type": "string", "description": "Bucket name." }, "headers": { "type": "string", "description": "Custom headers for PUT operation, as a dictionary of 'key=value' and 'key=value,key=value'." }, "expiration": { "type": "string", "description": "Default: 600\n\nTime limit (in seconds) for the URL generated and returned by S3/Walrus when performing a mode=put or mode=geturl operation." }, "secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." } } }, "aci_aaa_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "aaa_user", "name", "user" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage AAA users on Cisco ACI fabrics.", "properties": { "first_name": { "type": "string", "description": "The first name of the locally-authenticated user." }, "aaa_user": { "type": "string", "description": "The name of the locally-authenticated user user to add." }, "description": { "type": "string", "description": "Description for the AAA user." }, "descr": { "type": "string", "description": "Description for the AAA user." }, "phone": { "type": "string", "description": "The phone number of the locally-authenticated user." }, "expiration": { "type": "string", "description": "The expiration date of the locally-authenticated user account." }, "expires": { "description": "Whether to enable an expiration date for the locally-authenticated user account.", "$ref": "#/definitions/ansible_truth" }, "enabled": { "description": "The status of the locally-authenticated user account.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "email": { "type": "string", "description": "The email address of the locally-authenticated user." }, "aaa_password_update_required": { "description": "Whether this account needs password update.", "$ref": "#/definitions/ansible_truth" }, "clear_password_history": { "description": "Whether to clear the password history of a locally-authenticated user.", "$ref": "#/definitions/ansible_truth" }, "last_name": { "type": "string", "description": "The last name of the locally-authenticated user." }, "user": { "type": "string", "description": "The name of the locally-authenticated user user to add." }, "aaa_password_lifetime": { "type": "string", "description": "The lifetime of the locally-authenticated user password." }, "aaa_password": { "type": "string", "description": "The password of the locally-authenticated user." }, "name": { "type": "string", "description": "The name of the locally-authenticated user user to add." } } }, "ovirt_vms": { "allOf": [ { "allOf": [ { "not": { "required": [ "cloud_init_persist", "sysprep_persist" ], "type": "object" } } ] } ], "type": "object", "description": "This module manages whole lifecycle of the Virtual Machine(VM) in oVirt/RHV.\nSince VM can hold many states in oVirt/RHV, this see notes to see how the states of the VM are handled.", "properties": { "comment": { "type": "string", "description": "Comment of the Virtual Machine." }, "graphical_console": { "type": "string", "description": "Assign graphical console to the virtual machine.\nGraphical console is a dictionary which can have following values:\nC(headless_mode) - If I(true) disable the graphics console for this virtual machine.\nC(protocol) - Graphical protocol, one of I(VNC), I(SPICE), or both." }, "cpu_pinning": { "type": "string", "description": "CPU Pinning topology to map virtual machine CPU to host CPU.\nCPU Pinning topology is a list of dictionary which can have following values:\nC(cpu) - Number of the host CPU.\nC(vcpu) - Number of the virtual machine CPU." }, "force": { "description": "Default: no\n\nPlease check to I(Synopsis) to more detailed description of force parameter, it can behave differently in different situations.", "$ref": "#/definitions/ansible_truth" }, "cloud_init_nics": { "type": "array", "description": "List of dictionaries representing network interafaces to be setup by cloud init.\nThis option is used, when user needs to setup more network interfaces via cloud init.\nIf one network interface is enough, user should use C(cloud_init) I(nic_*) parameters. C(cloud_init) I(nic_*) parameters are merged with C(cloud_init_nics) parameters.\nDictionary can contain following values.\nC(nic_boot_protocol) - Set boot protocol of the network interface of Virtual Machine. Can be one of C(none), C(dhcp) or C(static).\nC(nic_ip_address) - If boot protocol is static, set this IP address to network interface of Virtual Machine.\nC(nic_netmask) - If boot protocol is static, set this netmask to network interface of Virtual Machine.\nC(nic_gateway) - If boot protocol is static, set this gateway to network interface of Virtual Machine.\nC(nic_name) - Set name to network interface of Virtual Machine.\nC(nic_on_boot) - If I(True) network interface will be set to start on boot." }, "placement_policy": { "type": "string", "description": "The configuration of the virtual machine's placement policy.\nPlacement policy can be one of the following values:\nC(migratable) - Allow manual and automatic migration.\nC(pinned) - Do not allow migration.\nC(user_migratable) - Allow manual migration only.\nIf no value is passed, default value is set by oVirt/RHV engine." }, "boot_menu": { "type": "string", "description": "I(True) enable menu to select boot device, I(False) to disable it. By default is chosen by oVirt/RHV engine." }, "xen": { "type": "object", "description": "Dictionary of values to be used to connect to XEN and import a virtual machine to oVirt.\nDictionary can contain following values.\nC(url) - The URL to be passed to the I(virt-v2v) tool for conversion. For example I(xen+ssh://root@zen.server). This is required parameter.\nC(drivers_iso) - The name of the ISO containing drivers that can be used during the I(virt-v2v) conversion process.\nC(sparse) - Specifies the disk allocation policy of the resulting virtual machine. I(true) for sparse, I(false) for preallocated. Default value is I(true).\nC(storage_domain) - Specifies the target storage domain for converted disks. This is required parameter." }, "usb_support": { "type": "string", "description": "I(True) enable USB support, I(False) to disable it. By default is chosen by oVirt/RHV engine." }, "template_version": { "type": "string", "description": "Version number of the template to be used for VM.\nBy default the latest available version of the template is used." }, "cluster": { "type": "string", "description": "Name of the cluster, where Virtual Machine should be created.\nRequired if creating VM." }, "io_threads": { "type": "string", "description": "Number of IO threads used by virtual machine. I(0) means IO threading disabled." }, "timezone": { "type": "string", "description": "Sets time zone offset of the guest hardware clock.\nFor example C(Etc/GMT)" }, "watchdog": { "type": "string", "description": "Assign watchdog device for the virtual machine.\nWatchdogs is a dictionary which can have following values:\nC(model) - Model of the watchdog device. For example: I(i6300esb), I(diag288) or I(null).\nC(action) - Watchdog action to be performed when watchdog is triggered. For example: I(none), I(reset), I(poweroff), I(pause) or I(dump)." }, "instance_type": { "type": "string", "description": "Name of virtual machine's hardware configuration.\nBy default no instance type is used." }, "memory_max": { "type": "string", "description": "Upper bound of virtual machine memory up to which memory hot-plug can be performed. Prefix uses IEC 60027-2 standard (for example 1GiB, 1024MiB).\nDefault value is set by engine." }, "id": { "type": "string", "description": "ID of the Virtual Machine to manage." }, "cpu_sockets": { "type": "string", "description": "Number of virtual CPUs sockets of the Virtual Machine.\nDefault value is set by oVirt/RHV engine." }, "high_availability": { "description": "If I(yes) Virtual Machine will be set as highly available.\nIf I(no) Virtual Machine won't be set as highly available.\nIf no value is passed, default value is set by oVirt/RHV engine.", "$ref": "#/definitions/ansible_truth" }, "storage_domain": { "type": "string", "description": "Name of the storage domain where all template disks should be created.\nThis parameter is considered only when C(template) is provided.\nIMPORTANT - This parameter is not idempotent, if the VM exists and you specfiy different storage domain, disk won't move." }, "domain_mappings": { "type": "string", "description": "Mapper which maps aaa domain name between VM's OVF and the destination aaa domain this VM should be registered to, relevant when C(state) is registered. The aaa domain mapping is described by the following dictionary:\nC(source_name): The name of the source aaa domain.\nC(dest_name): The name of the destination aaa domain." }, "high_availability_priority": { "type": "string", "description": "Indicates the priority of the virtual machine inside the run and migration queues. Virtual machines with higher priorities will be started and migrated before virtual machines with lower priorities. The value is an integer between 0 and 100. The higher the value, the higher the priority.\nIf no value is passed, default value is set by oVirt/RHV engine." }, "nics": { "type": "array", "description": "List of NICs, which should be attached to Virtual Machine. NIC is described by following dictionary.\nC(name) - Name of the NIC.\nC(profile_name) - Profile name where NIC should be attached.\nC(interface) - Type of the network interface. One of following I(virtio), I(e1000), I(rtl8139), default is I(virtio).\nC(mac_address) - Custom MAC address of the network interface, by default it's obtained from MAC pool.\nNOTE - This parameter is used only when C(state) is I(running) or I(present) and is able to only create NICs. To manage NICs of the VM in more depth please use M(ovirt_nics) module instead." }, "custom_properties": { "type": "string", "description": "Properties sent to VDSM to configure various hooks.\nCustom properties is a list of dictionary which can have following values:\nC(name) - Name of the custom property. For example: I(hugepages), I(vhost), I(sap_agent), etc.\nC(regexp) - Regular expression to set for custom property.\nC(value) - Value to set for custom property." }, "boot_devices": { "type": "array", "description": "List of boot devices which should be used to boot. For example C([ cdrom, hd ]).\nDefault value is set by oVirt/RHV engine." }, "disk_format": { "type": "string", "description": "Default: cow\n\nSpecify format of the disk.\nIf C(cow) format is used, disk will by created as sparse, so space will be allocated for the volume as needed, also known as I(thin provision).\nIf C(raw) format is used, disk storage will be allocated right away, also known as I(preallocated).\nNote that this option isn't idempotent as it's not currently possible to change format of the disk via API.\nThis parameter is considered only when C(template) and C(storage domain) is provided." }, "sysprep": { "type": "object", "description": "Dictionary with values for Windows Virtual Machine initialization using sysprep.\nC(host_name) - Hostname to be set to Virtual Machine when deployed.\nC(active_directory_ou) - Active Directory Organizational Unit, to be used for login of user.\nC(org_name) - Organization name to be set to Windows Virtual Machine.\nC(domain) - Domain to be set to Windows Virtual Machine.\nC(timezone) - Timezone to be set to Windows Virtual Machine.\nC(ui_language) - UI language of the Windows Virtual Machine.\nC(system_locale) - System localization of the Windows Virtual Machine.\nC(input_locale) - Input localization of the Windows Virtual Machine.\nC(windows_license_key) - License key to be set to Windows Virtual Machine.\nC(user_name) - Username to be used for set password to Windows Virtual Machine.\nC(root_password) - Password to be set for username to Windows Virtual Machine." }, "cpu_cores": { "type": "string", "description": "Number of virtual CPUs cores of the Virtual Machine.\nDefault value is set by oVirt/RHV engine." }, "ballooning_enabled": { "type": "string", "description": "If I(true), use memory ballooning.\nMemory balloon is a guest device, which may be used to re-distribute / reclaim the host memory based on VM needs in a dynamic way. In this way it's possible to create memory over commitment states." }, "cpu_mode": { "type": "string", "description": "CPU mode of the virtual machine. It can be some of the following: I(host_passthrough), I(host_model) or I(custom).\nFor I(host_passthrough) CPU type you need to set C(placement_policy) to I(pinned).\nIf no value is passed, default value is set by oVirt/RHV engine." }, "state": { "type": "string", "description": "Default: present\n\nShould the Virtual Machine be running/stopped/present/absent/suspended/next_run/registered. When C(state) is I(registered) and the unregistered VM's name belongs to an already registered in engine VM in the same DC then we fail to register the unregistered template.\nI(present) state will create/update VM and don't change its state if it already exists.\nI(running) state will create/update VM and start it.\nI(next_run) state updates the VM and if the VM has next run configuration it will be rebooted.\nPlease check I(notes) to more detailed description of states.\nI(registered) is supported since 2.4." }, "vmware": { "type": "object", "description": "Dictionary of values to be used to connect to VMware and import a virtual machine to oVirt.\nDictionary can contain following values.\nC(username) - The username to authenticate against the VMware.\nC(password) - The password to authenticate against the VMware.\nC(url) - The URL to be passed to the I(virt-v2v) tool for conversion. For example I(vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1)\nC(drivers_iso) - The name of the ISO containing drivers that can be used during the I(virt-v2v) conversion process.\nC(sparse) - Specifies the disk allocation policy of the resulting virtual machine. I(true) for sparse, I(false) for preallocated. Default value is I(true).\nC(storage_domain) - Specifies the target storage domain for converted disks. This is required parameter." }, "template": { "type": "string", "description": "Name of the template, which should be used to create Virtual Machine.\nRequired if creating VM.\nIf template is not specified and VM doesn't exist, VM will be created from I(Blank) template." }, "memory": { "type": "string", "description": "Amount of memory of the Virtual Machine. Prefix uses IEC 60027-2 standard (for example 1GiB, 1024MiB).\nDefault value is set by engine." }, "cd_iso": { "type": "string", "description": "ISO file from ISO storage domain which should be attached to Virtual Machine.\nIf you pass empty string the CD will be ejected from VM.\nIf used with C(state) I(running) or I(present) and VM is running the CD will be attached to VM.\nIf used with C(state) I(running) or I(present) and VM is down the CD will be attached to VM persistently." }, "clone_permissions": { "description": "Default: no\n\nIf I(yes) then the permissions of the template (only the direct ones, not the inherited ones) will be copied to the created virtual machine.\nThis parameter is used only when C(state) is I(running) or I(present) and VM didn't exist before.", "$ref": "#/definitions/ansible_truth" }, "type": { "type": "string", "description": "Type of the Virtual Machine.\nDefault value is set by oVirt/RHV engine.\nI(high_performance) is supported since Ansible 2.5 and oVirt/RHV 4.2." }, "initrd_path": { "type": "string", "description": "Path to an initial ramdisk to be used with the kernel specified by C(kernel_path) option.\nRamdisk image must be stored on either the ISO domain or on the host's storage." }, "lease": { "type": "string", "description": "Name of the storage domain this virtual machine lease reside on.\nNOTE - Supported since oVirt 4.1." }, "rng_device": { "type": "string", "description": "Random number generator (RNG). You can choose of one the following devices I(urandom), I(random) or I(hwrng).\nIn order to select I(hwrng), you must have it enabled on cluster first.\n/dev/urandom is used for cluster version >= 4.1, and /dev/random for cluster version <= 4.0" }, "disks": { "type": "array", "description": "List of disks, which should be attached to Virtual Machine. Disk is described by following dictionary.\nC(name) - Name of the disk. Either C(name) or C(id) is reuqired.\nC(id) - ID of the disk. Either C(name) or C(id) is reuqired.\nC(interface) - Interface of the disk, either I(virtio) or I(IDE), default is I(virtio).\nC(bootable) - I(True) if the disk should be bootable, default is non bootable.\nC(activate) - I(True) if the disk should be activated, default is activated.\nNOTE - This parameter is used only when C(state) is I(running) or I(present) and is able to only attach disks. To manage disks of the VM in more depth please use M(ovirt_disks) module instead." }, "vnic_profile_mappings": { "type": "string", "description": "Mapper which maps an external virtual NIC profile to one that exists in the engine when C(state) is registered. vnic_profile is described by the following dictionary:\nC(source_network_name): The network name of the source network.\nC(source_profile_name): The prfile name related to the source network.\nC(target_profile_id): The id of the target profile id to be mapped to in the engine." }, "stateless": { "type": "string", "description": "If I(yes) Virtual Machine will be set as stateless.\nIf I(no) Virtual Machine will be unset as stateless.\nIf no value is passed, default value is set by oVirt/RHV engine." }, "lun_mappings": { "type": "string", "description": "Mapper which maps lun between VM's OVF and the destination lun this VM should contain, relevant when C(state) is registered. lun_mappings is described by the following dictionary: - C(logical_unit_id): The logical unit number to identify a logical unit, - C(logical_unit_port): The port being used to connect with the LUN disk. - C(logical_unit_portal): The portal being used to connect with the LUN disk. - C(logical_unit_address): The address of the block storage host. - C(logical_unit_target): The iSCSI specification located on an iSCSI server - C(logical_unit_username): Username to be used to connect to the block storage host. - C(logical_unit_password): Password to be used to connect to the block storage host. - C(storage_type): The storage type which the LUN reside on (iscsi or fcp)" }, "clone": { "description": "Default: no\n\nIf I(yes) then the disks of the created virtual machine will be cloned and independent of the template.\nThis parameter is used only when C(state) is I(running) or I(present) and VM didn't exist before.", "$ref": "#/definitions/ansible_truth" }, "kvm": { "type": "object", "description": "Dictionary of values to be used to connect to kvm and import a virtual machine to oVirt.\nDictionary can contain following values.\nC(name) - The name of the KVM virtual machine.\nC(username) - The username to authenticate against the KVM.\nC(password) - The password to authenticate against the KVM.\nC(url) - The URL to be passed to the I(virt-v2v) tool for conversion. For example I(qemu:///system). This is required parameter.\nC(drivers_iso) - The name of the ISO containing drivers that can be used during the I(virt-v2v) conversion process.\nC(sparse) - Specifies the disk allocation policy of the resulting virtual machine. I(true) for sparse, I(false) for preallocated. Default value is I(true).\nC(storage_domain) - Specifies the target storage domain for converted disks. This is required parameter." }, "serial_console": { "type": "string", "description": "I(True) enable VirtIO serial console, I(False) to disable it. By default is chosen by oVirt/RHV engine." }, "sso": { "type": "string", "description": "I(True) enable Single Sign On by Guest Agent, I(False) to disable it. By default is chosen by oVirt/RHV engine." }, "role_mappings": { "type": "string", "description": "Mapper which maps role name between VM's OVF and the destination role this VM should be registered to, relevant when C(state) is registered. Role mapping is described by the following dictionary:\nC(source_name): The name of the source role.\nC(dest_name): The name of the destination role." }, "serial_policy": { "type": "string", "description": "Specify a serial number policy for the Virtual Machine.\nFollowing options are supported.\nC(vm) - Sets the Virtual Machine's UUID as its serial number.\nC(host) - Sets the host's UUID as the Virtual Machine's serial number.\nC(custom) - Allows you to specify a custom serial number in C(serial_policy_value)." }, "cpu_threads": { "type": "string", "description": "Number of virtual CPUs sockets of the Virtual Machine.\nDefault value is set by oVirt/RHV engine." }, "quota_id": { "type": "string", "description": "Virtual Machine quota ID to be used for disk. By default quota is chosen by oVirt/RHV engine." }, "soundcard_enabled": { "type": "string", "description": "If I(true), the sound card is added to the virtual machine." }, "affinity_label_mappings": { "type": "string", "description": "Mappper which maps affinity label name between VM's OVF and the destination label this VM should be registered to, relevant when C(state) is registered." }, "sysprep_persist": { "type": "string", "description": "If I(true) the C(cloud_init) or C(sysprep) parameters will be saved for the virtual machine and won't be virtual machine won't be started as run-once." }, "delete_protected": { "type": "string", "description": "If I(yes) Virtual Machine will be set as delete protected.\nIf I(no) Virtual Machine won't be set as delete protected.\nIf no value is passed, default value is set by oVirt/RHV engine." }, "cloud_init_persist": { "type": "string", "description": "If I(true) the C(cloud_init) or C(sysprep) parameters will be saved for the virtual machine and won't be virtual machine won't be started as run-once." }, "use_latest_template_version": { "description": "Specify if latest template version should be used, when running a stateless VM.\nIf this parameter is set to I(yes) stateless VM is created.", "$ref": "#/definitions/ansible_truth" }, "affinity_group_mappings": { "type": "string", "description": "Mapper which maps affinty name between VM's OVF and the destination affinity this VM should be registered to, relevant when C(state) is registered." }, "operating_system": { "type": "string", "description": "Operating system of the Virtual Machine.\nDefault value is set by oVirt/RHV engine." }, "serial_policy_value": { "type": "string", "description": "Allows you to specify a custom serial number.\nThis parameter is used only when C(serial_policy) is I(custom)." }, "name": { "type": "string", "description": "Name of the Virtual Machine to manage.\nIf VM don't exists C(name) is required. Otherwise C(id) or C(name) can be used." }, "kernel_path": { "type": "string", "description": "Path to a kernel image used to boot the virtual machine.\nKernel image must be stored on either the ISO domain or on the host's storage." }, "cloud_init": { "type": "object", "description": "Dictionary with values for Unix-like Virtual Machine initialization using cloud init.\nC(host_name) - Hostname to be set to Virtual Machine when deployed.\nC(timezone) - Timezone to be set to Virtual Machine when deployed.\nC(user_name) - Username to be used to set password to Virtual Machine when deployed.\nC(root_password) - Password to be set for user specified by C(user_name) parameter.\nC(authorized_ssh_keys) - Use this SSH keys to login to Virtual Machine.\nC(regenerate_ssh_keys) - If I(True) SSH keys will be regenerated on Virtual Machine.\nC(custom_script) - Cloud-init script which will be executed on Virtual Machine when deployed. This is appended to the end of the cloud-init script generated by any other options.\nC(dns_servers) - DNS servers to be configured on Virtual Machine.\nC(dns_search) - DNS search domains to be configured on Virtual Machine.\nC(nic_boot_protocol) - Set boot protocol of the network interface of Virtual Machine. Can be one of C(none), C(dhcp) or C(static).\nC(nic_ip_address) - If boot protocol is static, set this IP address to network interface of Virtual Machine.\nC(nic_netmask) - If boot protocol is static, set this netmask to network interface of Virtual Machine.\nC(nic_gateway) - If boot protocol is static, set this gateway to network interface of Virtual Machine.\nC(nic_name) - Set name to network interface of Virtual Machine.\nC(nic_on_boot) - If I(True) network interface will be set to start on boot." }, "memory_guaranteed": { "type": "string", "description": "Amount of minimal guaranteed memory of the Virtual Machine. Prefix uses IEC 60027-2 standard (for example 1GiB, 1024MiB).\nC(memory_guaranteed) parameter can't be lower than C(memory) parameter.\nDefault value is set by engine." }, "host": { "type": "string", "description": "Specify host where Virtual Machine should be running. By default the host is chosen by engine scheduler.\nThis parameter is used only when C(state) is I(running) or I(present)." }, "kernel_params": { "type": "string", "description": "Kernel command line parameters (formatted as string) to be used with the kernel specified by C(kernel_path) option." }, "reassign_bad_macs": { "type": "string", "description": "Boolean indication whether to reassign bad macs when C(state) is registered." }, "smartcard_enabled": { "type": "string", "description": "If I(true), use smart card authentication." }, "description": { "type": "string", "description": "Description of the Virtual Machine." }, "cluster_mappings": { "type": "string", "description": "Mapper which maps cluster name between VM's OVF and the destination cluster this VM should be registered to, relevant when C(state) is registered. Cluster mapping is described by the following dictionary:\nC(source_name): The name of the source cluster.\nC(dest_name): The name of the destination cluster." }, "allow_partial_import": { "type": "string", "description": "Boolean indication whether to allow partial registration of Virtual Machine when C(state) is registered." }, "cpu_shares": { "type": "string", "description": "Set a CPU shares for this Virtual Machine.\nDefault value is set by oVirt/RHV engine." } } }, "pkgutil": { "required": [ "state", "name" ], "type": "object", "description": "Manages CSW packages (SVR4 format) on Solaris 10 and 11.\nThese were the native packages on Solaris <= 10 and are available as a legacy feature in Solaris 11.\nPkgutil is an advanced packaging system, which resolves dependency on installation. It is designed for CSW packages.", "properties": { "state": { "type": "string", "description": "Whether to install (C(present)), or remove (C(absent)) a package.\nThe upgrade (C(latest)) operation will update/install the package to the latest version available.\nNote: The module has a limitation that (C(latest)) only works for one package, not lists of them." }, "site": { "type": "string", "description": "Specifies the repository path to install the package from.\nIts global definition is done in C(/etc/opt/csw/pkgutil.conf)." }, "name": { "type": "string", "description": "Package name, e.g. (C(CSWnrpe))" }, "update_catalog": { "type": "string", "description": "If you want to refresh your catalog from the mirror, set this to (C(yes))." } } }, "win_copy": { "required": [ "dest" ], "type": "object", "description": "The M(win_copy) module copies a file on the local box to remote windows locations.", "properties": { "dest": { "type": "string", "description": "Remote absolute path where the file should be copied to. If src is a directory, this must be a directory too. Use \\ for path separators." }, "src": { "type": "string", "description": "Local path to a file to copy to the remote server; can be absolute or relative. If path is a directory, it is copied recursively. In this case, if path ends with \"/\", only inside contents of that directory are copied to destination. Otherwise, if it does not end with \"/\", the directory itself with all contents is copied. This behavior is similar to Rsync." } } }, "boundary_meter": { "required": [ "apikey", "apiid", "name" ], "type": "object", "description": "This module manages boundary meters", "properties": { "state": { "type": "string", "description": "Default: True\n\nWhether to create or remove the client from boundary" }, "apikey": { "type": "string", "description": "Organizations boundary API KEY" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "apiid": { "type": "string", "description": "Organizations boundary API ID" }, "name": { "type": "string", "description": "meter name" } } }, "ce_bfd_session": { "required": [ "session_name" ], "type": "object", "description": "Manages BFD session configuration, creates a BFD session or deletes a specified BFD session on HUAWEI CloudEngine devices.", "properties": { "src_addr": { "type": "string", "description": "Indicates the source IP address carried in BFD packets." }, "out_if_name": { "type": "string", "description": "Specifies the type and number of the interface bound to the BFD session." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "dest_addr": { "type": "string", "description": "Specifies the peer IP address bound to the BFD session." }, "vrf_name": { "type": "string", "description": "Specifies the name of a Virtual Private Network (VPN) instance that is bound to a BFD session. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value _public_ is reserved and cannot be used as the VPN instance name." }, "create_type": { "type": "string", "description": "BFD session creation mode, the currently created BFD session only supports static or static auto-negotiation mode." }, "session_name": { "type": "string", "description": "Specifies the name of a BFD session. The value is a string of 1 to 15 case-sensitive characters without spaces." }, "use_default_ip": { "type": "string", "description": "Indicates the default multicast IP address that is bound to a BFD session. By default, BFD uses the multicast IP address 224.0.0.184. You can set the multicast IP address by running the default-ip-address command. The value is a bool type." }, "addr_type": { "type": "string", "description": "Specifies the peer IP address type." } } }, "nuage_vspk": { "required": [ "auth", "type" ], "type": "object", "description": "Manage or find Nuage VSP entities, this includes create, update, delete, assign, unassign and find, with all supported properties.", "properties": { "children": { "type": "string", "description": "Can be used to specify a set of child entities.\nA mandatory property of each child is the I(type).\nSupported optional properties of each child are I(id), I(properties) and I(match_filter).\nThe function of each of these properties is the same as in the general task definition.\nThis can be used recursively\nOnly useable in case I(state=present)." }, "parent_type": { "type": "string", "description": "The type of parent the ID is specified for (example Enterprise).\nThis should match the objects CamelCase class name in VSPK-Python.\nThis Class name can be found on U(https://nuagenetworks.github.io/vspkdoc/index.html).\nIf specified, I(parent_id) also needs to be specified." }, "auth": { "type": "string", "description": "Dict with the authentication information required to connect to a Nuage VSP environment.\nRequires a I(api_username) parameter (example csproot).\nRequires either a I(api_password) parameter (example csproot) or a I(api_certificate) and I(api_key) parameters, which point to the certificate and key files for certificate based authentication.\nRequires a I(api_enterprise) parameter (example csp).\nRequires a I(api_url) parameter (example https://10.0.0.10:8443).\nRequires a I(api_version) parameter (example v4_0)." }, "id": { "type": "string", "description": "The ID of the entity you want to work on.\nIn combination with I(command=find), it will only return the single entity.\nIn combination with I(state), it will either update or delete this entity.\nWill take precedence over I(match_filter) and I(properties) whenever an entity needs to be found." }, "match_filter": { "type": "string", "description": "A filter used when looking (both in I(command) and I(state) for entities, in the format the Nuage VSP API expects.\nIf I(match_filter) is defined, it will take precedence over the I(properties), but not on the I(id)" }, "parent_id": { "type": "string", "description": "The ID of the parent of the entity you want to work on.\nWhen I(state) is specified, the entity will be gathered from this parent, if it exists, unless an I(id) is specified.\nWhen I(command=find) is specified, the entity will be searched for in this parent, unless an I(id) is specified.\nIf specified, I(parent_type) also needs to be specified." }, "state": { "type": "string", "description": "Specifies the desired state of the entity.\nIf I(state=present), in case the entity already exists, will update the entity if it is needed.\nIf I(state=present), in case the relationship with the parent is a member relationship, will assign the entity as a member of the parent.\nIf I(state=absent), in case the relationship with the parent is a member relationship, will unassign the entity as a member of the parent.\nEither I(state) or I(command) needs to be defined, both can not be defined at the same time." }, "command": { "type": "string", "description": "Specifies a command to be executed.\nWith I(command=find), if I(parent_id) and I(parent_type) are defined, it will only search within the parent. Otherwise, if allowed, will search in the root object.\nWith I(command=find), if I(id) is specified, it will only return the single entity matching the id.\nWith I(command=find), otherwise, if I(match_filter) is define, it will use that filter to search.\nWith I(command=find), otherwise, if I(properties) are defined, it will do an AND search using all properties.\nWith I(command=change_password), a password of a user can be changed. Warning - In case the password is the same as the existing, it will throw an error.\nWith I(command=wait_for_job), the module will wait for a job to either have a status of SUCCESS or ERROR. In case an ERROR status is found, the module will exit with an error.\nWith I(command=wait_for_job), the job will always be returned, even if the state is ERROR situation.\nEither I(state) or I(command) needs to be defined, both can not be defined at the same time." }, "type": { "type": "string", "description": "The type of entity you want to work on (example Enterprise).\nThis should match the objects CamelCase class name in VSPK-Python.\nThis Class name can be found on U(https://nuagenetworks.github.io/vspkdoc/index.html)." }, "properties": { "type": "string", "description": "Properties are the key, value pairs of the different properties an entity has.\nIf no I(id) and no I(match_filter) is specified, these are used to find or determine if the entity exists." } } }, "bigip_gtm_pool": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP GTM pools.", "properties": { "alternate_lb_method": { "type": "string", "description": "The load balancing mode that the system tries if the C(preferred_lb_method) is unsuccessful in picking a pool." }, "name": { "type": "string", "description": "Name of the GTM pool." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "fallback_ip": { "type": "string", "description": "Specifies the IPv4, or IPv6 address of the server to which the system directs requests when it cannot use one of its pools to do so. Note that the system uses the fallback IP only if you select the C(fallback_ip) load balancing method." }, "state": { "type": "string", "description": "Pool member state. When C(present), ensures that the pool is created and enabled. When C(absent), ensures that the pool is removed from the system. When C(enabled) or C(disabled), ensures that the pool is enabled or disabled (respectively) on the remote device." }, "fallback_lb_method": { "type": "string", "description": "The load balancing mode that the system tries if both the C(preferred_lb_method) and C(alternate_lb_method)s are unsuccessful in picking a pool." }, "preferred_lb_method": { "type": "string", "description": "The load balancing mode that the system tries first." }, "type": { "type": "string", "description": "The type of GTM pool that you want to create. On BIG-IP releases prior to version 12, this parameter is not required. On later versions of BIG-IP, this is a required parameter." } } }, "apt_key": { "type": "object", "description": "Add or remove an I(apt) key, optionally downloading it.", "properties": { "keyserver": { "type": "string", "description": "The keyserver to retrieve key from." }, "url": { "type": "string", "description": "The URL to retrieve key from." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "keyring": { "type": "string", "description": "The path to specific keyring file in /etc/apt/trusted.gpg.d/" }, "state": { "type": "string", "description": "Default: present\n\nEnsures that the key is present (added) or absent (revoked)." }, "file": { "type": "string", "description": "The path to a keyfile on the remote server to add to the keyring." }, "data": { "type": "string", "description": "The keyfile contents to add to the keyring." }, "id": { "type": "string", "description": "The identifier of the key.\nIncluding this allows check mode to correctly report the changed state.\nIf specifying a subkey's id be aware that apt-key does not understand how to remove keys via a subkey id. Specify the primary key's id instead.\nThis parameter is required when C(state) is set to C(absent)." } } }, "ovirt_group_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV groups.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search group X use following pattern: name=X" } } }, "sf_check_connections": { "type": "object", "description": "Used to test the management connection to the cluster.\nThe test pings the MVIP and SVIP, and executes a simple API method to verify connectivity.", "properties": { "svip": { "type": "string", "description": "Default: None\n\nOptionally, use to test connection of a different SVIP.\nThis is not needed to test the connection to the target cluster." }, "skip": { "type": "string", "description": "Default: None\n\nSkip checking connection to SVIP or MVIP." }, "mvip": { "type": "string", "description": "Default: None\n\nOptionally, use to test connection of a different MVIP.\nThis is not needed to test the connection to the target cluster." } } }, "nso_query": { "required": [ "xpath", "fields" ], "type": "object", "description": "This module provides support for querying data from Cisco NSO using XPath.", "properties": { "xpath": { "type": "string", "description": "XPath selection relative to the root." }, "fields": { "type": "array", "description": "List of fields to select from matching nodes.\n" } } }, "telnet": { "allOf": [ { "allOf": [ { "not": { "required": [ "command", "commands" ], "type": "object" } }, { "oneOf": [ { "required": [ "command" ], "type": "object" }, { "required": [ "commands" ], "type": "object" } ] } ] } ], "type": "object", "description": "Executes a low-down and dirty telnet command, not going through the module subsystem.\nThis is mostly to be used for enabling ssh on devices that only have telnet enabled by default.", "properties": { "commands": { "type": "array", "description": "List of commands to be executed in the telnet session." }, "pause": { "type": "string", "description": "Default: 1\n\nSeconds to pause between each command issued" }, "prompts": { "type": "array", "description": "Default: ['$']\n\nList of prompts expected before sending next command" }, "host": { "type": "string", "description": "Default: remote_addr\n\nThe host/target on which to execute the command" }, "command": { "type": "array", "description": "List of commands to be executed in the telnet session." }, "user": { "type": "string", "description": "Default: remote_user\n\nThe user for login" }, "timeout": { "type": "string", "description": "Default: 120\n\ntimeout for remote operations" }, "login_prompt": { "type": "string", "description": "Default: login: \n\nLogin or username prompt to expect" }, "password": { "type": "string", "description": "The password for login" }, "port": { "type": "string", "description": "Default: 23\n\nRemote port to use" }, "password_prompt": { "type": "string", "description": "Default: Password: \n\nLogin or username prompt to expect" } } }, "netscaler_gslb_vserver": { "type": "object", "description": "Configure gslb vserver entities in Netscaler.", "properties": { "comment": { "type": "string", "description": "Any comments that you might want to associate with the GSLB virtual server." }, "disabled": { "description": "When set to C(yes) the GSLB Vserver state will be set to C(disabled).\nWhen set to C(no) the GSLB Vserver state will be set to C(enabled).\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "domain_bindings": { "type": "array", "description": "List of bindings for domains for this glsb vserver." }, "service_bindings": { "type": "array", "description": "List of bindings for gslb services bound to this gslb virtual server." }, "mir": { "type": "string", "description": "Include multiple IP addresses in the DNS responses sent to clients." }, "tolerance": { "type": "string", "description": "Site selection tolerance, in milliseconds, for implementing the RTT load balancing method. If a site's RTT deviates from the lowest RTT by more than the specified tolerance, the site is not considered when the NetScaler appliance makes a GSLB decision. The appliance implements the round robin method of global server load balancing between sites whose RTT values are within the specified tolerance. If the tolerance is 0 (zero), the appliance always sends clients the IP address of the site with the lowest RTT.\nMinimum value = C(0)\nMaximum value = C(100)" }, "lbmethod": { "type": "string", "description": "Load balancing method for the GSLB virtual server.\nDefault value: LEASTCONNECTION\nPossible values = ROUNDROBIN, LEASTCONNECTION, LEASTRESPONSETIME, SOURCEIPHASH, LEASTBANDWIDTH, LEASTPACKETS, STATICPROXIMITY, RTT, CUSTOMLOAD" }, "sothreshold": { "type": "string", "description": "Threshold at which spillover occurs. Specify an integer for the CONNECTION spillover method, a bandwidth value in kilobits per second for the BANDWIDTH method (do not enter the units), or a percentage for the HEALTH method (do not enter the percentage symbol).\nMinimum value = C(1)\nMaximum value = C(4294967287)" }, "sopersistence": { "type": "string", "description": "If spillover occurs, maintain source IP address based persistence for both primary and backup GSLB virtual servers." }, "appflowlog": { "type": "string", "description": "Enable logging appflow flow information." }, "persistenceid": { "type": "string", "description": "The persistence ID for the GSLB virtual server. The ID is a positive integer that enables GSLB sites to identify the GSLB virtual server, and is required if source IP address based or spill over based persistence is enabled on the virtual server.\nMinimum value = C(0)\nMaximum value = C(65535)" }, "sobackupaction": { "type": "string", "description": "Action to be performed if spillover is to take effect, but no backup chain to spillover is usable or exists." }, "servicetype": { "type": "string", "description": "Protocol used by services bound to the virtual server.\n" }, "dnsrecordtype": { "type": "string", "description": "DNS record type to associate with the GSLB virtual server's domain name.\nDefault value: A\nPossible values = A, AAAA, CNAME, NAPTR" }, "considereffectivestate": { "type": "string", "description": "If the primary state of all bound GSLB services is DOWN, consider the effective states of all the GSLB services, obtained through the Metrics Exchange Protocol (MEP), when determining the state of the GSLB virtual server. To consider the effective state, set the parameter to STATE_ONLY. To disregard the effective state, set the parameter to NONE.\nThe effective state of a GSLB service is the ability of the corresponding virtual server to serve traffic. The effective state of the load balancing virtual server, which is transferred to the GSLB service, is UP even if only one virtual server in the backup chain of virtual servers is in the UP state." }, "netmask": { "type": "string", "description": "IPv4 network mask for use in the SOURCEIPHASH load balancing method.\nMinimum length = 1" }, "v6netmasklen": { "type": "string", "description": "Number of bits to consider, in an IPv6 source IP address, for creating the hash that is required by the C(SOURCEIPHASH) load balancing method.\nDefault value: C(128)\nMinimum value = C(1)\nMaximum value = C(128)" }, "persistencetype": { "type": "string", "description": "Use source IP address based persistence for the virtual server.\nAfter the load balancing method selects a service for the first packet, the IP address received in response to the DNS query is used for subsequent requests from the same client." }, "name": { "type": "string", "description": "Name for the GSLB virtual server. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space, colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Can be changed after the virtual server is created.\nMinimum length = 1" }, "disableprimaryondown": { "type": "string", "description": "Continue to direct traffic to the backup chain even after the primary GSLB virtual server returns to the UP state. Used when spillover is configured for the virtual server." }, "backuplbmethod": { "type": "string", "description": "Backup load balancing method. Becomes operational if the primary load balancing method fails or cannot be used. Valid only if the primary method is based on either round-trip time (RTT) or static proximity." }, "dynamicweight": { "type": "string", "description": "Specify if the appliance should consider the service count, service weights, or ignore both when using weight-based load balancing methods. The state of the number of services bound to the virtual server help the appliance to select the service." }, "somethod": { "type": "string", "description": "Type of threshold that, when exceeded, triggers spillover. Available settings function as follows:\n* C(CONNECTION) - Spillover occurs when the number of client connections exceeds the threshold.\n* C(DYNAMICCONNECTION) - Spillover occurs when the number of client connections at the GSLB virtual server exceeds the sum of the maximum client (Max Clients) settings for bound GSLB services. Do not specify a spillover threshold for this setting, because the threshold is implied by the Max Clients settings of the bound GSLB services.\n* C(BANDWIDTH) - Spillover occurs when the bandwidth consumed by the GSLB virtual server's incoming and outgoing traffic exceeds the threshold.\n* C(HEALTH) - Spillover occurs when the percentage of weights of the GSLB services that are UP drops below the threshold. For example, if services gslbSvc1, gslbSvc2, and gslbSvc3 are bound to a virtual server, with weights 1, 2, and 3, and the spillover threshold is 50%, spillover occurs if gslbSvc1 and gslbSvc3 or gslbSvc2 and gslbSvc3 transition to DOWN.\n* C(NONE) - Spillover does not occur." }, "sopersistencetimeout": { "type": "string", "description": "Timeout for spillover persistence, in minutes.\nDefault value: C(2)\nMinimum value = C(2)\nMaximum value = C(1440)" }, "persistmask": { "type": "string", "description": "The optional IPv4 network mask applied to IPv4 addresses to establish source IP address based persistence.\nMinimum length = 1" }, "timeout": { "type": "string", "description": "Idle time, in minutes, after which a persistence entry is cleared.\nDefault value: C(2)\nMinimum value = C(2)\nMaximum value = C(1440)" }, "v6persistmasklen": { "type": "string", "description": "Number of bits to consider in an IPv6 source IP address when creating source IP address based persistence sessions.\nDefault value: C(128)\nMinimum value = C(1)\nMaximum value = C(128)" } } }, "junos_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] } ], "type": "object", "description": "This module manages locally configured user accounts on remote network devices running the JUNOS operating system. It provides a set of arguments for creating, removing and updating locally defined accounts", "properties": { "name": { "type": "string", "description": "The C(name) argument defines the username of the user to be created on the system. This argument must follow appropriate usernaming conventions for the target device running JUNOS. This argument is mutually exclusive with the C(aggregate) argument." }, "collection": { "type": "string", "description": "The C(aggregate) argument defines a list of users to be configured on the remote device. The list of users will be compared against the current users and only changes will be added or removed from the device configuration. This argument is mutually exclusive with the name argument." }, "purge": { "type": "string", "description": "The C(purge) argument instructs the module to consider the users definition absolute. It will remove any previously configured users on the device with the exception of the current defined set of aggregate." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nThe C(state) argument configures the state of the user definitions as it relates to the device operational configuration. When set to I(present), the user should be configured in the device active configuration and when set to I(absent) the user should not be in the device active configuration" }, "role": { "type": "string", "description": "The C(role) argument defines the role of the user account on the remote system. User accounts can have more than one role configured." }, "full_name": { "type": "string", "description": "The C(full_name) argument provides the full name of the user account to be created on the remote device. This argument accepts any text string value." }, "aggregate": { "type": "string", "description": "The C(aggregate) argument defines a list of users to be configured on the remote device. The list of users will be compared against the current users and only changes will be added or removed from the device configuration. This argument is mutually exclusive with the name argument." }, "sshkey": { "type": "string", "description": "The C(sshkey) argument defines the public SSH key to be configured for the user account on the remote system. This argument must be a valid SSH key" }, "users": { "type": "string", "description": "The C(aggregate) argument defines a list of users to be configured on the remote device. The list of users will be compared against the current users and only changes will be added or removed from the device configuration. This argument is mutually exclusive with the name argument." } } }, "avi_gslb": { "required": [ "leader_cluster_uuid", "name" ], "type": "object", "description": "This module is used to configure Gslb object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the gslb object." }, "description": { "type": "string", "description": "User defined description for the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "maintenance_mode": { "description": "This field disables the configuration operations on the leader for all federated objects.\nCud operations on gslb, gslbservice, gslbgeodbprofile and other federated objects will be rejected.\nThe rest-api disabling helps in upgrade scenarios where we don't want configuration sync operations to the gslb member when the member is being\nupgraded.\nThis configuration programmatically blocks the leader from accepting new gslb configuration when member sites are undergoing upgrade.\nField introduced in 17.2.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "third_party_sites": { "type": "string", "description": "Third party site member belonging to this gslb.\nField introduced in 17.1.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "sites": { "type": "string", "description": "Select avi site member belonging to this gslb." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "is_federated": { "description": "This field indicates that this object is replicated across gslb federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "send_interval": { "type": "string", "description": "Frequency with which group members communicate.\nAllowed values are 1-3600.\nDefault value when not specified in API or module is interpreted by Avi Controller as 15.\nUnits(SEC)." }, "view_id": { "type": "string", "description": "The view-id is used in change-leader mode to differentiate partitioned groups while they have the same gslb namespace.\nEach partitioned group will be able to operate independently by using the view-id.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "dns_configs": { "type": "string", "description": "Sub domain configuration for the gslb.\nGslb service's fqdn must be a match one of these subdomains." }, "leader_cluster_uuid": { "type": "string", "description": "Mark this site as leader of gslb configuration.\nThis site is the one among the avi sites." }, "client_ip_addr_group": { "type": "string", "description": "Group to specify if the client ip addresses are public or private.\nField introduced in 17.1.2." }, "clear_on_max_retries": { "type": "string", "description": "Max retries after which the remote site is treated as a fresh start.\nIn fresh start all the configs are downloaded.\nAllowed values are 1-1024.\nDefault value when not specified in API or module is interpreted by Avi Controller as 20." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name for the gslb object." } } }, "vmware_cfg_backup": { "type": "object", "description": "This module can be used to perform various operations related to backup, restore and reset of ESXi host configuration.", "properties": { "dest": { "type": "string", "description": "The destination where the ESXi configuration bundle will be saved. The I(dest) can be a folder or a file.\nIf I(dest) is a folder, the backup file will be saved in the folder with the default filename generated from the ESXi server.\nIf I(dest) is a file, the backup file will be saved with that filename. The file extension will always be .tgz." }, "src": { "type": "string", "description": "The file containing the ESXi configuration that will be restored." }, "state": { "type": "string", "description": "If C(saved), the .tgz backup bundle will be saved in I(dest).\nIf C(absent), the host configuration will be reset to default values.\nIf C(loaded), the backup file in I(src) will be loaded to the ESXi host rewriting the hosts settings." }, "esxi_hostname": { "type": "string", "description": "Name of ESXi server. This is required only if authentication against a vCenter is done." } } }, "pacemaker_cluster": { "required": [ "state" ], "type": "object", "description": "This module can manage a pacemaker cluster and nodes from Ansible using the pacemaker cli.", "properties": { "node": { "type": "string", "description": "Specify which node of the cluster you want to manage. None == the cluster status itself, 'all' == check the status of all nodes." }, "state": { "type": "string", "description": "Indicate desired state of the cluster" }, "force": { "description": "Default: yes\n\nForce the change of the cluster state", "$ref": "#/definitions/ansible_truth" }, "timeout": { "type": "string", "description": "Default: 300\n\nTimeout when the module should considered that the action has failed" } } }, "locale_gen": { "required": [ "name" ], "type": "object", "description": "Manages locales by editing /etc/locale.gen and invoking locale-gen.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the locale shall be present." }, "name": { "type": "string", "description": "Name and encoding of the locale, such as \"en_GB.UTF-8\"." } } }, "cs_domain": { "required": [ "path" ], "type": "object", "description": "Create, update and remove domains.", "properties": { "path": { "type": "string", "description": "Path of the domain.\nPrefix C(ROOT/) or C(/ROOT/) in path is optional." }, "state": { "type": "string", "description": "Default: present\n\nState of the domain." }, "network_domain": { "type": "string", "description": "Network domain for networks in the domain." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "clean_up": { "type": "string", "description": "Clean up all domain resources like child domains and accounts.\nConsidered on C(state=absent)." } } }, "pagerduty_alert": { "required": [ "name", "state", "service_key", "api_key" ], "type": "object", "description": "This module will let you trigger, acknowledge or resolve a PagerDuty incident by sending events", "properties": { "client_url": { "type": "string", "description": "The URL of the monitoring client that is triggering this event." }, "name": { "type": "string", "description": "PagerDuty unique subdomain." }, "state": { "type": "string", "description": "Type of event to be sent." }, "incident_key": { "type": "string", "description": "Identifies the incident to which this I(state) should be applied.\nFor C(triggered) I(state) - If there's no open (i.e. unresolved) incident with this key, a new one will be created. If there's already an open incident with a matching key, this event will be appended to that incident's log. The event key provides an easy way to \"de-dup\" problem reports.\nFor C(acknowledged) or C(resolved) I(state) - This should be the incident_key you received back when the incident was first opened by a trigger event. Acknowledge events referencing resolved or nonexistent incidents will be discarded." }, "client": { "type": "string", "description": "The name of the monitoring client that is triggering this event." }, "service_key": { "type": "string", "description": "The GUID of one of your \"Generic API\" services.\nThis is the \"service key\" listed on a Generic API's service detail page." }, "api_key": { "type": "string", "description": "The pagerduty API key (readonly access), generated on the pagerduty site." }, "desc": { "type": "string", "description": "Default: Created via Ansible\n\nFor C(triggered) I(state) - Required. Short description of the problem that led to this trigger. This field (or a truncated version) will be used when generating phone calls, SMS messages and alert emails. It will also appear on the incidents tables in the PagerDuty UI. The maximum length is 1024 characters.\nFor C(acknowledged) or C(resolved) I(state) - Text that will appear in the incident's log associated with this event." } } }, "github_key": { "required": [ "token", "name" ], "type": "object", "description": "Creates, removes, or updates GitHub access keys.", "properties": { "force": { "type": "string", "description": "Default: yes\n\nThe default is C(yes), which will replace the existing remote key if it's different than C(pubkey). If C(no), the key will only be set if no key with the given C(name) exists." }, "token": { "type": "string", "description": "GitHub Access Token with permission to list and create public keys." }, "pubkey": { "type": "string", "description": "Default: none\n\nSSH public key value. Required when C(state=present)." }, "name": { "type": "string", "description": "SSH key name" }, "state": { "type": "string", "description": "Default: present\n\nWhether to remove a key, ensure that it exists, or update its value." } } }, "cs_template": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] } ], "type": "object", "description": "Register a template from URL, create a template from a ROOT volume of a stopped VM or its snapshot, extract and delete templates.", "properties": { "is_featured": { "type": "string", "description": "Register the template to be featured.\nOnly used if C(state) is present." }, "vm": { "type": "string", "description": "VM name the template will be created from its volume or alternatively from a snapshot.\nVM must be in stopped state if created from its volume.\nMutually exclusive with C(url)." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "domain": { "type": "string", "description": "Domain the template, snapshot or VM is related to." }, "is_extractable": { "type": "string", "description": "True if the template or its derivatives are extractable." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "password_enabled": { "type": "string", "description": "True if the template supports the password reset feature." }, "zone": { "type": "string", "description": "Name of the zone you wish the template to be registered or deleted from.\nIf not specified, first found zone will be used." }, "sshkey_enabled": { "type": "string", "description": "True if the template supports the sshkey upload feature." }, "is_dynamically_scalable": { "type": "string", "description": "Register the template having XS/VMWare tools installed in order to support dynamic scaling of VM CPU/memory.\nOnly used if C(state) is present." }, "state": { "type": "string", "description": "Default: present\n\nState of the template." }, "template_filter": { "type": "string", "description": "Default: self\n\nName of the filter used to search for the template." }, "is_ready": { "type": "string", "description": "This flag is used for searching existing templates.\nIf set to C(true), it will only list template ready for deployment e.g. successfully downloaded and installed.\nRecommended to set it to C(false)." }, "requires_hvm": { "type": "string", "description": "true if this template requires HVM." }, "is_routing": { "type": "string", "description": "True if the template type is routing i.e., if template is used to deploy router.\nOnly considered if C(url) is used." }, "template_tag": { "type": "string", "description": "the tag for this template." }, "bits": { "type": "string", "description": "Default: 64\n\n32 or 64 bits support." }, "details": { "type": "string", "description": "Template details in key/value pairs." }, "format": { "type": "string", "description": "The format for the template.\nRelevant when using C(state=present)." }, "is_public": { "type": "string", "description": "Register the template to be publicly available to all users.\nOnly used if C(state) is present." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "display_text": { "type": "string", "description": "Display text of the template." }, "account": { "type": "string", "description": "Account the template, snapshot or VM is related to." }, "name": { "type": "string", "description": "Name of the template." }, "url": { "type": "string", "description": "URL of where the template is hosted on C(state=present).\nURL to which the template would be extracted on C(state=extracted).\nMutually exclusive with C(vm)." }, "checksum": { "type": "string", "description": "The MD5 checksum value of this template.\nIf set, we search by checksum instead of name." }, "cross_zones": { "type": "string", "description": "Whether the template should be synced or removed across zones.\nOnly used if C(state) is present or absent." }, "project": { "type": "string", "description": "Name of the project the template to be registered in." }, "snapshot": { "type": "string", "description": "Name of the snapshot, created from the VM ROOT volume, the template will be created from.\nC(vm) is required together with this argument." }, "mode": { "type": "string", "description": "Default: http_download\n\nMode for the template extraction.\nOnly used if C(state=extracted)." }, "hypervisor": { "type": "string", "description": "Name the hypervisor to be used for creating the new template.\nRelevant when using C(state=present)." }, "os_type": { "type": "string", "description": "OS type that best represents the OS of this template." } } }, "purefa_pg": { "required": [ "pgroup" ], "type": "object", "description": "Create, delete or modify protection groups on Pure Storage FlashArrays.", "properties": { "enabled": { "description": "Default: yes\n\nDefine whether to enabled snapshots for the protection group.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nDefine whether the protection group should exist or not." }, "hostgroup": { "type": "array", "description": "List of existing hostgroups to add to protection group." }, "volume": { "type": "array", "description": "List of existing volumes to add to protection group." }, "host": { "type": "array", "description": "List of existing hosts to add to protection group." }, "pgroup": { "type": "string", "description": "The name of the protection group." }, "eradicate": { "description": "Default: no\n\nDefine whether to eradicate the protection group on delete and leave in trash.", "$ref": "#/definitions/ansible_truth" } } }, "os_auth": { "type": "object", "description": "Retrieve an auth token from an OpenStack Cloud", "properties": {} }, "junos_scp": { "required": [ "src" ], "type": "object", "description": "This module transfers files via SCP from or to remote devices running Junos.", "properties": { "dest": { "type": "string", "description": "Default: .\n\nThe C(dest) argument specifies the path in which to receive the files." }, "src": { "type": "string", "description": "The C(src) argument takes a single path, or a list of paths to be transfered. The argument C(recursive) must be C(true) to transfer directories." }, "recursive": { "type": "string", "description": "The C(recursive) argument enables recursive transfer of files and directories." }, "remote_src": { "type": "string", "description": "The C(remote_src) argument enables the download of files (I(scp get)) from the remote device. The default behavior is to upload files (I(scp put)) to the remote device." } } }, "ce_snmp_target_host": { "type": "object", "description": "Manages SNMP target host configurations on HUAWEI CloudEngine switches.", "properties": { "security_name_v3": { "type": "string", "description": "Security Name V3." }, "interface_name": { "type": "string", "description": "Name of the interface to send the trap message." }, "security_model": { "type": "string", "description": "Security Model." }, "vpn_name": { "type": "string", "description": "VPN instance Name." }, "security_level": { "type": "string", "description": "Security level indicating whether to use authentication and encryption." }, "security_name": { "type": "string", "description": "Security Name." }, "is_public_net": { "type": "string", "description": "Default: no_use\n\nTo enable or disable Public Net-manager for target Host." }, "connect_port": { "type": "string", "description": "Udp port used by SNMP agent to connect the Network management." }, "version": { "type": "string", "description": "Version(s) Supported by SNMP Engine." }, "host_name": { "type": "string", "description": "Unique name to identify target host entry." }, "address": { "type": "string", "description": "Network Address." }, "recv_port": { "type": "string", "description": "UDP Port number used by network management to receive alarm messages." }, "notify_type": { "type": "string", "description": "To configure notify type as trap or inform." } } }, "ipa_service": { "allOf": [ { "allOf": [ { "not": { "required": [ "krbcanonicalname", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "krbcanonicalname" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and delete an IPA service using IPA API", "properties": { "force": { "type": "string", "description": "Force principal name even if host is not in DNS." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "hosts": { "type": "string", "description": "defines the list of 'ManagedBy' hosts" }, "name": { "type": "string", "description": "principal of the service\nCan not be changed as it is the unique identifier." }, "krbcanonicalname": { "type": "string", "description": "principal of the service\nCan not be changed as it is the unique identifier." } } }, "avi_sslkeyandcertificate": { "required": [ "name", "certificate" ], "type": "object", "description": "This module is used to configure SSLKeyAndCertificate object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "status": { "type": "string", "description": "Enum options - ssl_certificate_finished, ssl_certificate_pending.\nDefault value when not specified in API or module is interpreted by Avi Controller as SSL_CERTIFICATE_FINISHED." }, "enckey_base64": { "type": "string", "description": "Encrypted private key corresponding to the private key (e.g.\nThose generated by an hsm such as thales nshield)." }, "certificate_management_profile_ref": { "type": "string", "description": "It is a reference to an object of type certificatemanagementprofile." }, "name": { "type": "string", "description": "Name of the object." }, "dynamic_params": { "type": "string", "description": "Dynamic parameters needed for certificate management profile." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "enckey_name": { "type": "string", "description": "Name of the encrypted private key (e.g.\nThose generated by an hsm such as thales nshield)." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "created_by": { "type": "string", "description": "Creator name." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "ca_certs": { "type": "string", "description": "Ca certificates in certificate chain." }, "hardwaresecuritymodulegroup_ref": { "type": "string", "description": "It is a reference to an object of type hardwaresecuritymodulegroup." }, "key": { "type": "string", "description": "Private key." }, "key_params": { "type": "string", "description": "Sslkeyparams settings for sslkeyandcertificate." }, "certificate": { "type": "string", "description": "Sslcertificate settings for sslkeyandcertificate." }, "type": { "type": "string", "description": "Enum options - ssl_certificate_type_virtualservice, ssl_certificate_type_system, ssl_certificate_type_ca.\nDefault value when not specified in API or module is interpreted by Avi Controller as SSL_CERTIFICATE_TYPE_VIRTUALSERVICE." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "make": { "required": [ "chdir" ], "type": "object", "description": "Run targets in a Makefile.", "properties": { "chdir": { "type": "string", "description": "cd into this directory before running make" }, "params": { "type": "string", "description": "Default: none\n\nAny extra parameters to pass to make" }, "target": { "type": "string", "description": "Default: none\n\nThe target to run" }, "file": { "type": "string", "description": "Default: none\n\nUse file as a Makefile" } } }, "panos_dag": { "required": [ "dag_name", "password", "ip_address", "dag_filter" ], "type": "object", "description": "Create a dynamic address group object in the firewall used for policy rules", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "dag_name": { "type": "string", "description": "name of the dynamic address group" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "dag_filter": { "type": "string", "description": "dynamic filter user by the dynamic address group" } } }, "vmware_portgroup": { "allOf": [ { "allOf": [ { "not": { "required": [ "hosts", "esxi_hostname" ], "type": "object" } } ] } ], "type": "object", "description": "Create a VMware portgroup on given host/s or hosts of given cluster", "properties": { "portgroup_name": { "type": "string", "description": "Portgroup name to add." }, "cluster_name": { "type": "string", "description": "Name of cluster name for host membership.\nPortgroup will be created on all hosts of the given cluster.\nThis option is required if C(hosts) is not specified." }, "network_policy": { "type": "string", "description": "Default: {'mac_changes': False, 'promiscuous_mode': False, 'forged_transmits': False}\n\nNetwork policy specifies layer 2 security settings for a portgroup such as promiscuous mode, where guest adapter listens to all the packets, MAC address changes and forged transmits.\nDict which configures the different security values for portgroup.\nValid attributes are:\n- C(promiscuous_mode) (bool): indicates whether promiscuous mode is allowed. (default: false)\n- C(forged_transmits) (bool): indicates whether forged transmits are allowed. (default: false)\n- C(mac_changes) (bool): indicates whether mac changes are allowed. (default: false)" }, "state": { "type": "string", "description": "Default: present\n\nDetermines if the portgroup should be present or not." }, "hosts": { "type": "array", "description": "List of name of host or hosts on which portgroup needs to be added.\nThis option is required if C(cluster_name) is not specified." }, "esxi_hostname": { "type": "array", "description": "List of name of host or hosts on which portgroup needs to be added.\nThis option is required if C(cluster_name) is not specified." }, "switch_name": { "type": "string", "description": "vSwitch to modify." }, "vlan_id": { "type": "string", "description": "VLAN ID to assign to portgroup." } } }, "digital_ocean_certificate": { "allOf": [ { "allOf": [ { "not": { "required": [ "oauth_token", "DO_API_TOKEN", "DO_API_KEY", "DO_OAUTH_TOKEN" ], "type": "object" } }, { "oneOf": [ { "required": [ "oauth_token" ], "type": "object" }, { "required": [ "DO_API_TOKEN" ], "type": "object" }, { "required": [ "DO_API_KEY" ], "type": "object" }, { "required": [ "DO_OAUTH_TOKEN" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create, Retrieve and remove certificates DigitalOcean.", "properties": { "private_key": { "type": "string", "description": "A PEM-formatted private key content of SSL Certificate." }, "name": { "type": "string", "description": "The name of the certificate." }, "certificate_chain": { "type": "string", "description": "The full PEM-formatted trust chain between the certificate authority's certificate and your domain's SSL certificate." }, "state": { "type": "string", "description": "Default: present\n\nWhether the certificate should be present or absent." }, "DO_API_TOKEN": { "type": "string", "description": "DigitalOcean OAuth token." }, "leaf_certificate": { "type": "string", "description": "A PEM-formatted public SSL Certificate." }, "oauth_token": { "type": "string", "description": "DigitalOcean OAuth token." }, "DO_OAUTH_TOKEN": { "type": "string", "description": "DigitalOcean OAuth token." }, "DO_API_KEY": { "type": "string", "description": "DigitalOcean OAuth token." } } }, "avi_gslbservice": { "required": [ "name" ], "type": "object", "description": "This module is used to configure GslbService object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "enabled": { "description": "Enable or disable the gslb service.\nIf the gslb service is enabled, then the vips are sent in the dns responses based on reachability and configured algorithm.\nIf the gslb service is disabled, then the vips are no longer available in the dns response.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "domain_names": { "type": "string", "description": "Fully qualified domain name of the gslb service." }, "ttl": { "type": "string", "description": "Ttl value (in seconds) for records served for this gslb service by the dns service.\nAllowed values are 1-86400.\nUnits(SEC)." }, "health_monitor_scope": { "type": "string", "description": "Health monitor probe can be executed for all the members or it can be executed only for third-party members.\nThis operational mode is useful to reduce the number of health monitor probes in case of a hybrid scenario.\nIn such a case, avi members can have controller derived status while non-avi members can be probed by via health monitor probes in dataplane.\nEnum options - GSLB_SERVICE_HEALTH_MONITOR_ALL_MEMBERS, GSLB_SERVICE_HEALTH_MONITOR_ONLY_NON_AVI_MEMBERS.\nDefault value when not specified in API or module is interpreted by Avi Controller as GSLB_SERVICE_HEALTH_MONITOR_ALL_MEMBERS." }, "uuid": { "type": "string", "description": "Uuid of the gslb service." }, "down_response": { "type": "string", "description": "Response to the client query when the gslb service is down." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name.\nField introduced in 17.1.2." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "site_persistence_enabled": { "description": "Enable site-persistence for the gslbservice.\nField introduced in 17.2.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "pool_algorithm": { "type": "string", "description": "The load balancing algorithm will pick a gslb pool within the gslb service list of available pools.\nEnum options - GSLB_SERVICE_ALGORITHM_PRIORITY, GSLB_SERVICE_ALGORITHM_GEO.\nField introduced in 17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as GSLB_SERVICE_ALGORITHM_PRIORITY." }, "application_persistence_profile_ref": { "type": "string", "description": "The federated application persistence associated with gslbservice site persistence functionality.\nIt is a reference to an object of type applicationpersistenceprofile.\nField introduced in 17.2.1." }, "description": { "type": "string", "description": "User defined description for the object." }, "wildcard_match": { "description": "Enable wild-card match of fqdn if an exact match is not found in the dns table, the longest match is chosen by wild-carding the fqdn in the dns\nrequest.\nDefault is false.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "use_edns_client_subnet": { "description": "Use the client ip subnet from the edns option as source ipaddress for client geo-location and consistent hash algorithm.\nDefault is true.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "groups": { "type": "string", "description": "Select list of pools belonging to this gslb service." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "controller_health_status_enabled": { "description": "Gs member's overall health status is derived based on a combination of controller and datapath health-status inputs.\nNote that the datapath status is determined by the association of health monitor profiles.\nOnly the controller provided status is determined through this configuration.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name for the gslb service." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "is_federated": { "description": "This field indicates that this object is replicated across gslb federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "health_monitor_refs": { "type": "string", "description": "Verify vs health by applying one or more health monitors.\nActive monitors generate synthetic traffic from dns service engine and to mark a vs up or down based on the response.\nIt is a reference to an object of type healthmonitor." }, "num_dns_ip": { "type": "string", "description": "Number of ip addresses of this gslb service to be returned by the dns service.\nEnter 0 to return all ip addresses.\nAllowed values are 1-20.\nSpecial values are 0- 'return all ip addresses'." }, "min_members": { "type": "string", "description": "The minimum number of members to distribute traffic to.\nAllowed values are 1-65535.\nSpecial values are 0 - 'disable'.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." } } }, "bigip_security_port_list": { "required": [ "name" ], "type": "object", "description": "Manages the AFM port lists on a BIG-IP. This module can be used to add and remove port list entries.", "properties": { "name": { "type": "string", "description": "Specifies the name of the port list." }, "port_ranges": { "type": "string", "description": "A list of port ranges where the range starts with a port number, is followed by a dash (-) and then a second number.\nIf the first number is greater than the second number, the numbers will be reversed so-as to be properly formatted. ie, 90-78 would become 78-90." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "port_lists": { "type": "string", "description": "Simple list of existing port lists to add to this list. Port lists can be specified in either their fully qualified name (/Common/foo) or their short name (foo). If a short name is used, the C(partition) argument will automatically be prepended to the short name." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the address list and entries exists.\nWhen C(absent), ensures the address list is removed." }, "ports": { "type": "string", "description": "Simple list of port values to add to the list" }, "description": { "type": "string", "description": "Description of the port list" } } }, "cs_network_acl_rule": { "allOf": [ { "allOf": [ { "not": { "required": [ "start_port", "port" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "network_acl", "acl" ], "type": "object" } }, { "oneOf": [ { "required": [ "network_acl" ], "type": "object" }, { "required": [ "acl" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "action_policy", "action" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "rule_position", "number" ], "type": "object" } }, { "oneOf": [ { "required": [ "rule_position" ], "type": "object" }, { "required": [ "number" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "traffic_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Add, update and remove network ACL rules.", "properties": { "domain": { "type": "string", "description": "Domain the VPC is related to." }, "protocol": { "type": "string", "description": "Default: tcp\n\nProtocol of the rule" }, "vpc": { "type": "string", "description": "VPC the network ACL is related to." }, "end_port": { "type": "string", "description": "End port for this rule.\nConsidered if C(protocol=tcp) or C(protocol=udp).\nIf not specified, equal C(start_port)." }, "number": { "type": "string", "description": "CIDR of the rule." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nIf you want to delete all tags, set a empty list e.g. C(tags: [])." }, "icmp_type": { "type": "string", "description": "Type of the icmp message being sent.\nConsidered if C(protocol=icmp)." }, "port": { "type": "string", "description": "Start port for this rule.\nConsidered if C(protocol=tcp) or C(protocol=udp)." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "zone": { "type": "string", "description": "Name of the zone the VPC related to.\nIf not set, default zone is used." }, "protocol_number": { "type": "string", "description": "Protocol number from 1 to 256 required if C(protocol=by_number)." }, "rule_position": { "type": "string", "description": "CIDR of the rule." }, "state": { "type": "string", "description": "Default: present\n\nState of the network ACL rule." }, "traffic_type": { "type": "string", "description": "Default: ingress\n\nTraffic type of the rule." }, "type": { "type": "string", "description": "Default: ingress\n\nTraffic type of the rule." }, "icmp_code": { "type": "string", "description": "Error code for this icmp message.\nConsidered if C(protocol=icmp)." }, "start_port": { "type": "string", "description": "Start port for this rule.\nConsidered if C(protocol=tcp) or C(protocol=udp)." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nIf you want to delete all tags, set a empty list e.g. C(tags: [])." }, "network_acl": { "type": "string", "description": "Name of the network ACL." }, "action_policy": { "type": "string", "description": "Default: ingress\n\nAction policy of the rule." }, "cidr": { "type": "string", "description": "Default: 0.0.0.0/0\n\nCIDR of the rule." }, "account": { "type": "string", "description": "Account the VPC is related to." }, "acl": { "type": "string", "description": "Name of the network ACL." }, "project": { "type": "string", "description": "Name of the project the VPC is related to." }, "action": { "type": "string", "description": "Default: ingress\n\nAction policy of the rule." } } }, "aws_waf_condition": { "required": [ "name" ], "type": "object", "description": "Read the AWS documentation for WAF U(https://aws.amazon.com/documentation/waf/)", "properties": { "purge_filters": { "type": "string", "description": "Whether to remove existing filters from a condition if not passed in I(filters). Defaults to false" }, "state": { "type": "string", "description": "Default: present\n\nWhether the condition should be C(present) or C(absent)" }, "type": { "type": "string", "description": "the type of matching to perform" }, "name": { "type": "string", "description": "Name of the Web Application Firewall condition to manage" }, "filters": { "type": "string", "description": "A list of the filters against which to match\nFor I(type)=C(byte), valid keys are C(field_to_match), C(position), C(header), C(transformation)\nFor I(type)=C(geo), the only valid key is C(country)\nFor I(type)=C(ip), the only valid key is C(ip_address)\nFor I(type)=C(regex), valid keys are C(field_to_match), C(transformation) and C(regex_pattern)\nFor I(type)=C(size), valid keys are C(field_to_match), C(transformation), C(comparison) and C(size)\nFor I(type)=C(sql), valid keys are C(field_to_match) and C(transformation)\nFor I(type)=C(xss), valid keys are C(field_to_match) and C(transformation)\nI(field_to_match) can be one of C(uri), C(query_string), C(header) C(method) and C(body)\nIf I(field_to_match) is C(header), then C(header) must also be specified\nI(transformation) can be one of C(none), C(compress_white_space), C(html_entity_decode), C(lowercase), C(cmd_line), C(url_decode)\nI(position), can be one of C(exactly), C(starts_with), C(ends_with), C(contains), C(contains_word),\nI(comparison) can be one of C(EQ), C(NE), C(LE), C(LT), C(GE), C(GT),\nI(target_string) is a maximum of 50 bytes\nI(regex_pattern) is a dict with a C(name) key and C(regex_strings) list of strings to match" } } }, "ucs_mac_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "descrption", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures MAC address pools and MAC address blocks on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "name": { "type": "string", "description": "The name of the MAC pool.\nThis name can be between 1 and 32 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the MAC pool is created." }, "descr": { "type": "string", "description": "A description of the MAC pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "last_addr": { "type": "string", "description": "The last MAC address in the block of addresses.\nThis is the To field in the UCS Manager Add MAC Blocks menu." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nThe distinguished name (dn) of the organization where the resource is assigned." }, "first_addr": { "type": "string", "description": "The first MAC address in the block of addresses.\nThis is the From field in the UCS Manager MAC Blocks menu." }, "descrption": { "type": "string", "description": "A description of the MAC pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify MAC pool is present and will create if needed.\nIf C(absent), will verify MAC pool is absent and will delete if needed." }, "order": { "type": "string", "description": "Default: default\n\nThe Assignment Order field.\nThis can be one of the following:\ndefault - Cisco UCS Manager selects a random identity from the pool.\nsequential - Cisco UCS Manager selects the lowest available identity from the pool." } } }, "aci_vrf": { "allOf": [ { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vrf", "context", "name", "vrf_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage contexts or VRFs on Cisco ACI fabrics.\nEach context is a private network associated to a tenant, i.e. VRF.", "properties": { "policy_control_preference": { "type": "string", "description": "Determines if the Fabric should enforce Contrac Policies." }, "descr": { "type": "string", "description": "The description for the VRF." }, "tenant_name": { "type": "string", "description": "The name of the Tenant the VRF should belong to." }, "policy_control_direction": { "type": "string", "description": "Determines if the policy should be enforced by the fabric on ingress or egress." }, "name": { "type": "string", "description": "The name of the VRF." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "vrf_name": { "type": "string", "description": "The name of the VRF." }, "vrf": { "type": "string", "description": "The name of the VRF." }, "context": { "type": "string", "description": "The name of the VRF." }, "tenant": { "type": "string", "description": "The name of the Tenant the VRF should belong to." }, "description": { "type": "string", "description": "The description for the VRF." } } }, "ovirt_hosts_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV hosts.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search host X from datacenter Y use following pattern: name=X and datacenter=Y" } } }, "ce_sflow": { "type": "object", "description": "Configure Sampled Flow (sFlow) to monitor traffic on an interface in real time, detect abnormal traffic, and locate the source of attack traffic, ensuring stable running of the network.", "properties": { "sample_direction": { "type": "string", "description": "Enables flow sampling in the inbound or outbound direction." }, "agent_ip": { "type": "string", "description": "Specifies the IPv4/IPv6 address of an sFlow agent." }, "collector_ip_vpn": { "type": "string", "description": "Specifies the name of a VPN instance. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value C(_public_) is reserved and cannot be used as the VPN instance name." }, "counter_interval": { "type": "string", "description": "Indicates the counter sampling interval. The value is an integer that ranges from 10 to 4294967295, in seconds. The default value is 20." }, "export_route": { "type": "string", "description": "Configures the sFlow packets sent by the switch not to carry routing information." }, "counter_collector": { "type": "string", "description": "Indicates the ID list of the counter collector." }, "rate_limit_slot": { "type": "string", "description": "Specifies the slot where the rate of output sFlow packets is limited. If this parameter is not specified, the rate of sFlow packets sent from all cards to the control plane is limited. The value is an integer or a string of characters." }, "collector_ip": { "type": "string", "description": "Specifies the IPv4/IPv6 address of the sFlow collector." }, "rate_limit": { "type": "string", "description": "Specifies the rate of sFlow packets sent from a card to the control plane. The value is an integer that ranges from 100 to 1500, in pps." }, "collector_udp_port": { "type": "string", "description": "Specifies the UDP destination port number of sFlow packets. The value is an integer that ranges from 1 to 65535. The default value is 6343." }, "source_ip": { "type": "string", "description": "Specifies the source IPv4/IPv6 address of sFlow packets." }, "sample_length": { "type": "string", "description": "Specifies the maximum length of sampled packets. The value is an integer and ranges from 18 to 512, in bytes. The default value is 128." }, "collector_datagram_size": { "type": "string", "description": "Specifies the maximum length of sFlow packets sent from an sFlow agent to an sFlow collector. The value is an integer, in bytes. It ranges from 1024 to 8100. The default value is 1400." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "collector_id": { "type": "string", "description": "Specifies the ID of an sFlow collector. This ID is used when you specify the collector in subsequent sFlow configuration." }, "sample_rate": { "type": "string", "description": "Specifies the flow sampling rate in the format 1/rate. The value is an integer and ranges from 1 to 4294967295. The default value is 8192." }, "sample_collector": { "type": "string", "description": "Indicates the ID list of the collector." }, "sflow_interface": { "type": "string", "description": "Full name of interface for Flow Sampling or Counter. It must be a physical interface, Eth-Trunk, or Layer 2 subinterface." }, "forward_enp_slot": { "type": "string", "description": "Enable the Embedded Network Processor (ENP) chip function. The switch uses the ENP chip to perform sFlow sampling, and the maximum sFlow sampling interval is 65535. If you set the sampling interval to be larger than 65535, the switch automatically restores it to 65535. The value is an integer or 'all'." }, "collector_meth": { "type": "string", "description": "Configures the device to send sFlow packets through service interfaces, enhancing the sFlow packet forwarding capability. The enhanced parameter is optional. No matter whether you configure the enhanced mode, the switch determines to send sFlow packets through service cards or management port based on the routing information on the collector. When the value is meth, the device forwards sFlow packets at the control plane. When the value is enhanced, the device forwards sFlow packets at the forwarding plane to enhance the sFlow packet forwarding capacity." }, "collector_description": { "type": "string", "description": "Specifies the description of an sFlow collector. The value is a string of 1 to 255 case-sensitive characters without spaces." } } }, "nxos_udld_interface": { "required": [ "interface", "mode" ], "type": "object", "description": "Manages UDLD interface configuration params.", "properties": { "interface": { "type": "string", "description": "FULL name of the interface, i.e. Ethernet1/1-" }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "mode": { "type": "string", "description": "Manages UDLD mode for an interface." } } }, "panos_commit": { "required": [ "password", "ip_address" ], "type": "object", "description": "PanOS module that will commit firewall's candidate configuration on\nthe device. The new configuration will become active immediately.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "interval": { "type": "string", "description": "Default: 0.5\n\ninterval for checking commit job" }, "sync": { "type": "string", "description": "Default: True\n\nif commit should be synchronous" }, "timeout": { "type": "string", "description": "Default: None\n\ntimeout for commit job" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "webfaction_site": { "required": [ "name", "host", "login_password", "login_name" ], "type": "object", "description": "Add or remove a website on a Webfaction host. Further documentation at http://github.com/quentinsf/ansible-webfaction.", "properties": { "name": { "type": "string", "description": "The name of the website" }, "state": { "type": "string", "description": "Default: present\n\nWhether the website should exist" }, "subdomains": { "type": "string", "description": "A list of subdomains associated with this site." }, "host": { "type": "string", "description": "The webfaction host on which the site should be created." }, "https": { "description": "Default: false\n\nWhether or not to use HTTPS", "$ref": "#/definitions/ansible_truth" }, "login_password": { "type": "string", "description": "The webfaction password to use" }, "login_name": { "type": "string", "description": "The webfaction account to use" }, "site_apps": { "type": "string", "description": "A mapping of URLs to apps" } } }, "ipa_dnsrecord": { "allOf": [ { "allOf": [ { "not": { "required": [ "record_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "record_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify and delete an IPA DNS Record using IPA API.", "properties": { "record_name": { "type": "string", "description": "The DNS record name to manage." }, "name": { "type": "string", "description": "The DNS record name to manage." }, "record_type": { "type": "string", "description": "Default: A\n\nThe type of DNS record name.\nCurrently, 'A', 'AAAA', 'A6', 'CNAME', 'DNAME', 'PTR' and 'TXT' are supported.\n'A6', 'CNAME', 'DNAME' and 'TXT' are added in version 2.5." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "zone_name": { "type": "string", "description": "The DNS zone name to which DNS record needs to be managed." }, "record_value": { "type": "string", "description": "Manage DNS record name with this value.\nIn the case of 'A' or 'AAAA' record types, this will be the IP address.\nIn the case of 'A6' record type, this will be the A6 Record data.\nIn the case of 'CNAME' record type, this will be the hostname.\nIn the case of 'DNAME' record type, this will be the DNAME target.\nIn the case of 'PTR' record type, this will be the hostname.\nIn the case of 'TXT' record type, this will be a text." } } }, "panos_admin": { "required": [ "admin_password", "password", "ip_address" ], "type": "object", "description": "PanOS module that allows changes to the user account passwords by doing API calls to the Firewall using pan-api as the protocol.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "admin_username": { "type": "string", "description": "Default: admin\n\nusername for admin user" }, "role": { "type": "string", "description": "role for admin user" }, "admin_password": { "type": "string", "description": "password for admin user" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "avi_certificatemanagementprofile": { "required": [ "name", "script_path" ], "type": "object", "description": "This module is used to configure CertificateManagementProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Name of the pki profile." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "script_path": { "type": "string", "description": "Script_path of certificatemanagementprofile." }, "script_params": { "type": "array", "description": "List of customparams." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "netapp_e_snapshot_images": { "required": [ "state", "api_url", "snapshot_group", "api_username", "api_password" ], "type": "object", "description": "Create and delete snapshots images on snapshot groups for NetApp E-series storage arrays.\nOnly the oldest snapshot image can be deleted so consistency is preserved.\nRelated: Snapshot volumes are created from snapshot images.", "properties": { "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "state": { "type": "string", "description": "Whether a new snapshot image should be created or oldest be deleted." }, "snapshot_group": { "type": "string", "description": "The name of the snapshot group in which you want to create a snapshot image." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" } } }, "statusio_maintenance": { "allOf": [ { "allOf": [ { "not": { "required": [ "components", "component" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "containers", "container" ], "type": "object" } } ] } ], "type": "object", "description": "Creates a maintenance window for status.io\nDeletes a maintenance window for status.io", "properties": { "maintenance_notify_72_hr": { "type": "string", "description": "Notify subscribers 72 hours before maintenance start time" }, "maintenance_notify_1_hr": { "type": "string", "description": "Notify subscribers 1 hour before maintenance start time" }, "container": { "type": "string", "description": "Default: None\n\nThe given name of your container (data center)" }, "title": { "type": "string", "description": "Default: A new maintenance window\n\nA descriptive title for the maintenance window" }, "maintenance_notify_now": { "type": "string", "description": "Notify subscribers now" }, "start_time": { "type": "string", "description": "Default: None\n\nTime maintenance is expected to start (Hour:Minutes) (UTC)\nEnd Time is worked out from start_time + minutes" }, "component": { "type": "string", "description": "Default: None\n\nThe given name of your component (server name)" }, "api_id": { "type": "string", "description": "Your unique API ID from status.io" }, "automation": { "type": "string", "description": "Automatically start and end the maintenance window" }, "maintenance_notify_24_hr": { "type": "string", "description": "Notify subscribers 24 hours before maintenance start time" }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the package." }, "all_infrastructure_affected": { "type": "string", "description": "If it affects all components and containers" }, "url": { "type": "string", "description": "Default: https://api.status.io\n\nStatus.io API URL. A private apiary can be used instead." }, "components": { "type": "string", "description": "Default: None\n\nThe given name of your component (server name)" }, "statuspage": { "type": "string", "description": "Your unique StatusPage ID from status.io" }, "maintenance_id": { "type": "string", "description": "Default: None\n\nThe maintenance id number when deleting a maintenance window" }, "api_key": { "type": "string", "description": "Your unique API Key from status.io" }, "minutes": { "type": "string", "description": "Default: 10\n\nThe length of time in UTC that the maintenance will run (starting from playbook runtime)" }, "start_date": { "type": "string", "description": "Default: None\n\nDate maintenance is expected to start (Month/Day/Year) (UTC)\nEnd Date is worked out from start_date + minutes" }, "containers": { "type": "string", "description": "Default: None\n\nThe given name of your container (data center)" }, "desc": { "type": "string", "description": "Default: Created by Ansible\n\nMessage describing the maintenance window" } } }, "bigip_snmp_trap": { "required": [ "name" ], "type": "object", "description": "Manipulate SNMP trap information on a BIG-IP.", "properties": { "snmp_version": { "type": "string", "description": "Specifies to which Simple Network Management Protocol (SNMP) version the trap destination applies." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "network": { "type": "string", "description": "Specifies the name of the trap network. This option is not supported in versions of BIG-IP < 12.1.0. If used on versions < 12.1.0, it will simply be ignored." }, "destination": { "type": "string", "description": "Specifies the address for the trap destination. This can be either an IP address or a hostname." }, "community": { "type": "string", "description": "Specifies the community name for the trap destination." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the cloud connector exists. When C(absent), ensures that the cloud connector does not exist." }, "port": { "type": "string", "description": "Specifies the port for the trap destination." }, "name": { "type": "string", "description": "Name of the SNMP configuration endpoint." } } }, "proxmox_kvm": { "required": [ "api_host", "api_user" ], "type": "object", "description": "Allows you to create/delete/stop Qemu(KVM) Virtual Machines in Proxmox VE cluster.", "properties": { "storage": { "type": "string", "description": "Target storage for full clone." }, "force": { "type": "string", "description": "Allow to force stop VM.\nCan be used only with states C(stopped), C(restarted)." }, "revert": { "type": "string", "description": "Revert a pending change." }, "numa": { "type": "string", "description": "A hash/dictionaries of NUMA topology. C(numa='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(numa[n]) where 0 ≤ n ≤ N.\nValues allowed are - C(\"cpu=\"\",hostnodes=\"\",memory=\"number\",policy=\"(bind|interleave|preferred)\"\").\nC(cpus) CPUs accessing this NUMA node.\nC(hostnodes) Host NUMA nodes to use.\nC(memory) Amount of memory this NUMA node provides.\nC(policy) NUMA allocation policy." }, "scsihw": { "type": "string", "description": "Specifies the SCSI controller model." }, "startup": { "type": "string", "description": "Startup and shutdown behavior. C([[order=]\\d+] [,up=\\d+] [,down=\\d+]).\nOrder is a non-negative number defining the general startup order.\nShutdown in done with reverse ordering." }, "migrate_speed": { "type": "string", "description": "Sets maximum speed (in MB/s) for migrations.\nA value of 0 is no limit." }, "freeze": { "type": "string", "description": "Specify if PVE should freeze CPU at startup (use 'c' monitor command to start execution)." }, "full": { "type": "string", "description": "Default: True\n\nCreate a full copy of all disk. This is always done when you clone a normal VM.\nFor VM templates, we try to create a linked clone by default.\nUsed only with clone" }, "keyboard": { "type": "string", "description": "Sets the keyboard layout for VNC server." }, "watchdog": { "type": "string", "description": "Creates a virtual hardware watchdog device." }, "serial": { "type": "string", "description": "A hash/dictionary of serial device to create inside the VM. C('{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - serial[n](str; required) where 0 ≤ n ≤ 3.\nValues allowed are - C((/dev/.+|socket)).\n/!\\ If you pass through a host serial device, it is no longer possible to migrate such machines - use with special care." }, "sockets": { "type": "string", "description": "Default: 1\n\nSets the number of CPU sockets. (1 - N)." }, "digest": { "type": "string", "description": "Specify if to prevent changes if current configuration file has different SHA1 digest.\nThis can be used to prevent concurrent modifications." }, "description": { "type": "string", "description": "Specify the description for the VM. Only used on the configuration web interface.\nThis is saved as comment inside the configuration file." }, "startdate": { "type": "string", "description": "Sets the initial date of the real time clock.\nValid format for date are C('now') or C('2016-09-25T16:01:21') or C('2016-09-25')." }, "tablet": { "type": "string", "description": "Default: no\n\nEnables/disables the USB tablet device." }, "bios": { "type": "string", "description": "Specify the BIOS implementation." }, "cpu": { "type": "string", "description": "Default: kvm64\n\nSpecify emulated CPU type." }, "balloon": { "type": "string", "description": "Specify the amount of RAM for the VM in MB.\nUsing zero disables the balloon driver." }, "cpuunits": { "type": "string", "description": "Default: 1000\n\nSpecify CPU weight for a VM.\nYou can disable fair-scheduler configuration by setting this to 0" }, "boot": { "type": "string", "description": "Default: cnd\n\nSpecify the boot order -> boot on floppy C(a), hard disk C(c), CD-ROM C(d), or network C(n).\nYou can combine to set order." }, "vga": { "type": "string", "description": "Default: std\n\nSelect VGA type. If you want to use high resolution modes (>= 1280x1024x16) then you should use option 'std' or 'vmware'." }, "shares": { "type": "string", "description": "Rets amount of memory shares for auto-ballooning. (0 - 50000).\nThe larger the number is, the more memory this VM gets.\nThe number is relative to weights of all other running VMs.\nUsing 0 disables auto-ballooning, this means no limit." }, "machine": { "type": "string", "description": "Specifies the Qemu machine type.\ntype => C((pc|pc(-i440fx)?-\\d+\\.\\d+(\\.pxe)?|q35|pc-q35-\\d+\\.\\d+(\\.pxe)?))" }, "hostpci": { "type": "string", "description": "Specify a hash/dictionary of map host pci devices into guest. C(hostpci='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(hostpci[n]) where 0 ≤ n ≤ N.\nValues allowed are - C(\"host=\"HOSTPCIID[;HOSTPCIID2...]\",pcie=\"1|0\",rombar=\"1|0\",x-vga=\"1|0\"\").\nThe C(host) parameter is Host PCI device pass through. HOSTPCIID syntax is C(bus:dev.func) (hexadecimal numbers).\nC(pcie=boolean) I(default=0) Choose the PCI-express bus (needs the q35 machine model).\nC(rombar=boolean) I(default=1) Specify whether or not the device's ROM will be visible in the guest's memory map.\nC(x-vga=boolean) I(default=0) Enable vfio-vga device support.\n/!\\ This option allows direct access to host hardware. So it is no longer possible to migrate such machines - use with special care." }, "state": { "type": "string", "description": "Default: present\n\nIndicates desired state of the instance.\nIf C(current), the current state of the VM will be fecthed. You can access it with C(results.status)" }, "autostart": { "type": "string", "description": "Default: no\n\nSpecify, if the VM should be automatically restarted after crash (currently ignored in PVE API)." }, "memory": { "type": "string", "description": "Default: 512\n\nMemory size in MB for instance." }, "net": { "type": "string", "description": "A hash/dictionary of network interfaces for the VM. C(net='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(net[n]) where 0 ≤ n ≤ N.\nValues allowed are - C(\"model=\"XX:XX:XX:XX:XX:XX\",brigde=\"value\",rate=\"value\",tag=\"value\",firewall=\"1|0\",trunks=\"vlanid\"\").\nModel is one of C(e1000 e1000-82540em e1000-82544gc e1000-82545em i82551 i82557b i82559er ne2k_isa ne2k_pci pcnet rtl8139 virtio vmxnet3).\nC(XX:XX:XX:XX:XX:XX) should be an unique MAC address. This is automatically generated if not specified.\nThe C(bridge) parameter can be used to automatically add the interface to a bridge device. The Proxmox VE standard bridge is called 'vmbr0'.\nOption C(rate) is used to limit traffic bandwidth from and to this interface. It is specified as floating point number, unit is 'Megabytes per second'.\nIf you specify no bridge, we create a kvm 'user' (NATed) network device, which provides DHCP and DNS services." }, "api_host": { "type": "string", "description": "Specify the target host of the Proxmox VE cluster." }, "migrate_downtime": { "type": "string", "description": "Sets maximum tolerated downtime (in seconds) for migrations." }, "localtime": { "type": "string", "description": "Sets the real time clock to local time.\nThis is enabled by default if ostype indicates a Microsoft OS." }, "node": { "type": "string", "description": "Proxmox VE node, where the new VM will be created.\nOnly required for C(state=present).\nFor other states, it will be autodiscovered." }, "agent": { "type": "string", "description": "Specify if the QEMU GuestAgent should be enabled/disabled." }, "virtio": { "type": "string", "description": "A hash/dictionary of volume used as VIRTIO hard disk. C(virtio='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(virto[n]) where 0 ≤ n ≤ 15.\nValues allowed are - C(\"storage:size,format=value\").\nC(storage) is the storage identifier where to create the disk.\nC(size) is the size of the disk in GB.\nC(format) is the drive's backing file's data format. C(qcow2|raw|subvol)." }, "template": { "type": "string", "description": "Default: no\n\nEnables/disables the template." }, "format": { "type": "string", "description": "Default: qcow2\n\nTarget drive's backing file's data format.\nUsed only with clone" }, "clone": { "type": "string", "description": "Name of VM to be cloned. If C(vmid) is setted, C(clone) can take arbitrary value but required for intiating the clone." }, "args": { "type": "string", "description": "Default: -serial unix:/var/run/qemu-server/VMID.serial,server,nowait\n\nPass arbitrary arguments to kvm.\nThis option is for experts only!" }, "api_password": { "type": "string", "description": "Specify the password to authenticate with.\nYou can use C(PROXMOX_PASSWORD) environment variable." }, "snapname": { "type": "string", "description": "The name of the snapshot. Used only with clone." }, "tdf": { "type": "string", "description": "Enables/disables time drift fix." }, "kvm": { "type": "string", "description": "Default: yes\n\nEnable/disable KVM hardware virtualization." }, "sata": { "type": "string", "description": "A hash/dictionary of volume used as sata hard disk or CD-ROM. C(sata='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(sata[n]) where 0 ≤ n ≤ 5.\nValues allowed are - C(\"storage:size,format=value\").\nC(storage) is the storage identifier where to create the disk.\nC(size) is the size of the disk in GB.\nC(format) is the drive's backing file's data format. C(qcow2|raw|subvol)." }, "protection": { "type": "string", "description": "Enable/disable the protection flag of the VM. This will enable/disable the remove VM and remove disk operations." }, "reboot": { "type": "string", "description": "Allow reboot. If set to yes, the VM exit on reboot." }, "hotplug": { "type": "string", "description": "Selectively enable hotplug features.\nThis is a comma separated list of hotplug features C('network', 'disk', 'cpu', 'memory' and 'usb').\nValue 0 disables hotplug completely and value 1 is an alias for the default C('network,disk,usb')." }, "api_user": { "type": "string", "description": "Specify the user to authenticate with." }, "parallel": { "type": "string", "description": "A hash/dictionary of map host parallel devices. C(parallel='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - (parallel[n]) where 0 ≤ n ≤ 2.\nValues allowed are - C(\"/dev/parport\\d+|/dev/usb/lp\\d+\")." }, "pool": { "type": "string", "description": "Add the new VM to the specified pool." }, "target": { "type": "string", "description": "Target node. Only allowed if the original VM is on shared storage.\nUsed only with clone" }, "lock": { "type": "string", "description": "Lock/unlock the VM." }, "ide": { "type": "string", "description": "A hash/dictionary of volume used as IDE hard disk or CD-ROM. C(ide='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(ide[n]) where 0 ≤ n ≤ 3.\nValues allowed are - C(\"storage:size,format=value\").\nC(storage) is the storage identifier where to create the disk.\nC(size) is the size of the disk in GB.\nC(format) is the drive's backing file's data format. C(qcow2|raw|subvol)." }, "name": { "type": "string", "description": "Specifies the VM name. Only used on the configuration web interface.\nRequired only for C(state=present)." }, "update": { "type": "string", "description": "Default: no\n\nIf C(yes), the VM will be update with new value.\nCause of the operations of the API and security reasons, I have disabled the update of the following parameters\nC(net, virtio, ide, sata, scsi). Per example updating C(net) update the MAC address and C(virtio) create always new disk..." }, "vmid": { "type": "string", "description": "Specifies the VM ID. Instead use I(name) parameter.\nIf vmid is not set, the next available VM ID will be fetched from ProxmoxAPI." }, "hugepages": { "type": "string", "description": "Enable/disable hugepages memory." }, "bootdisk": { "type": "string", "description": "Enable booting from specified disk. C((ide|sata|scsi|virtio)\\d+)" }, "ostype": { "type": "string", "description": "Default: l26\n\nSpecifies guest operating system. This is used to enable special optimization/features for specific operating systems.\nThe l26 is Linux 2.6/3.X Kernel." }, "acpi": { "type": "string", "description": "Default: yes\n\nSpecify if ACPI should be enables/disabled." }, "vcpus": { "type": "string", "description": "Sets number of hotplugged vcpus." }, "newid": { "type": "string", "description": "VMID for the clone. Used only with clone.\nIf newid is not set, the next available VM ID will be fetched from ProxmoxAPI." }, "timeout": { "type": "string", "description": "Default: 30\n\nTimeout for operations." }, "smbios": { "type": "string", "description": "Specifies SMBIOS type 1 fields." }, "skiplock": { "type": "string", "description": "Ignore locks\nOnly root is allowed to use this option." }, "cores": { "type": "string", "description": "Default: 1\n\nSpecify number of cores per socket." }, "scsi": { "type": "string", "description": "A hash/dictionary of volume used as SCSI hard disk or CD-ROM. C(scsi='{\"key\":\"value\", \"key\":\"value\"}').\nKeys allowed are - C(sata[n]) where 0 ≤ n ≤ 13.\nValues allowed are - C(\"storage:size,format=value\").\nC(storage) is the storage identifier where to create the disk.\nC(size) is the size of the disk in GB.\nC(format) is the drive's backing file's data format. C(qcow2|raw|subvol)." }, "cpulimit": { "type": "string", "description": "Specify if CPU usage will be limited. Value 0 indicates no CPU limit.\nIf the computer has 2 CPUs, it has total of '2' CPU time" }, "validate_certs": { "type": "string", "description": "Default: no\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "onboot": { "type": "string", "description": "Default: yes\n\nSpecifies whether a VM will be started during system bootup." }, "delete": { "type": "string", "description": "Specify a list of settings you want to delete." } } }, "dynamodb_table": { "required": [ "name" ], "type": "object", "description": "Create or delete AWS Dynamo DB tables.\nCan update the provisioned throughput on existing tables.\nReturns the status of the specified table.", "properties": { "read_capacity": { "type": "string", "description": "Default: 1\n\nRead throughput capacity (units) to provision." }, "hash_key_name": { "type": "string", "description": "Name of the hash key.\nRequired when C(state=present)." }, "range_key_type": { "type": "string", "description": "Default: STRING\n\nType of the range key." }, "name": { "type": "string", "description": "Name of the table." }, "write_capacity": { "type": "string", "description": "Default: 1\n\nWrite throughput capacity (units) to provision." }, "indexes": { "type": "array", "description": "list of dictionaries describing indexes to add to the table. global indexes can be updated. local indexes don't support updates or have throughput.\nrequired options: ['name', 'type', 'hash_key_name']\nvalid types: ['all', 'global_all', 'global_include', 'global_keys_only', 'include', 'keys_only']\nother options: ['hash_key_type', 'range_key_name', 'range_key_type', 'includes', 'read_capacity', 'write_capacity']" }, "range_key_name": { "type": "string", "description": "Name of the range key." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete the table" }, "hash_key_type": { "type": "string", "description": "Default: STRING\n\nType of the hash key." } } }, "group_by": { "required": [ "key" ], "type": "object", "description": "Use facts to create ad-hoc groups that can be used later in a playbook.\nThis module is also supported for Windows targets.", "properties": { "parents": { "type": "string", "description": "Default: all\n\nThe list of the parent groups" }, "key": { "type": "string", "description": "The variables whose values will be used as groups" } } }, "rax_mon_notification": { "required": [ "notification_type", "details", "label" ], "type": "object", "description": "Create or delete a Rackspace Cloud Monitoring notification that specifies a channel that can be used to communicate alarms, such as email, webhooks, or PagerDuty. Rackspace monitoring module flow | rax_mon_entity -> rax_mon_check -> *rax_mon_notification* -> rax_mon_notification_plan -> rax_mon_alarm", "properties": { "notification_type": { "type": "string", "description": "A supported notification type." }, "state": { "type": "string", "description": "Ensure that the notification with this C(label) exists or does not exist." }, "details": { "type": "object", "description": "Dictionary of key-value pairs used to initialize the notification. Required keys and meanings vary with notification type. See http://docs.rackspace.com/cm/api/v1.0/cm-devguide/content/ service-notification-types-crud.html for details." }, "label": { "type": "string", "description": "Defines a friendly name for this notification. String between 1 and 255 characters long." } } }, "uptimerobot": { "required": [ "monitorid", "state", "apikey" ], "type": "object", "description": "This module will let you start and pause Uptime Robot Monitoring", "properties": { "monitorid": { "type": "string", "description": "ID of the monitor to check." }, "state": { "type": "string", "description": "Define whether or not the monitor should be running or paused." }, "apikey": { "type": "string", "description": "Uptime Robot API key." } } }, "lxd_profile": { "required": [ "name" ], "type": "object", "description": "Management of LXD profiles", "properties": { "new_name": { "type": "string", "description": "A new name of a profile.\nIf this parameter is specified a profile will be renamed to this name. See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-11)" }, "name": { "type": "string", "description": "Name of a profile." }, "url": { "type": "string", "description": "Default: unix:/var/lib/lxd/unix.socket\n\nThe unix domain socket path or the https URL for the LXD server." }, "trust_password": { "type": "string", "description": "The client trusted password.\nYou need to set this password on the LXD server before running this module using the following command. lxc config set core.trust_password See U(https://www.stgraber.org/2016/04/18/lxd-api-direct-interaction/)\nIf trust_password is set, this module send a request for authentication before sending any requests." }, "cert_file": { "type": "string", "description": "Default: \"{}/.config/lxc/client.crt\" .format(os.environ[\"HOME\"])\n\nThe client certificate file path." }, "devices": { "type": "string", "description": "The devices for the profile (e.g. {\"rootfs\": {\"path\": \"/dev/kvm\", \"type\": \"unix-char\"}). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#patch-3)" }, "state": { "type": "string", "description": "Default: present\n\nDefine the state of a profile." }, "key_file": { "type": "string", "description": "Default: \"{}/.config/lxc/client.key\" .format(os.environ[\"HOME\"])\n\nThe client certificate key file path." }, "config": { "type": "string", "description": "The config for the container (e.g. {\"limits.memory\": \"4GB\"}). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#patch-3)\nIf the profile already exists and its \"config\" value in metadata obtained from GET /1.0/profiles/ U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#get-19) are different, they this module tries to apply the configurations.\nNot all config values are supported to apply the existing profile. Maybe you need to delete and recreate a profile." }, "description": { "type": "string", "description": "Description of the profile." } } }, "avi_sslprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure SSLProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "ssl_session_timeout": { "type": "string", "description": "The amount of time before an ssl session expires.\nDefault value when not specified in API or module is interpreted by Avi Controller as 86400.\nUnits(SEC)." }, "accepted_ciphers": { "type": "string", "description": "Ciphers suites represented as defined by U(http://www.openssl.org/docs/apps/ciphers.html).\nDefault value when not specified in API or module is interpreted by Avi Controller as AES:3DES:RC4." }, "prefer_client_cipher_ordering": { "description": "Prefer the ssl cipher ordering presented by the client during the ssl handshake over the one specified in the ssl profile.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "description": { "type": "string", "description": "User defined description for the object." }, "tags": { "type": "array", "description": "List of tag." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "accepted_versions": { "type": "string", "description": "Set of versions accepted by the server." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "enable_ssl_session_reuse": { "description": "Enable ssl session re-use.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "cipher_enums": { "type": "string", "description": "Enum options - tls_ecdhe_ecdsa_with_aes_128_gcm_sha256, tls_ecdhe_ecdsa_with_aes_256_gcm_sha384, tls_ecdhe_rsa_with_aes_128_gcm_sha256,\ntls_ecdhe_rsa_with_aes_256_gcm_sha384, tls_ecdhe_ecdsa_with_aes_128_cbc_sha256, tls_ecdhe_ecdsa_with_aes_256_cbc_sha384,\ntls_ecdhe_rsa_with_aes_128_cbc_sha256, tls_ecdhe_rsa_with_aes_256_cbc_sha384, tls_rsa_with_aes_128_gcm_sha256, tls_rsa_with_aes_256_gcm_sha384,\ntls_rsa_with_aes_128_cbc_sha256, tls_rsa_with_aes_256_cbc_sha256, tls_ecdhe_ecdsa_with_aes_128_cbc_sha, tls_ecdhe_ecdsa_with_aes_256_cbc_sha,\ntls_ecdhe_rsa_with_aes_128_cbc_sha, tls_ecdhe_rsa_with_aes_256_cbc_sha, tls_rsa_with_aes_128_cbc_sha, tls_rsa_with_aes_256_cbc_sha,\ntls_rsa_with_3des_ede_cbc_sha, tls_rsa_with_rc4_128_sha." }, "send_close_notify": { "description": "Send 'close notify' alert message for a clean shutdown of the ssl connection.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "dhparam": { "type": "string", "description": "Dh parameters used in ssl.\nAt this time, it is not configurable and is set to 2048 bits." }, "ssl_rating": { "type": "string", "description": "Sslrating settings for sslprofile." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "rax_mon_check": { "required": [ "entity_id", "check_type", "label" ], "type": "object", "description": "Create or delete a Rackspace Cloud Monitoring check associated with an existing rax_mon_entity. A check is a specific test or measurement that is performed, possibly from different monitoring zones, on the systems you monitor. Rackspace monitoring module flow | rax_mon_entity -> *rax_mon_check* -> rax_mon_notification -> rax_mon_notification_plan -> rax_mon_alarm", "properties": { "entity_id": { "type": "string", "description": "ID of the rax_mon_entity to target with this check." }, "check_type": { "type": "string", "description": "The type of check to create. C(remote.) checks may be created on any rax_mon_entity. C(agent.) checks may only be created on rax_mon_entities that have a non-null C(agent_id)." }, "target_alias": { "type": "string", "description": "One of `target_alias` and `target_hostname` is required for remote.* checks, but prohibited for agent.* checks. Use the corresponding key in the entity's `ip_addresses` hash to resolve an IP address to target." }, "target_hostname": { "type": "string", "description": "One of `target_hostname` and `target_alias` is required for remote.* checks, but prohibited for agent.* checks. The hostname this check should target. Must be a valid IPv4, IPv6, or FQDN." }, "label": { "type": "string", "description": "Defines a label for this check, between 1 and 64 characters long." }, "disabled": { "type": "string", "description": "If \"yes\", ensure the check is created, but don't actually use it yet." }, "state": { "type": "string", "description": "Ensure that a check with this C(label) exists or does not exist." }, "period": { "type": "string", "description": "The number of seconds between each time the check is performed. Must be greater than the minimum period set on your account." }, "details": { "type": "string", "description": "Additional details specific to the check type. Must be a hash of strings between 1 and 255 characters long, or an array or object containing 0 to 256 items." }, "timeout": { "type": "string", "description": "The number of seconds this check will wait when attempting to collect results. Must be less than the period." }, "monitoring_zones_poll": { "type": "string", "description": "Comma-separated list of the names of the monitoring zones the check should run from. Available monitoring zones include mzdfw, mzhkg, mziad, mzlon, mzord and mzsyd. Required for remote.* checks; prohibited for agent.* checks." }, "metadata": { "type": "string", "description": "Hash of arbitrary key-value pairs to accompany this check if it fires. Keys and values must be strings between 1 and 255 characters long." } } }, "avi_snmptrapprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure SnmpTrapProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "A user-friendly name of the snmp trap configuration." }, "trap_servers": { "type": "string", "description": "The ip address or hostname of the snmp trap destination server." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Uuid of the snmp trap profile object." } } }, "aci_interface_policy_fc": { "allOf": [ { "allOf": [ { "not": { "required": [ "fc_policy", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "fc_policy" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage ACI Fiber Channel interface policies on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the Fiber Channel interface policy." }, "descr": { "type": "string", "description": "The description of the Fiber Channel interface policy." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "fc_policy": { "type": "string", "description": "The name of the Fiber Channel interface policy." }, "port_mode": { "type": "string", "description": "Default: f\n\nPort Mode" }, "description": { "type": "string", "description": "The description of the Fiber Channel interface policy." } } }, "rabbitmq_binding": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "src", "source" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "src" ], "type": "object" }, { "required": [ "source" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "destination", "dst", "dest" ], "type": "object" } }, { "oneOf": [ { "required": [ "destination" ], "type": "object" }, { "required": [ "dst" ], "type": "object" }, { "required": [ "dest" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "destination_type", "type", "dest_type" ], "type": "object" } }, { "oneOf": [ { "required": [ "destination_type" ], "type": "object" }, { "required": [ "type" ], "type": "object" }, { "required": [ "dest_type" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module uses rabbitMQ Rest API to create/delete bindings", "properties": { "login_port": { "type": "string", "description": "Default: 15672\n\nrabbitMQ management api port" }, "name": { "type": "string", "description": "source exchange to create binding on" }, "dest_type": { "type": "string", "description": "Either queue or exchange" }, "src": { "type": "string", "description": "source exchange to create binding on" }, "dest": { "type": "string", "description": "destination exchange or queue for the binding" }, "login_user": { "type": "string", "description": "Default: guest\n\nrabbitMQ user for connection" }, "login_host": { "type": "string", "description": "Default: localhost\n\nrabbitMQ host for connection" }, "destination": { "type": "string", "description": "destination exchange or queue for the binding" }, "routing_key": { "type": "string", "description": "Default: #\n\nrouting key for the binding\ndefault is" }, "source": { "type": "string", "description": "source exchange to create binding on" }, "state": { "type": "string", "description": "Default: present\n\nWhether the exchange should be present or absent\nOnly present implemented atm" }, "arguments": { "type": "string", "description": "extra arguments for exchange. If defined this argument is a key/value dictionary" }, "login_password": { "type": "string", "description": "rabbitMQ password for connection" }, "destination_type": { "type": "string", "description": "Either queue or exchange" }, "vhost": { "type": "string", "description": "Default: /\n\nrabbitMQ virtual host\ndefault vhost is /" }, "type": { "type": "string", "description": "Either queue or exchange" }, "dst": { "type": "string", "description": "destination exchange or queue for the binding" } } }, "vyos_linkagg": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of link aggregation groups on VyOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of link aggregation definitions." }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "name": { "type": "string", "description": "Name of the link aggregation group." }, "members": { "type": "array", "description": "List of members of the link aggregation group." }, "mode": { "type": "string", "description": "Mode of the link aggregation group." } } }, "nxos_vlan": { "type": "object", "description": "Manages VLAN configurations on NX-OS switches.", "properties": { "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state arguments." }, "vlan_state": { "type": "string", "description": "Default: active\n\nManage the vlan operational state of the VLAN This is being deprecated in favor of state." }, "name": { "type": "string", "description": "Default: null - Name of VLAN or keyword 'default'.\n\nName of VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces that should be associated to the VLAN or keyword 'default'." }, "mapped_vni": { "type": "string", "description": "The Virtual Network Identifier (VNI) ID that is mapped to the VLAN. Valid values are integer and keyword 'default'. Range 4096-16773119." }, "purge": { "description": "Purge VLANs not defined in the I(aggregate) parameter. This parameter can be used without aggregate as well.", "$ref": "#/definitions/ansible_truth" }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "admin_state": { "type": "string", "description": "Default: up\n\nManage the VLAN administrative state of the VLAN equivalent to shut/no shut in VLAN config mode." }, "mode": { "type": "string", "description": "Default: ce\n\nSet VLAN mode to classical ethernet or fabricpath. This is a valid option for Nexus 5000 and 7000 series." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vlan C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vlan interfaces on device it will result in failure." }, "vlan_range": { "type": "string", "description": "Range of VLANs such as 2-10 or 2,5,10-15, etc." }, "vlan_id": { "type": "string", "description": "Single VLAN ID." } } }, "nxos_vrf_interface": { "required": [ "interface", "vrf" ], "type": "object", "description": "Manages interface specific VRF configuration.", "properties": { "interface": { "type": "string", "description": "Full name of interface to be managed, i.e. Ethernet1/1." }, "state": { "type": "string", "description": "Default: present\n\nManages desired state of the resource." }, "vrf": { "type": "string", "description": "Name of VRF to be managed." } } }, "nxos_ospf": { "required": [ "ospf" ], "type": "object", "description": "Manages configuration of an ospf instance.", "properties": { "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "ospf": { "type": "string", "description": "Name of the ospf instance." } } }, "bigpanda": { "required": [ "component", "token", "state", "version" ], "type": "object", "description": "Notify BigPanda when deployments start and end (successfully or not). Returns a deployment object containing all the parameters for future module calls.", "properties": { "description": { "type": "string", "description": "Free text description of the deployment." }, "url": { "type": "string", "description": "Default: https://api.bigpanda.io\n\nBase URL of the API server." }, "component": { "type": "string", "description": "The name of the component being deployed. Ex: billing" }, "state": { "type": "string", "description": "State of the deployment." }, "token": { "type": "string", "description": "API token." }, "version": { "type": "string", "description": "The deployment version." }, "hosts": { "type": "string", "description": "Default: machine's hostname\n\nName of affected host name. Can be a list." }, "env": { "type": "string", "description": "The environment name, typically 'production', 'staging', etc." }, "owner": { "type": "string", "description": "The person responsible for the deployment." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "vmware_host_firewall_facts": { "type": "object", "description": "This module can be used to gather facts about an ESXi host's firewall configuration information when ESXi hostname or Cluster name is given.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster from which the ESXi host belong to.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to gather facts from.\nIf C(cluster_name) is not given, this parameter is required." } } }, "sensu_check": { "required": [ "name", "command" ], "type": "object", "description": "Manage the checks that should be run on a machine by I(Sensu).\nMost options do not have a default and will not be added to the check definition unless specified.\nAll defaults except I(path), I(state), I(backup) and I(metric) are not managed by this module,\nthey are simply specified for your convenience.", "properties": { "interval": { "type": "string", "description": "Check interval in seconds" }, "metric": { "type": "string", "description": "Whether the check is a metric" }, "subdue_begin": { "type": "string", "description": "When to disable handling of check failures" }, "occurrences": { "type": "string", "description": "Default: 1\n\nNumber of event occurrences before the handler should take action" }, "low_flap_threshold": { "type": "string", "description": "The low threshold for flap detection" }, "ttl": { "type": "string", "description": "Time to live in seconds until the check is considered stale" }, "publish": { "type": "string", "description": "Default: True\n\nWhether the check should be scheduled at all.\nYou can still issue it via the sensu api" }, "custom": { "type": "string", "description": "A hash/dictionary of custom parameters for mixing to the configuration.\nYou can't rewrite others module parameters using this" }, "source": { "type": "string", "description": "The check source, used to create a JIT Sensu client for an external resource (e.g. a network switch)." }, "state": { "type": "string", "description": "Default: present\n\nWhether the check should be present or not" }, "subdue_end": { "type": "string", "description": "When to enable handling of check failures" }, "handle": { "type": "string", "description": "Default: True\n\nWhether the check should be handled or not" }, "dependencies": { "type": "string", "description": "Other checks this check depends on, if dependencies fail,\nhandling of this check will be disabled" }, "subscribers": { "type": "array", "description": "List of subscribers/channels this check should run for\nSee sensu_subscribers to subscribe a machine to a channel" }, "aggregate": { "type": "string", "description": "Classifies the check as an aggregate check,\nmaking it available via the aggregate API" }, "path": { "type": "string", "description": "Default: /etc/sensu/conf.d/checks.json\n\nPath to the json file of the check to be added/removed.\nWill be created if it does not exist (unless I(state=absent)).\nThe parent folders need to exist when I(state=present), otherwise an error will be thrown" }, "name": { "type": "string", "description": "The name of the check\nThis is the key that is used to determine whether a check exists" }, "standalone": { "type": "string", "description": "Whether the check should be scheduled by the sensu client or server\nThis option obviates the need for specifying the I(subscribers) option" }, "handlers": { "type": "array", "description": "List of handlers to notify when the check fails" }, "refresh": { "type": "string", "description": "Number of seconds handlers should wait before taking second action" }, "command": { "type": "string", "description": "Path to the sensu check to run (not required when I(state=absent))" }, "high_flap_threshold": { "type": "string", "description": "The high threshold for flap detection" }, "timeout": { "type": "string", "description": "Default: 10\n\nTimeout for the check" }, "backup": { "type": "string", "description": "Create a backup file (if yes), including the timestamp information so\nyou can get the original file back if you somehow clobbered it incorrectly." } } }, "bzr": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "parent" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "parent" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage I(bzr) branches to deploy files or software.", "properties": { "executable": { "type": "string", "description": "Path to bzr executable to use. If not supplied, the normal mechanism for resolving binary paths will be used." }, "force": { "description": "Default: no\n\nIf C(yes), any modified files in the working tree will be discarded. Before 1.9 the default value was C(yes).", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "SSH or HTTP protocol address of the parent branch." }, "parent": { "type": "string", "description": "SSH or HTTP protocol address of the parent branch." }, "dest": { "type": "string", "description": "Absolute path of where the branch should be cloned to." }, "version": { "type": "string", "description": "Default: head\n\nWhat version of the branch to clone. This can be the bzr revno or revid." } } }, "vdo": { "required": [ "name", "state" ], "type": "object", "description": "This module controls the VDO dedupe and compression device. VDO, or Virtual Data Optimizer, is a device-mapper target that provides inline block-level deduplication, compression, and thin provisioning capabilities to primary storage.", "properties": { "activated": { "type": "string", "description": "The \"activate\" status for a VDO volume. If this is set to \"no\", the VDO volume cannot be started, and it will not start on system startup. However, on initial creation, a VDO volume with \"activated\" set to \"off\" will be running, until stopped. This is the default behavior of the \"vdo create\" command; it provides the user an opportunity to write a base amount of metadata (filesystem, LVM headers, etc.) to the VDO volume prior to stopping the volume, and leaving it deactivated until ready to use." }, "emulate512": { "description": "Enables 512-byte emulation mode, allowing drivers or filesystems to access the VDO volume at 512-byte granularity, instead of the default 4096-byte granularity. Default is 'disabled'; only recommended when a driver or filesystem requires 512-byte sector level access to a device. This option is only available when creating a new volume, and cannot be changed for an existing volume.", "$ref": "#/definitions/ansible_truth" }, "indexmem": { "type": "string", "description": "Specifies the amount of index memory in gigabytes. The default is 0.25. The special decimal values 0.25, 0.5, and 0.75 can be used, as can any positive integer. This option is only available when creating a new volume, and cannot be changed for an existing volume." }, "blockmapcachesize": { "type": "string", "description": "The amount of memory allocated for caching block map pages, in megabytes (or may be issued with an LVM-style suffix of K, M, G, or T). The default (and minimum) value is 128M. The value specifies the size of the cache; there is a 15% memory usage overhead. Each 1.25G of block map covers 1T of logical blocks, therefore a small amount of block map cache memory can cache a significantly large amount of block map data. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "writepolicy": { "type": "string", "description": "Specifies the write policy of the VDO volume. The 'sync' mode acknowledges writes only after data is on stable storage. The 'async' mode acknowledges writes when data has been cached for writing to stable storage. The default (and highly recommended) 'auto' mode checks the storage device to determine whether it supports flushes. Devices that support flushes will result in a VDO volume in 'async' mode, while devices that do not support flushes will run in sync mode. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "compression": { "type": "string", "description": "Configures whether compression is enabled. The default for a created volume is 'enabled'. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "deduplication": { "type": "string", "description": "Configures whether deduplication is enabled. The default for a created volume is 'enabled'. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "state": { "type": "string", "description": "Whether this VDO volume should be \"present\" or \"absent\". If a \"present\" VDO volume does not exist, it will be created. If a \"present\" VDO volume already exists, it will be modified, by updating the configuration, which will take effect when the VDO volume is restarted. Not all parameters of an existing VDO volume can be modified; the \"statusparamkeys\" list contains the parameters that can be modified after creation. If an \"absent\" VDO volume does not exist, it will not be removed." }, "logicalsize": { "type": "string", "description": "The logical size of the VDO volume (in megabytes, or LVM suffix format). If not specified for a new volume, this defaults to the same size as the underlying storage device, which is specified in the 'device' parameter. Existing volumes will maintain their size if the logicalsize parameter is not specified, or is smaller than or identical to the current size. If the specified size is larger than the current size, a growlogical operation will be performed." }, "readcachesize": { "type": "string", "description": "Specifies the extra VDO device read cache size in megabytes. This is in addition to a system-defined minimum. Using a value with a suffix of K, M, G, or T is optional. The default value is 0. 1.125 MB of memory per bio thread will be used per 1 MB of read cache specified (for example, a VDO volume configured with 4 bio threads will have a read cache memory usage overhead of 4.5 MB per 1 MB of read cache specified). Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "indexmode": { "type": "string", "description": "Specifies the index mode of the Albireo index. The default is 'dense', which has a deduplication window of 1 GB of index memory per 1 TB of incoming data, requiring 10 GB of index data on persistent storage. The 'sparse' mode has a deduplication window of 1 GB of index memory per 10 TB of incoming data, but requires 100 GB of index data on persistent storage. This option is only available when creating a new volume, and cannot be changed for an existing volume." }, "biothreads": { "type": "string", "description": "Specifies the number of threads to use for submitting I/O operations to the storage device. Valid values are integer values from 1 to 100 (lower numbers are preferable due to overhead). The default is 4. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "ackthreads": { "type": "string", "description": "Specifies the number of threads to use for acknowledging completion of requested VDO I/O operations. Valid values are integer values from 1 to 100 (lower numbers are preferable due to overhead). The default is 1. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "running": { "type": "string", "description": "Whether this VDO volume is running. A VDO volume must be activated in order to be started." }, "readcache": { "type": "string", "description": "Enables or disables the read cache. The default is 'disabled'. Choosing 'enabled' enables a read cache which may improve performance for workloads of high deduplication, read workloads with a high level of compression, or on hard disk storage. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "cputhreads": { "type": "string", "description": "Specifies the number of threads to use for CPU-intensive work such as hashing or compression. Valid values are integer values from 1 to 100 (lower numbers are preferable due to overhead). The default is 2. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "device": { "type": "string", "description": "The full path of the device to use for VDO storage. This is required if \"state\" is \"present\"." }, "physicalthreads": { "type": "string", "description": "Specifies the number of threads across which to subdivide parts of the VDO processing based on physical block addresses. Valid values are integer values from 1 to 16 (lower numbers are preferable due to overhead). The physical space used by the VDO volume must be larger than (slabsize * physicalthreads). The default is 1. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." }, "name": { "type": "string", "description": "The name of the VDO volume." }, "growphysical": { "description": "Specifies whether to attempt to execute a growphysical operation, if there is enough unused space on the device. A growphysical operation will be executed if there is at least 64 GB of free space, relative to the previous physical size of the affected VDO volume.", "$ref": "#/definitions/ansible_truth" }, "slabsize": { "type": "string", "description": "The size of the increment by which the physical size of a VDO volume is grown, in megabytes (or may be issued with an LVM-style suffix of K, M, G, or T). Must be a power of two between 128M and 32G. The default is 2G, which supports volumes having a physical size up to 16T. The maximum, 32G, supports a physical size of up to 256T. This option is only available when creating a new volume, and cannot be changed for an existing volume." }, "logicalthreads": { "type": "string", "description": "Specifies the number of threads across which to subdivide parts of the VDO processing based on logical block addresses. Valid values are integer values from 1 to 100 (lower numbers are preferable due to overhead). The default is 1. Existing volumes will maintain their previously configured setting unless a different value is specified in the playbook." } } }, "os_user": { "required": [ "name" ], "type": "object", "description": "Manage OpenStack Identity users. Users can be created, updated or deleted using this module. A user will be updated if I(name) matches an existing user and I(state) is present. The value for I(name) cannot be updated without deleting and re-creating the user.", "properties": { "default_project": { "type": "string", "description": "Default: None\n\nProject name or ID that the user should be associated with by default" }, "name": { "type": "string", "description": "Username for the user" }, "enabled": { "type": "string", "description": "Default: True\n\nIs the user enabled" }, "domain": { "type": "string", "description": "Default: None\n\nDomain to create the user in if the cloud supports domains" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "password": { "type": "string", "description": "Default: None\n\nPassword for the user" }, "email": { "type": "string", "description": "Default: None\n\nEmail address for the user" } } }, "bigip_ucs_fetch": { "required": [ "dest" ], "type": "object", "description": "This module is used for fetching UCS files from remote machines and storing them locally in a file tree, organized by hostname. Note that this module is written to transfer UCS files that might not be present, so a missing remote UCS won't be an error unless fail_on_missing is set to 'yes'.", "properties": { "src": { "type": "string", "description": "The name of the UCS file to create on the remote server for downloading" }, "force": { "description": "Default: True\n\nIf C(no), the file will only be transferred if the destination does not exist.", "$ref": "#/definitions/ansible_truth" }, "encryption_password": { "type": "string", "description": "Password to use to encrypt the UCS file if desired" }, "dest": { "type": "string", "description": "A directory to save the UCS file into." }, "fail_on_missing": { "description": "Make the module fail if the UCS file on the remote system is missing.", "$ref": "#/definitions/ansible_truth" }, "create_on_missing": { "description": "Default: True\n\nCreates the UCS based on the value of C(src) if the file does not already exist on the remote system.", "$ref": "#/definitions/ansible_truth" }, "backup": { "description": "Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.", "$ref": "#/definitions/ansible_truth" } } }, "ipify_facts": { "type": "object", "description": "If behind NAT and need to know the public IP of your internet gateway.", "properties": { "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to C(NO), SSL certificates will not be validated." }, "api_url": { "type": "string", "description": "Default: https://api.ipify.org\n\nURL of the ipify.org API service.\nC(?format=json) will be appended per default." }, "timeout": { "type": "string", "description": "Default: 10\n\nHTTP connection timeout in seconds." } } }, "openssl_dhparam": { "required": [ "path" ], "type": "object", "description": "This module allows one to (re)generate OpenSSL DH-params. This module uses file common arguments to specify generated file permissions.", "properties": { "path": { "type": "string", "description": "Name of the file in which the generated parameters will be saved." }, "state": { "type": "string", "description": "Default: present\n\nWhether the parameters should exist or not, taking action if the state is different from what is stated." }, "force": { "type": "string", "description": "Should the parameters be regenerated even it it already exists" }, "size": { "type": "string", "description": "Default: 4096\n\nSize (in bits) of the generated DH-params" } } }, "flowadm": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "flow" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "flow" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create/modify/remove networking bandwidth and associated resources for a type of traffic on a particular link.", "properties": { "dsfield": { "type": "string", "description": "- Identifies the 8-bit differentiated services field (as defined in RFC 2474). The optional dsfield_mask is used to state the bits of interest in the differentiated services field when comparing with the dsfield value. Both values must be in hexadecimal.\n" }, "temporary": { "type": "string", "description": "Specifies that the configured flow is temporary. Temporary flows do not persist across reboots." }, "name": { "type": "string", "description": "- A flow is defined as a set of attributes based on Layer 3 and Layer 4 headers, which can be used to identify a protocol, service, or a zone.\n" }, "maxbw": { "type": "string", "description": "- Sets the full duplex bandwidth for the flow. The bandwidth is specified as an integer with one of the scale suffixes(K, M, or G for Kbps, Mbps, and Gbps). If no units are specified, the input value will be read as Mbps.\n" }, "local_port": { "type": "string", "description": "Identifies a service specified by the local port." }, "local_ip": { "type": "string", "description": "Identifies a network flow by the local IP address." }, "flow": { "type": "string", "description": "- A flow is defined as a set of attributes based on Layer 3 and Layer 4 headers, which can be used to identify a protocol, service, or a zone.\n" }, "remove_ip": { "type": "string", "description": "Identifies a network flow by the remote IP address." }, "priority": { "type": "string", "description": "Default: medium\n\nSets the relative priority for the flow." }, "state": { "type": "string", "description": "Default: present\n\nCreate/delete/enable/disable an IP address on the network interface." }, "link": { "type": "string", "description": "Specifiies a link to configure flow on." }, "transport": { "type": "string", "description": "- Specifies a Layer 4 protocol to be used. It is typically used in combination with I(local_port) to identify the service that needs special attention.\n" } } }, "ce_netstream_template": { "required": [ "type" ], "type": "object", "description": "Manages NetStream template configuration on HUAWEI CloudEngine switches.", "properties": { "record_name": { "type": "string", "description": "Configure the name of netstream record. The value is a string of 1 to 32 case-insensitive characters." }, "description": { "type": "string", "description": "Configure the description of netstream record. The value is a string of 1 to 80 case-insensitive characters." }, "collect_counter": { "type": "string", "description": "Configure the number of packets and bytes that are included in the flexible flow statistics sent to NSC." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "collect_interface": { "type": "string", "description": "Configure the input or output interface that are included in the flexible flow statistics sent to NSC." }, "type": { "type": "string", "description": "Configure the type of netstream record." }, "match": { "type": "string", "description": "Configure flexible flow statistics template keywords." } } }, "vdirect_runnable": { "required": [ "vdirect_user", "runnable_name", "vdirect_ip", "runnable_type", "vdirect_password" ], "type": "object", "description": "Runs configuration templates, creates workflows and runs workflow actions in Radware vDirect server.", "properties": { "vdirect_user": { "type": "string", "description": "Default: None\n\nvDirect server username, may be set as C(VDIRECT_USER) environment variable." }, "vdirect_password": { "type": "string", "description": "Default: None\n\nvDirect server password, may be set as C(VDIRECT_PASSWORD) environment variable." }, "runnable_name": { "type": "string", "description": "vDirect runnable name to run.\nMay be configuration template name, workflow template name or workflow instance name." }, "parameters": { "type": "string", "description": "Action parameters dictionary. In case of ConfigurationTemplate runnable type,\nthe device connection details should always be passed as a parameter." }, "vdirect_https_port": { "type": "string", "description": "Default: 2189\n\nvDirect server HTTPS port number, may be set as C(VDIRECT_HTTPS_PORT) environment variable." }, "vdirect_validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated,\nmay be set as C(VDIRECT_VALIDATE_CERTS) or C(VDIRECT_VERIFY) environment variable.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "vdirect_timeout": { "type": "string", "description": "Default: 60\n\nAmount of time to wait for async operation completion [seconds],\nmay be set as C(VDIRECT_TIMEOUT) environment variable." }, "vdirect_wait": { "description": "Default: yes\n\nWait for async operation to complete, may be set as C(VDIRECT_WAIT) environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_ip": { "type": "string", "description": "Primary vDirect server IP address, may be set as C(VDIRECT_IP) environment variable." }, "action_name": { "type": "string", "description": "Workflow action name to run.\nRequired if I(runnable_type=Workflow)." }, "runnable_type": { "type": "string", "description": "vDirect runnable type.\nMay be ConfigurationTemplate, WorkflowTemplate or a Workflow." }, "vdirect_secondary_ip": { "type": "string", "description": "Default: None\n\nSecondary vDirect server IP address, may be set as C(VDIRECT_SECONDARY_IP) environment variable." }, "vdirect_use_ssl": { "description": "Default: yes\n\nIf C(no), an HTTP connection will be used instead of the default HTTPS connection,\nmay be set as C(VDIRECT_HTTPS) or C(VDIRECT_USE_SSL) environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_http_port": { "type": "string", "description": "Default: 2188\n\nvDirect server HTTP port number, may be set as C(VDIRECT_HTTP_PORT) environment variable." } } }, "os_stack": { "required": [ "name" ], "type": "object", "description": "Add or Remove a Stack to an OpenStack Heat", "properties": { "rollback": { "type": "string", "description": "Rollback stack creation" }, "name": { "type": "string", "description": "Name of the stack that should be created, name could be char and digit, no space" }, "parameters": { "type": "object", "description": "Default: None\n\nDictionary of parameters for the stack creation" }, "environment": { "type": "array", "description": "Default: None\n\nList of environment files that should be used for the stack creation" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "timeout": { "type": "string", "description": "Default: 3600\n\nMaximum number of seconds to wait for the stack creation" }, "template": { "type": "string", "description": "Default: None\n\nPath of the template file to use for the stack creation" } } }, "os_server_facts": { "type": "object", "description": "Retrieve facts about server instances from OpenStack.", "properties": { "detailed": { "type": "string", "description": "when true, return additional detail about servers at the expense of additional API calls." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "server": { "type": "string", "description": "Default: None\n\nrestrict results to servers with names or UUID matching this glob expression (e.g., C)." } } }, "aci_bd_to_l3out": { "allOf": [ { "allOf": [ { "not": { "required": [ "bd", "bd_name", "bridge_domain" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind Bridge Domain to L3 Out on Cisco ACI fabrics.", "properties": { "bd": { "type": "string", "description": "The name of the Bridge Domain." }, "tenant_name": { "type": "string", "description": "The name of the Tenant." }, "l3out": { "type": "string", "description": "The name of the l3out to associate with th Bridge Domain." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "bd_name": { "type": "string", "description": "The name of the Bridge Domain." }, "bridge_domain": { "type": "string", "description": "The name of the Bridge Domain." }, "tenant": { "type": "string", "description": "The name of the Tenant." } } }, "panos_security_policy": { "required": [ "password", "ip_address", "rule_name" ], "type": "object", "description": "Security policies allow you to enforce rules and take action, and can be as general or specific as needed. The policy rules are compared against the incoming traffic in sequence, and because the first rule that matches the traffic is applied, the more specific rules must precede the more general ones.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for auth unless I(api_key) is set." }, "spyware": { "type": "string", "description": "Default: None\n\nName of the already defined spyware profile." }, "hip_profiles": { "type": "string", "description": "Default: any\n\nIf you are using GlobalProtect with host information profile (HIP) enabled, you can also base the policy on information collected by GlobalProtect. For example, the user access level can be determined HIP that notifies the firewall about the user's local configuration.\n" }, "file_blocking": { "type": "string", "description": "Default: None\n\nName of the already defined file_blocking profile." }, "tag": { "type": "string", "description": "Default: None\n\nAdministrative tags that can be added to the rule. Note, tags must be already defined." }, "log_start": { "type": "string", "description": "Whether to log at session start." }, "description": { "type": "string", "description": "Default: None\n\nDescription for the security rule." }, "to_zone": { "type": "array", "description": "Default: any\n\nList of destination zones." }, "service": { "type": "array", "description": "Default: application-default\n\nList of services." }, "source": { "type": "array", "description": "Default: any\n\nList of source addresses." }, "destination": { "type": "array", "description": "Default: any\n\nList of destination addresses." }, "from_zone": { "type": "array", "description": "Default: any\n\nList of source zones." }, "source_user": { "type": "string", "description": "Default: any\n\nUse users to enforce policy for individual users or a group of users." }, "url_filtering": { "type": "string", "description": "Default: None\n\nName of the already defined url_filtering profile." }, "group_profile": { "type": "string", "description": "Default: None\n\nSecurity profile group that is already defined in the system. This property supersedes antivirus, vulnerability, spyware, url_filtering, file_blocking, data_filtering, and wildfire_analysis properties.\n" }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "wildfire_analysis": { "type": "string", "description": "Default: None\n\nName of the already defined wildfire_analysis profile." }, "devicegroup": { "type": "string", "description": "Default: None\n\nDevice groups are used for the Panorama interaction with Firewall(s). The group must exists on Panorama. If device group is not define we assume that we are contacting Firewall.\n" }, "data_filtering": { "type": "string", "description": "Default: None\n\nName of the already defined data_filtering profile." }, "antivirus": { "type": "string", "description": "Default: None\n\nName of the already defined antivirus profile." }, "rule_name": { "type": "string", "description": "Name of the security rule." }, "application": { "type": "array", "description": "Default: any\n\nList of applications." }, "password": { "type": "string", "description": "Password credentials to use for auth unless I(api_key) is set." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." }, "rule_type": { "type": "string", "description": "Default: universal\n\nType of security rule (version 6.1 of PanOS and above)." }, "vulnerability": { "type": "string", "description": "Default: None\n\nName of the already defined vulnerability profile." }, "action": { "type": "string", "description": "Default: allow\n\nAction to apply once rules maches." }, "commit": { "type": "string", "description": "Default: True\n\nCommit configuration if changed." }, "log_end": { "type": "string", "description": "Default: True\n\nWhether to log at session end." } } }, "vertica_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "roles", "role" ], "type": "object" } } ] } ], "type": "object", "description": "Adds or removes Vertica database user and, optionally, assigns roles.\nA user will not be removed until all the dependencies have been dropped.\nIn such a situation, if the module tries to remove the user it will fail and only remove roles granted to the user.", "properties": { "profile": { "type": "string", "description": "Sets the user's profile." }, "resource_pool": { "type": "string", "description": "Sets the user's resource pool." }, "name": { "type": "string", "description": "Name of the user to add or remove." }, "roles": { "type": "string", "description": "Comma separated list of roles to assign to the user." }, "login_user": { "type": "string", "description": "Default: dbadmin\n\nThe username used to authenticate with." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "db": { "type": "string", "description": "Name of the Vertica database." }, "cluster": { "type": "string", "description": "Default: localhost\n\nName of the Vertica cluster." }, "state": { "type": "string", "description": "Default: present\n\nWhether to create C(present), drop C(absent) or lock C(locked) a user." }, "role": { "type": "string", "description": "Comma separated list of roles to assign to the user." }, "ldap": { "type": "string", "description": "Set to true if users are authenticated via LDAP.\nThe user will be created with password expired and set to I($ldap$)." }, "password": { "type": "string", "description": "The user's password encrypted by the MD5 algorithm.\nThe password must be generated with the format C(\"md5\" + md5[password + username]), resulting in a total of 35 characters. An easy way to do this is by querying the Vertica database with select 'md5'||md5('')." }, "expired": { "type": "string", "description": "Sets the user's password expiration." }, "port": { "type": "string", "description": "Default: 5433\n\nVertica cluster port to connect to." } } }, "tower_credential": { "required": [ "kind", "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower credentials. See U(https://www.ansible.com/tower) for an overview.", "properties": { "authorize": { "type": "string", "description": "Should use authroize for net type." }, "domain": { "type": "string", "description": "Domain for openstack type." }, "vault_password": { "type": "string", "description": "Valut password. Use ASK for prompting." }, "become_username": { "type": "string", "description": "Become username. Use ASK for prompting." }, "become_method": { "type": "string", "description": "Default: None\n\nBecome method to Use for privledge escalation." }, "secret": { "type": "string", "description": "Secret token for azure_rm type." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "ssh_key_unlock": { "type": "string", "description": "Unlock password for ssh_key. Use ASK for prompting." }, "authorize_password": { "type": "string", "description": "Password for net credentials that require authroize." }, "username": { "type": "string", "description": "Username for this credential. access_key for AWS." }, "description": { "type": "string", "description": "The description to use for the credential." }, "host": { "type": "string", "description": "Host for this credential." }, "user": { "type": "string", "description": "User that should own this credential." }, "become_password": { "type": "string", "description": "Become password. Use ASK for prompting." }, "password": { "type": "string", "description": "Password for this credential. Use ASK for prompting. secret_key for AWS. api_key for RAX." }, "tenant": { "type": "string", "description": "Tenant ID for azure_rm type." }, "subscription": { "type": "string", "description": "Subscription ID for azure_rm type." }, "kind": { "type": "string", "description": "Type of credential being added." }, "name": { "type": "string", "description": "The name to use for the credential." }, "project": { "type": "string", "description": "Project that should for this credential." }, "client": { "type": "string", "description": "Client or application ID for azure_rm type." }, "ssh_key_data": { "type": "string", "description": "Path to SSH private key." }, "team": { "type": "string", "description": "Team that should own this credential." }, "organization": { "type": "string", "description": "Organization that should own the credential." } } }, "ovirt_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "authz_name", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "authz_name" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Module to manage groups in oVirt/RHV", "properties": { "namespace": { "type": "string", "description": "Namespace of the authorization provider, where group resides." }, "domain": { "type": "string", "description": "Authorization provider of the group. In previous versions of oVirt/RHV known as domain." }, "authz_name": { "type": "string", "description": "Authorization provider of the group. In previous versions of oVirt/RHV known as domain." }, "state": { "type": "string", "description": "Default: present\n\nShould the group be present/absent." }, "name": { "type": "string", "description": "Name of the group to manage." } } }, "zabbix_template": { "required": [ "template_name" ], "type": "object", "description": "create/delete/dump zabbix template", "properties": { "clear_templates": { "type": "array", "description": "List of templates cleared from the template.\nsee templates_clear in https://www.zabbix.com/documentation/3.0/manual/api/reference/template/update" }, "template_name": { "type": "string", "description": "Name of zabbix template" }, "state": { "type": "string", "description": "Default: present\n\nstate present create/update template, absent delete template" }, "macros": { "type": "array", "description": "List of templates macro" }, "template_json": { "type": "string", "description": "JSON dump of template to import" }, "template_groups": { "type": "array", "description": "List of template groups to create or delete." }, "link_templates": { "type": "array", "description": "List of templates linked to the template." } } }, "ovirt_scheduling_policies_facts": { "required": [ "id" ], "type": "object", "description": "Retrieve facts about one or more oVirt scheduling policies.", "properties": { "id": { "type": "string", "description": "ID of the scheduling policy." }, "name": { "type": "string", "description": "Name of the scheduling policy, can be used as glob expression." } } }, "netscaler_nitro_request": { "required": [ "expected_nitro_errorcode", "nitro_user", "nitro_pass" ], "type": "object", "description": "Issue Nitro API requests to a Netscaler instance.\nThis is intended to be a short hand for using the uri Ansible module to issue the raw HTTP requests directly.\nIt provides consistent return values and has no other dependencies apart from the base Ansible runtime environment.\nThis module is intended to run either on the Ansible control node or a bastion (jumpserver) with access to the actual Netscaler instance", "properties": { "filter": { "type": "object", "description": "A dictionary which defines the filter with which to refine the Nitro objects returned by the C(get_filtered) I(operation)." }, "resource": { "type": "string", "description": "The type of resource we are operating on.\nIt is required for all I(operation) values except C(mas_login) and C(save_config)." }, "name": { "type": "string", "description": "The name of the resource we are operating on.\nIt is required for the following I(operation) values: C(update), C(get), C(delete)." }, "nitro_protocol": { "type": "string", "description": "Default: http\n\nWhich protocol to use when accessing the Nitro API objects." }, "instance_id": { "type": "string", "description": "The id of the target Netscaler instance when issuing a Nitro request through a MAS proxy." }, "args": { "type": "object", "description": "A dictionary which defines the key arguments by which we will select the Nitro object to operate on.\nIt is required for the following I(operation) values: C(get_by_args), C('delete_by_args')." }, "instance_name": { "type": "string", "description": "The name of the target Netscaler instance when issuing a Nitro request through a MAS proxy." }, "expected_nitro_errorcode": { "type": "string", "description": "Default: [0]\n\nA list of numeric values that signify that the operation was successful." }, "nsip": { "type": "string", "description": "The IP address of the Netscaler or MAS instance where the Nitro API calls will be made.\nThe port can be specified with the colon C(:). E.g. C(192.168.1.1:555)." }, "nitro_user": { "type": "string", "description": "The username with which to authenticate to the Netscaler node." }, "attributes": { "type": "string", "description": "The attributes of the Nitro object we are operating on.\nIt is required for the following I(operation) values: C(add), C(update), C(action)." }, "action": { "type": "string", "description": "The action to perform when the I(operation) value is set to C(action).\nSome common values for this parameter are C(enable), C(disable), C(rename)." }, "instance_ip": { "type": "string", "description": "The IP address of the target Netscaler instance when issuing a Nitro request through a MAS proxy." }, "operation": { "type": "string", "description": "Define the Nitro operation that we want to perform." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "nitro_pass": { "type": "string", "description": "The password with which to authenticate to the Netscaler node." }, "nitro_auth_token": { "type": "string", "description": "The authentication token provided by the C(mas_login) operation. It is required when issuing Nitro API calls through a MAS proxy." } } }, "onyx_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on Mellanox ONYX network devices.", "properties": { "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down)." }, "name": { "type": "string", "description": "Name of the Interface." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status" }, "enabled": { "description": "Interface link status.", "$ref": "#/definitions/ansible_truth" }, "mtu": { "type": "string", "description": "Maximum size of transmit packet." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "purge": { "description": "Purge Interfaces not defined in the aggregate parameter. This applies only for logical interface.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) means present and operationally up and C(down) means present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface." } } }, "win_region": { "type": "object", "description": "Set the location settings of a Windows Server.\nSet the format settings of a Windows Server.\nSet the unicode language settings of a Windows Server.\nCopy across these settings to the default profile.", "properties": { "unicode_language": { "type": "string", "description": "The unicode language format to set for all users, see U(https://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx) for a list of culture names to use. This needs to be set if C(location) or C(format) is not set. After setting this value a reboot is required for it to take effect." }, "copy_settings": { "type": "string", "description": "This will copy the current format and location values to new user profiles and the welcome screen. This will only run if C(location), C(format) or C(unicode_language) has resulted in a change. If this process runs then it will always result in a change." }, "location": { "type": "string", "description": "The location to set for the current user, see U(https://msdn.microsoft.com/en-us/library/dd374073.aspx) for a list of GeoIDs you can use and what location it relates to. This needs to be set if C(format) or C(unicode_language) is not set." }, "format": { "type": "string", "description": "The language format to set for the current user, see U(https://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.aspx) for a list of culture names to use. This needs to be set if C(location) or C(unicode_language) is not set." } } }, "selinux_permissive": { "required": [ "domain", "permissive" ], "type": "object", "description": "Add and remove domain from the list of permissive domain.", "properties": { "domain": { "type": "string", "description": "the domain that will be added or removed from the list of permissive domains" }, "store": { "type": "string", "description": "name of the SELinux policy store to use" }, "no_reload": { "type": "string", "description": "automatically reload the policy after a change\ndefault is set to 'false' as that's what most people would want after changing one domain\nNote that this doesn't work on older version of the library (example EL 6), the module will silently ignore it in this case" }, "permissive": { "type": "string", "description": "indicate if the domain should or should not be set as permissive" } } }, "azure": { "required": [ "image", "storage_account", "name", "location" ], "type": "object", "description": "Creates or terminates azure instances. When created optionally waits for it to be 'running'.", "properties": { "endpoints": { "type": "string", "description": "Default: 22\n\na comma-separated list of TCP ports to expose on the virtual machine (e.g., \"22,80\")" }, "role_size": { "type": "string", "description": "Default: Small\n\nazure role size for the new virtual machine (e.g., Small, ExtraLarge, A6). You have to pay attention to the fact that instances of type G and DS are not available in all regions (locations). Make sure if you selected the size and type of instance available in your chosen location." }, "name": { "type": "string", "description": "name of the virtual machine and associated cloud service." }, "location": { "type": "string", "description": "the azure location to use (e.g. 'East US')" }, "virtual_network_name": { "type": "string", "description": "Name of virtual network." }, "image": { "type": "string", "description": "system image for creating the virtual machine (e.g., b39f27a8b8c64d52b05eac6a62ebad85__Ubuntu_DAILY_BUILD-precise-12_04_3-LTS-amd64-server-20131205-en-us-30GB)" }, "hostname": { "type": "string", "description": "hostname to write /etc/hostname. Defaults to .cloudapp.net." }, "enable_winrm": { "type": "string", "description": "Default: yes\n\nEnable winrm on Windows Machines" }, "state": { "type": "string", "description": "Default: present\n\ncreate or terminate instances" }, "wait_timeout_redirects": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up for redirects, in seconds" }, "management_cert_path": { "type": "string", "description": "path to an azure management certificate associated with the subscription id. Overrides the AZURE_CERT_PATH environment variable." }, "ssh_cert_path": { "type": "string", "description": "path to an X509 certificate containing the public ssh key to install in the virtual machine. See http://www.windowsazure.com/en-us/manage/linux/tutorials/intro-to-linux/ for more details.\nif this option is specified, password-based ssh authentication will be disabled." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "user": { "type": "string", "description": "the unix username for the new virtual machine." }, "auto_updates": { "type": "string", "description": "Default: no\n\nEnable Auto Updates on Windows Machines" }, "storage_account": { "type": "string", "description": "the azure storage account in which to store the data disks." }, "os_type": { "type": "string", "description": "Default: linux\n\nThe type of the os that is gettings provisioned" }, "password": { "type": "string", "description": "the unix password for the new virtual machine." }, "subscription_id": { "type": "string", "description": "azure subscription id. Overrides the AZURE_SUBSCRIPTION_ID environment variable." }, "wait": { "type": "string", "description": "Default: no\n\nwait for the instance to be in state 'running' before returning" } } }, "ecs_task": { "required": [ "operation" ], "type": "object", "description": "Creates or deletes instances of task definitions.", "properties": { "count": { "type": "string", "description": "How many new instances to start" }, "task": { "type": "string", "description": "The task to stop" }, "overrides": { "type": "object", "description": "A dictionary of values to pass to the new instances" }, "started_by": { "type": "string", "description": "A value showing who or what started the task (for informational purposes)" }, "cluster": { "type": "string", "description": "The name of the cluster to run the task on" }, "task_definition": { "type": "string", "description": "The task definition to start or run" }, "container_instances": { "type": "string", "description": "The list of container instances on which to deploy the task" }, "operation": { "type": "string", "description": "Which task operation to execute" } } }, "swdepot": { "required": [ "state", "name" ], "type": "object", "description": "Will install, upgrade and remove packages with swdepot package manager (HP-UX)", "properties": { "state": { "type": "string", "description": "whether to install (C(present), C(latest)), or remove (C(absent)) a package." }, "depot": { "type": "string", "description": "The source repository from which install or upgrade a package." }, "name": { "type": "string", "description": "package name." } } }, "iam_managed_policy": { "required": [ "state", "policy_name" ], "type": "object", "description": "Allows creating and removing managed IAM policies", "properties": { "policy_description": { "type": "string", "description": "A helpful description of this policy, this value is immuteable and only set when creating a new policy." }, "policy_name": { "type": "string", "description": "The name of the managed policy." }, "state": { "type": "string", "description": "Should this managed policy be present or absent. Set to absent to detach all entities from this policy and remove it if found." }, "make_default": { "type": "string", "description": "Default: True\n\nMake this revision the default revision." }, "policy": { "type": "string", "description": "A properly json formatted policy" }, "only_version": { "type": "string", "description": "Remove all other non default revisions, if this is used with C(make_default) it will result in all other versions of this policy being deleted." } } }, "rax_dns_record": { "required": [ "name", "data", "type" ], "type": "object", "description": "Manage DNS records on Rackspace Cloud DNS", "properties": { "comment": { "type": "string", "description": "Brief description of the domain. Maximum length of 160 characters" }, "domain": { "type": "string", "description": "Domain name to create the record in. This is an invalid option when type=PTR" }, "name": { "type": "string", "description": "FQDN record name to create" }, "type": { "type": "string", "description": "DNS record type" }, "server": { "type": "string", "description": "Server ID to create a PTR record for. Only used with type=PTR" }, "priority": { "type": "string", "description": "Required for MX and SRV records, but forbidden for other record types. If specified, must be an integer from 0 to 65535." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "overwrite": { "type": "string", "description": "Default: True\n\nAdd new records if data doesn't match, instead of updating existing record with matching name. If there are already multiple records with matching name and overwrite=true, this module will fail." }, "ttl": { "type": "string", "description": "Default: 3600\n\nTime to live of record in seconds" }, "data": { "type": "string", "description": "IP address for A/AAAA record, FQDN for CNAME/MX/NS, or text data for SRV/TXT" }, "loadbalancer": { "type": "string", "description": "Load Balancer ID to create a PTR record for. Only used with type=PTR" } } }, "azure_rm_functionapp_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "resource_group", "resource_group_name" ], "type": "object" } } ] } ], "type": "object", "description": "Get facts for one Azure Function App or all Function Apps within a resource group", "properties": { "resource_group_name": { "type": "string", "description": "Limit results to a resource group. Required when filtering by name" }, "name": { "type": "string", "description": "Only show results for a specific Function App" }, "resource_group": { "type": "string", "description": "Limit results to a resource group. Required when filtering by name" }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "bigip_monitor_tcp_half_open": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM tcp half-open monitors.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/tcp_half_open\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(tcp_half_open) parent on the C(Common) partition." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'.\nIf this value is an IP address, and the C(type) is C(tcp) (the default), then a C(port) number must be specified." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." }, "port": { "type": "string", "description": "Port address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'. Note that if specifying an IP address, a value between 1 and 65535 must be specified" } } }, "keystone_user": { "type": "object", "description": "Manage users,tenants, roles from OpenStack.", "properties": { "tenant_description": { "type": "string", "description": "Default: None\n\nA description for the tenant" }, "endpoint": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_user": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "login_tenant_name": { "type": "string", "description": "Default: None\n\nThe tenant login_user belongs to" }, "token": { "type": "string", "description": "Default: None\n\nThe token to be uses in case the password is not specified" }, "role": { "type": "string", "description": "Default: None\n\nThe name of the role to be assigned or created" }, "user": { "type": "string", "description": "Default: None\n\nThe name of the user that has to added/removed from OpenStack" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "password": { "type": "string", "description": "Default: None\n\nThe password to be assigned to the user" }, "email": { "type": "string", "description": "Default: None\n\nAn email address for the user" }, "tenant": { "type": "string", "description": "Default: None\n\nThe tenant name that has be added/removed" } } }, "gce_pd": { "required": [ "name" ], "type": "object", "description": "This module can create and destroy unformatted GCE persistent disks U(https://developers.google.com/compute/docs/disks#persistentdisks). It also supports attaching and detaching disks from running instances. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "size_gb": { "type": "string", "description": "Default: 10\n\nwhole integer size of disk (in GB) to create, default is 10 GB" }, "disk_type": { "type": "string", "description": "Default: pd-standard\n\ntype of disk provisioned" }, "name": { "type": "string", "description": "name of the disk" }, "zone": { "type": "string", "description": "Default: us-central1-b\n\nzone in which to create the disk" }, "service_account_email": { "type": "string", "description": "service account email" }, "image": { "type": "string", "description": "the source image to use for the disk" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'." }, "instance_name": { "type": "string", "description": "instance name if you wish to attach or detach the disk" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the persistent disk" }, "snapshot": { "type": "string", "description": "the source snapshot to use for the disk" }, "detach_only": { "type": "string", "description": "Default: no\n\ndo not destroy the disk, merely detach it from an instance" }, "credentials_file": { "type": "string", "description": "path to the JSON file associated with the service account email" }, "project_id": { "type": "string", "description": "your GCE project ID" }, "mode": { "type": "string", "description": "Default: READ_ONLY\n\nGCE mount mode of disk, READ_ONLY (default) or READ_WRITE" } } }, "tower_user": { "required": [ "username", "email" ], "type": "object", "description": "Create, update, or destroy Ansible Tower users. See U(https://www.ansible.com/tower) for an overview.", "properties": { "username": { "type": "string", "description": "The username of the user." }, "superuser": { "type": "string", "description": "User is a system wide administator." }, "first_name": { "type": "string", "description": "First name of the user." }, "last_name": { "type": "string", "description": "Last name of the user." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "auditor": { "type": "string", "description": "User is a system wide auditor." }, "password": { "type": "string", "description": "Password of the user." }, "email": { "type": "string", "description": "Email address of the user." } } }, "ec2_ami_copy": { "required": [ "source_image_id", "source_region" ], "type": "object", "description": "Copies AMI from a source region to a destination region. This module has a dependency on python-boto >= 2.5", "properties": { "description": { "type": "string", "description": "An optional human-readable string describing the contents and purpose of the new AMI." }, "tags": { "type": "string", "description": "a hash/dictionary of tags to add to the new copied AMI; '{\"key\":\"value\"}' and '{\"key\":\"value\",\"key\":\"value\"}'" }, "encrypted": { "type": "string", "description": "Whether or not to encrypt the target image" }, "kms_key_id": { "type": "string", "description": "KMS key id used to encrypt image. If not specified, uses default EBS Customer Master Key (CMK) for your account." }, "source_image_id": { "type": "string", "description": "the id of the image in source region that should be copied" }, "wait_timeout": { "type": "string", "description": "Default: 1200\n\nhow long before wait gives up, in seconds" }, "source_region": { "type": "string", "description": "the source region that AMI should be copied from" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the copied AMI to be in state 'available' before returning." }, "name": { "type": "string", "description": "The name of the new image to copy" } } }, "vmware_guest": { "required": [ "datacenter", "name", "state", "esxi_hostname" ], "type": "object", "description": "Uses pyvmomi to ...\ncopy a template to a new virtualmachine\npoweron/poweroff/restart a virtualmachine\nremove a virtualmachine", "properties": { "datacenter": { "type": "string", "description": "Destination datacenter for the deploy operation" }, "force": { "type": "string", "description": "Ignore warnings and complete the actions" }, "uuid": { "type": "string", "description": "UUID of the instance to manage if known, this is vmware's unique identifier.\nThis is required if name is not supplied." }, "nic": { "type": "string", "description": "A list of nics to add" }, "wait_for_ip_address": { "type": "string", "description": "Wait until vcenter detects an IP address for the guest" }, "hardware": { "type": "string", "description": "Attributes such as cpus, memory, osid, and disk controller" }, "state": { "type": "string", "description": "What state should the virtualmachine be in?" }, "name_match": { "type": "string", "description": "Default: first\n\nIf multiple vms matching the name, use the first or last found" }, "template": { "type": "string", "description": "Name of the template to deploy, if needed to create the guest (state=present).\nIf the guest exists already this setting will be ignored." }, "esxi_hostname": { "type": "string", "description": "The esxi hostname where the VM will run." }, "folder": { "type": "string", "description": "Destination folder path for the new guest" }, "disk": { "type": "string", "description": "A list of disks to add" }, "name": { "type": "string", "description": "Name of the newly deployed guest" } } }, "slurp": { "required": [ "src" ], "type": "object", "description": "This module works like M(fetch). It is used for fetching a base64- encoded blob containing the data in a remote file.", "properties": { "src": { "type": "string", "description": "The file on the remote system to fetch. This I(must) be a file, not a directory." } } }, "seboolean": { "required": [ "state", "name" ], "type": "object", "description": "Toggles SELinux booleans.", "properties": { "state": { "description": "Desired boolean value", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name of the boolean to configure." }, "persistent": { "description": "Default: no\n\nSet to C(yes) if the boolean setting should survive a reboot.", "$ref": "#/definitions/ansible_truth" } } }, "git": { "allOf": [ { "allOf": [ { "not": { "required": [ "repo", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "repo" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage I(git) checkouts of repositories to deploy files or software.", "properties": { "depth": { "type": "string", "description": "Create a shallow clone with a history truncated to the specified number or revisions. The minimum possible value is C(1), otherwise ignored. Needs I(git>=1.9.1) to work correctly." }, "executable": { "type": "string", "description": "Path to git executable to use. If not supplied, the normal mechanism for resolving binary paths will be used." }, "refspec": { "type": "string", "description": "Add an additional refspec to be fetched. If version is set to a I(SHA-1) not reachable from any branch or tag, this option may be necessary to specify the ref containing the I(SHA-1). Uses the same syntax as the 'git fetch' command. An example value could be \"refs/meta/config\"." }, "force": { "type": "string", "description": "Default: no\n\nIf C(yes), any modified files in the working repository will be discarded. Prior to 0.7, this was always 'yes' and could not be disabled. Prior to 1.9, the default was `yes`" }, "track_submodules": { "type": "string", "description": "Default: no\n\nif C(yes), submodules will track the latest commit on their master branch (or other branch specified in .gitmodules). If C(no), submodules will be kept at the revision specified by the main project. This is equivalent to specifying the --remote flag to git submodule update." }, "reference": { "type": "string", "description": "Reference repository (see \"git clone --reference ...\")" }, "dest": { "type": "string", "description": "The path of where the repository should be checked out. This parameter is required, unless C(clone) is set to C(no)." }, "verify_commit": { "type": "string", "description": "Default: no\n\nif C(yes), when cloning or checking out a C(version) verify the signature of a GPG signed commit. This requires C(git) version>=2.1.0 to be installed. The commit MUST be signed and the public key MUST be present in the GPG keyring." }, "clone": { "type": "string", "description": "Default: yes\n\nIf C(no), do not clone the repository if it does not exist locally" }, "accept_hostkey": { "type": "string", "description": "Default: no\n\nif C(yes), ensure that \"-o StrictHostKeyChecking=no\" is present as an ssh options." }, "update": { "type": "string", "description": "Default: yes\n\nIf C(no), do not retrieve new revisions from the origin repository\nOperations like archive will work on the existing (old) repository and might not respond to changes to the options version or remote." }, "ssh_opts": { "type": "string", "description": "Default: None\n\nCreates a wrapper script and exports the path as GIT_SSH which git then automatically uses to override ssh arguments. An example value could be \"-o StrictHostKeyChecking=no\"" }, "repo": { "type": "string", "description": "git, SSH, or HTTP(S) protocol address of the git repository." }, "umask": { "type": "string", "description": "The umask to set before doing any checkouts, or any other repository maintenance." }, "version": { "type": "string", "description": "Default: HEAD\n\nWhat version of the repository to check out. This can be the the literal string C(HEAD), a branch name, a tag name. It can also be a I(SHA-1) hash, in which case C(refspec) needs to be specified if the given revision is not already available." }, "bare": { "type": "string", "description": "Default: no\n\nif C(yes), repository will be created as a bare repo, otherwise it will be a standard repo with a workspace." }, "recursive": { "type": "string", "description": "Default: yes\n\nif C(no), repository will be cloned without the --recursive option, skipping sub-modules." }, "remote": { "type": "string", "description": "Default: origin\n\nName of the remote." }, "key_file": { "type": "string", "description": "Default: None\n\nSpecify an optional private key file to use for the checkout." }, "archive": { "type": "string", "description": "Specify archive file path with extension. If specified, creates an archive file of the specified format containing the tree structure for the source tree. Allowed archive formats [\"zip\", \"tar.gz\", \"tar\", \"tgz\"]" }, "name": { "type": "string", "description": "git, SSH, or HTTP(S) protocol address of the git repository." } } }, "docker_volume": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "volume_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "volume_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create/remove Docker volumes.\nPerforms largely the same function as the \"docker volume\" CLI subcommand.", "properties": { "force": { "description": "Default: no\n\nWith state C(present) causes the volume to be deleted and recreated if the volume already exist and the driver, driver options or labels differ. This will cause any data in the existing volume to be lost.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name of the volume to operate on." }, "labels": { "type": "array", "description": "List of labels to set for the volume" }, "driver": { "type": "string", "description": "Default: local\n\nSpecify the type of volume. Docker provides the C(local) driver, but 3rd party drivers can also be used." }, "state": { "type": "string", "description": "Default: present\n\nC(absent) deletes the volume.\nC(present) creates the volume, if it does not already exist." }, "driver_options": { "type": "object", "description": "Dictionary of volume settings. Consult docker docs for valid options and values: U(https://docs.docker.com/engine/reference/commandline/volume_create/#driver-specific-options)" }, "volume_name": { "type": "string", "description": "Name of the volume to operate on." } } }, "oc": { "allOf": [ { "allOf": [ { "not": { "required": [ "inline", "def", "definition" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows management of resources in an OpenShift cluster. The inventory host can be any host with network connectivity to the OpenShift cluster; the default port being 8443/TCP.\nThis module relies on a token to authenticate to OpenShift. This can either be a user or a service account.", "properties": { "definition": { "type": "string", "description": "The inline definition of the resource. This is mutually exclusive with name, namespace and kind." }, "kind": { "type": "string", "description": "The kind of the resource upon which to take action." }, "name": { "type": "string", "description": "The name of the resource on which to take action." }, "state": { "type": "string", "description": "If the state is present, and the resource doesn't exist, it shall be created using the inline definition. If the state is present and the resource exists, the definition will be updated, again using an inline definition. If the state is absent, the resource will be deleted if it exists." }, "namespace": { "type": "string", "description": "The namespace of the resource upon which to take action." }, "token": { "type": "string", "description": "The token with which to authenticate against the OpenShift cluster." }, "host": { "type": "string", "description": "Default: 127.0.0.1\n\nHostname or address of the OpenShift API endpoint. By default, this is expected to be the current inventory host." }, "inline": { "type": "string", "description": "The inline definition of the resource. This is mutually exclusive with name, namespace and kind." }, "validate_certs": { "description": "Default: True\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "port": { "type": "string", "description": "Default: 8443\n\nThe port number of the API endpoint." }, "def": { "type": "string", "description": "The inline definition of the resource. This is mutually exclusive with name, namespace and kind." } } }, "vmware_vswitch": { "allOf": [ { "allOf": [ { "not": { "required": [ "esxi_hostname", "host" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "nics", "nic_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "switch", "switch_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "switch" ], "type": "object" }, { "required": [ "switch_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add or remove a VMware Standard Switch to an ESXi host.", "properties": { "nics": { "type": "string", "description": "A list of vmnic names or vmnic name to attach to vSwitch.\nAlias C(nics) is added in version 2.4." }, "host": { "type": "string", "description": "Manage the vSwitch using this ESXi host system" }, "mtu": { "type": "string", "description": "Default: 1500\n\nMTU to configure on vSwitch." }, "nic_name": { "type": "string", "description": "A list of vmnic names or vmnic name to attach to vSwitch.\nAlias C(nics) is added in version 2.4." }, "switch": { "type": "string", "description": "vSwitch name to add.\nAlias C(switch) is added in version 2.4." }, "state": { "type": "string", "description": "Default: present\n\nAdd or remove the switch." }, "esxi_hostname": { "type": "string", "description": "Manage the vSwitch using this ESXi host system" }, "number_of_ports": { "type": "string", "description": "Default: 128\n\nNumber of port to configure on vSwitch." }, "switch_name": { "type": "string", "description": "vSwitch name to add.\nAlias C(switch) is added in version 2.4." } } }, "ec2_vpc_nacl_facts": { "type": "object", "description": "Gather facts about Network ACLs in an AWS VPC", "properties": { "nacl_ids": { "type": "string", "description": "A list of Network ACL IDs to retrieve facts about." }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkAcls.html) for possible filters. Filter names and values are case sensitive." } } }, "cyberark_user": { "required": [ "username", "cyberark_session" ], "type": "object", "description": "CyberArk User Management using PAS Web Services SDK. It currently supports the following actions Get User Details, Add User, Update User, Delete User.", "properties": { "username": { "type": "string", "description": "The name of the user who will be queried (for details), added, updated or deleted." }, "first_name": { "type": "string", "description": "The user first name." }, "last_name": { "type": "string", "description": "The user last name." }, "initial_password": { "type": "string", "description": "The password that the new user will use to log on the first time. This password must meet the password policy requirements. this parameter is required when state is present -- Add User." }, "user_type_name": { "type": "string", "description": "Default: EPVUser\n\nThe type of user." }, "new_password": { "type": "string", "description": "The user updated password. Make sure that this password meets the password policy requirements." }, "cyberark_session": { "type": "object", "description": "Dictionary set by a CyberArk authentication containing the different values to perform actions on a logged-on CyberArk session, please see M(cyberark_authentication) module for an example of cyberark_session." }, "group_name": { "type": "string", "description": "The name of the group the user will be added to." }, "disabled": { "description": "Default: no\n\nWhether or not the user will be disabled. Valid values = true/false.", "$ref": "#/definitions/ansible_truth" }, "change_password_on_the_next_logon": { "description": "Default: no\n\nWhether or not the user must change their password in their next logon. Valid values = true/false.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nSpecifies the state needed for the user present for create user, absent for delete user." }, "expiry_date": { "type": "string", "description": "The date and time when the user account will expire and become disabled." }, "location": { "type": "string", "description": "The Vault Location for the user." }, "email": { "type": "string", "description": "The user email address." } } }, "tower_group": { "required": [ "inventory", "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower groups. See U(https://www.ansible.com/tower) for an overview.", "properties": { "credential": { "type": "string", "description": "Credential to use for the group." }, "source_vars": { "type": "string", "description": "Override variables from source with variables from this field." }, "update_on_launch": { "type": "string", "description": "Refresh inventory data from its source each time a job is run." }, "overwrite_vars": { "type": "string", "description": "Override vars in child groups and hosts with those from external source." }, "source_regions": { "type": "string", "description": "Regions for cloud provider." }, "name": { "type": "string", "description": "The name to use for the group." }, "variables": { "type": "string", "description": "Variables to use for the group, use '@' for a file." }, "instance_filters": { "type": "string", "description": "Comma-separated list of filter expressions for matching hosts." }, "group_by": { "type": "string", "description": "Limit groups automatically created from inventory source." }, "source": { "type": "string", "description": "Default: null,\n\nThe source to use for this group." }, "source_script": { "type": "string", "description": "Inventory script to be used when group type is \"custom\"." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "inventory": { "type": "string", "description": "Inventory the group should be made a member of." }, "overwrite": { "type": "string", "description": "Delete child roups and hosts not found in source." }, "description": { "type": "string", "description": "The description to use for the group." } } }, "win_defrag": { "type": "object", "description": "Locates and consolidates fragmented files on local volumes to improve system performance.\nMore information regarding C(win_defrag) is available from: U(https://technet.microsoft.com/en-us/library/cc731650(v=ws.11).aspx)", "properties": { "priority": { "type": "string", "description": "Default: low\n\nRun the operation at low or normal priority." }, "freespace_consolidation": { "type": "string", "description": "Perform free space consolidation on the specified volumes." }, "exclude_volumes": { "type": "string", "description": "A list of drive letters or mount point paths to exclude from defragmentation." }, "parallel": { "description": "Default: no\n\nRun the operation on each volume in parallel in the background.", "$ref": "#/definitions/ansible_truth" }, "include_volumes": { "type": "string", "description": "A list of drive letters or mount point paths of the volumes to be defragmented.\nIf this parameter is omitted, all volumes (not excluded) will be fragmented." } } }, "win_group": { "required": [ "name" ], "type": "object", "description": "Add and remove local groups", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreate or remove the group" }, "name": { "type": "string", "description": "Name of the group" }, "description": { "type": "string", "description": "Description of the group" } } }, "infini_host": { "required": [ "name" ], "type": "object", "description": "This module creates, deletes or modifies hosts on Infinibox.", "properties": { "volume": { "type": "string", "description": "Volume name to map to the host" }, "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies Host when present or removes when absent" }, "name": { "type": "string", "description": "Host Name" }, "wwns": { "type": "array", "description": "List of wwns of the host" } } }, "lambda_event": { "allOf": [ { "allOf": [ { "not": { "required": [ "lambda_function_arn", "function_name", "function_arn" ], "type": "object" } }, { "oneOf": [ { "required": [ "lambda_function_arn" ], "type": "object" }, { "required": [ "function_name" ], "type": "object" }, { "required": [ "function_arn" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module allows the management of AWS Lambda function event source mappings such as DynamoDB and Kinesis stream events via the Ansible framework. These event source mappings are relevant only in the AWS Lambda pull model, where AWS Lambda invokes the function. It is idempotent and supports \"Check\" mode. Use module M(lambda) to manage the lambda function itself and M(lambda_alias) to manage function aliases.", "properties": { "source_params": { "type": "string", "description": "Sub-parameters required for event source.\nI(== stream event source ==)\nC(source_arn) The Amazon Resource Name (ARN) of the Kinesis or DynamoDB stream that is the event source.\nC(enabled) Indicates whether AWS Lambda should begin polling the event source. Default is True.\nC(batch_size) The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Default is 100.\nC(starting_position) The position in the stream where AWS Lambda should start reading. Choices are TRIM_HORIZON or LATEST." }, "event_source": { "type": "string", "description": "Default: stream\n\nSource of the event that triggers the lambda function." }, "function_arn": { "type": "string", "description": "The name or ARN of the lambda function." }, "lambda_function_arn": { "type": "string", "description": "The name or ARN of the lambda function." }, "alias": { "type": "string", "description": "Name of the function alias. Mutually exclusive with C(version)." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "version": { "type": "string", "description": "Version of the Lambda function. Mutually exclusive with C(alias)." }, "function_name": { "type": "string", "description": "The name or ARN of the lambda function." } } }, "bigip_virtual_address": { "allOf": [ { "allOf": [ { "not": { "required": [ "address", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "address" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage LTM virtual addresses on a BIG-IP.", "properties": { "icmp_echo": { "type": "string", "description": "Specifies how the systems sends responses to (ICMP) echo requests on a per-virtual address basis for enabling route advertisement. When C(enabled), the BIG-IP system intercepts ICMP echo request packets and responds to them directly. When C(disabled), the BIG-IP system passes ICMP echo requests through to the backend servers. When (selective), causes the BIG-IP system to internally enable or disable responses based on virtual server state; C(when_any_available), C(when_all_available, or C(always), regardless of the state of any virtual servers." }, "name": { "type": "string", "description": "Virtual address. This value cannot be modified after it is set." }, "auto_delete": { "type": "string", "description": "Specifies whether the system automatically deletes the virtual address with the deletion of the last associated virtual server. When C(disabled), specifies that the system leaves the virtual address even when all associated virtual servers have been deleted. When creating the virtual address, the default value is C(enabled)." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "connection_limit": { "type": "string", "description": "Specifies the number of concurrent connections that the system allows on this virtual address." }, "state": { "type": "string", "description": "Default: present\n\nThe virtual address state. If C(absent), an attempt to delete the virtual address will be made. This will only succeed if this virtual address is not in use by a virtual server. C(present) creates the virtual address and enables it. If C(enabled), enable the virtual address if it exists. If C(disabled), create the virtual address if needed, and set state to C(disabled)." }, "netmask": { "type": "string", "description": "Default: 255.255.255.255\n\nNetmask of the provided virtual address. This value cannot be modified after it is set." }, "arp_state": { "type": "string", "description": "Specifies whether the system accepts ARP requests. When (disabled), specifies that the system does not accept ARP requests. Note that both ARP and ICMP Echo must be disabled in order for forwarding virtual servers using that virtual address to forward ICMP packets. If (enabled), then the packets are dropped." }, "address": { "type": "string", "description": "Virtual address. This value cannot be modified after it is set." }, "traffic_group": { "type": "string", "description": "The traffic group for the virtual address. When creating a new address, if this value is not specified, the default of C(/Common/traffic-group-1) will be used." }, "use_route_advertisement": { "description": "Specifies whether the system uses route advertisement for this virtual address. When disabled, the system does not advertise routes for this virtual address.", "$ref": "#/definitions/ansible_truth" }, "advertise_route": { "type": "string", "description": "Specifies what routes of the virtual address the system advertises. When C(when_any_available), advertises the route when any virtual server is available. When C(when_all_available), advertises the route when all virtual servers are available. When (always), always advertises the route regardless of the virtual servers available." } } }, "cs_firewall": { "allOf": [ { "allOf": [ { "not": { "required": [ "start_port", "port" ], "type": "object" } } ] } ], "type": "object", "description": "Creates and removes firewall rules.", "properties": { "icmp_code": { "type": "string", "description": "Error code for this icmp message. Considered if C(protocol=icmp)." }, "domain": { "type": "string", "description": "Domain the firewall rule is related to." }, "protocol": { "type": "string", "description": "Default: tcp\n\nProtocol of the firewall rule.\nC(all) is only available if C(type=egress)" }, "network": { "type": "string", "description": "Network the egress rule is related to.\nRequired if C(type=egress)." }, "zone": { "type": "string", "description": "Name of the zone in which the virtual machine is in.\nIf not set, default zone is used." }, "ip_address": { "type": "string", "description": "Public IP address the ingress rule is assigned to.\nRequired if C(type=ingress)." }, "end_port": { "type": "string", "description": "End port for this rule. Considered if C(protocol=tcp) or C(protocol=udp). If not specified, equal C(start_port)." }, "account": { "type": "string", "description": "Account the firewall rule is related to." }, "project": { "type": "string", "description": "Name of the project the firewall rule is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the firewall rule." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "start_port": { "type": "string", "description": "Start port for this rule. Considered if C(protocol=tcp) or C(protocol=udp)." }, "cidr": { "type": "string", "description": "Default: 0.0.0.0/0\n\nCIDR (full notation) to be used for firewall rule." }, "icmp_type": { "type": "string", "description": "Type of the icmp message being sent. Considered if C(protocol=icmp)." }, "type": { "type": "string", "description": "Default: ingress\n\nType of the firewall rule." }, "port": { "type": "string", "description": "Start port for this rule. Considered if C(protocol=tcp) or C(protocol=udp)." } } }, "ldap_attr": { "required": [ "dn", "name", "values" ], "type": "object", "description": "Add or remove LDAP attribute values.", "properties": { "dn": { "type": "string", "description": "The DN of the entry to modify." }, "name": { "type": "string", "description": "The name of the attribute to modify." }, "server_uri": { "type": "string", "description": "Default: ldapi:///\n\nA URI to the LDAP server. The default value lets the underlying LDAP client library look for a UNIX domain socket in its default location." }, "start_tls": { "type": "string", "description": "Default: no\n\nIf true, we'll use the START_TLS LDAP extension." }, "bind_dn": { "type": "string", "description": "A DN to bind with. If this is omitted, we'll try a SASL bind with the EXTERNAL mechanism. If this is blank, we'll use an anonymous bind." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the attribute values. If C(present), all given values will be added if they're missing. If C(absent), all given values will be removed if present. If C(exact), the set of values will be forced to exactly those provided and no others. If I(state=exact) and I(value) is empty, all values for this attribute will be removed." }, "values": { "type": "string", "description": "The value(s) to add or remove. This can be a string or a list of strings. The complex argument format is required in order to pass a list of strings (see examples)." }, "bind_pw": { "type": "string", "description": "The password to use with I(bind_dn)." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on sites using self-signed certificates." } } }, "aireos_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an aireos node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(aireos_config) to configure WLC devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote aireos device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "vmware_host_facts": { "type": "object", "description": "Gathers facts about remote vmware host.", "properties": {} }, "firewalld": { "required": [ "state" ], "type": "object", "description": "This module allows for addition or deletion of services and ports either tcp or udp in either running or permanent firewalld rules.", "properties": { "zone": { "type": "string", "description": "Default: system-default(public)\n\nThe firewalld zone to add/remove to/from (NOTE: default zone can be configured per system but \"public\" is default from upstream. Available choices can be extended based on per-system configs, listed here are \"out of the box\" defaults).\n" }, "service": { "type": "string", "description": "Name of a service to add/remove to/from firewalld - service must be listed in output of firewall-cmd --get-services." }, "masquerade": { "type": "string", "description": "The masquerade setting you would like to enable/disable to/from zones within firewalld" }, "immediate": { "type": "string", "description": "Should this configuration be applied immediately, if set as permanent" }, "source": { "type": "string", "description": "The source/network you would like to add/remove to/from firewalld" }, "state": { "type": "string", "description": "Enable or disable a setting. For ports: Should this port accept(enabled) or reject(disabled) connections. The states \"present\" and \"absent\" can only be used in zone level operations (i.e. when no other parameters but zone and state are set).\n" }, "permanent": { "type": "string", "description": "Should this configuration be in the running firewalld configuration or persist across reboots. As of Ansible version 2.3, permanent operations can operate on firewalld configs when it's not running (requires firewalld >= 3.0.9). (NOTE: If this is false, immediate is assumed true.)\n" }, "timeout": { "type": "string", "description": "The amount of time the rule should be in effect for when non-permanent." }, "interface": { "type": "string", "description": "The interface you would like to add/remove to/from a zone in firewalld" }, "port": { "type": "string", "description": "Name of a port or port range to add/remove to/from firewalld. Must be in the form PORT/PROTOCOL or PORT-PORT/PROTOCOL for port ranges." }, "rich_rule": { "type": "string", "description": "Rich rule to add/remove to/from firewalld." } } }, "bigip_device_group": { "required": [ "name" ], "type": "object", "description": "Managing device groups allows you to create HA pairs and clusters of BIG-IP devices. Usage of this module should be done in conjunction with the C(bigip_configsync_actions) to sync configuration across the pair or cluster if auto-sync is disabled.", "properties": { "name": { "type": "string", "description": "Specifies the name of the device group." }, "auto_sync": { "description": "Indicates whether configuration synchronization occurs manually or automatically. When creating a new device group, this option will default to C(false).", "$ref": "#/definitions/ansible_truth" }, "max_incremental_sync_size": { "type": "string", "description": "Specifies the size of the changes cache for incremental sync. For example, using the default, if you make more than 1024 KB worth of incremental changes, the system performs a full synchronization operation. Using incremental synchronization operations can reduce the per-device sync/load time for configuration changes. This setting is relevant only when C(full_sync) is C(false)." }, "save_on_auto_sync": { "description": "When performing an auto-sync, specifies whether the configuration will be saved or not. If C(false), only the running configuration will be changed on the device(s) being synced to. When creating a new device group, this option will default to C(false).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "When C(state) is C(present), ensures the device group exists.\nWhen C(state) is C(absent), ensures that the device group is removed." }, "full_sync": { "description": "Specifies whether the system synchronizes the entire configuration during synchronization operations. When C(false), the system performs incremental synchronization operations, based on the cache size specified in C(max_incremental_sync_size). Incremental configuration synchronization is a mechanism for synchronizing a device-group's configuration among its members, without requiring a full configuration load for each configuration change. In order for this to work, all devices in the device-group must initially agree on the configuration. Typically this requires at least one full configuration load to each device. When creating a new device group, this option will default to C(false).", "$ref": "#/definitions/ansible_truth" }, "type": { "type": "string", "description": "Specifies that the type of group. A C(sync-failover) device group contains devices that synchronize their configuration data and fail over to one another when a device becomes unavailable. A C(sync-only) device group has no such failover. When creating a new device group, this option will default to C(sync-only). This setting cannot be changed once it has been set." }, "description": { "type": "string", "description": "Description of the device group." } } }, "ipa_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "uid", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "uid" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify and delete user within IPA server", "properties": { "telephonenumber": { "type": "array", "description": "List of telephone numbers assigned to the user.\nIf an empty list is passed all assigned telephone numbers will be deleted.\nIf None is passed telephone numbers will not be checked or changed." }, "sshpubkey": { "type": "array", "description": "List of public SSH key.\nIf an empty list is passed all assigned public keys will be deleted.\nIf None is passed SSH public keys will not be checked or changed." }, "givenname": { "type": "string", "description": "First name" }, "displayname": { "type": "string", "description": "Display name" }, "uid": { "type": "string", "description": "uid of the user" }, "krbpasswordexpiration": { "type": "string", "description": "Date at which the user password will expire\nIn the format YYYYMMddHHmmss\ne.g. 20180121182022 will expire on 21 January 2018 at 18:20:22" }, "title": { "type": "string", "description": "Title" }, "loginshell": { "type": "string", "description": "Login shell" }, "uidnumber": { "type": "string", "description": "Account Settings UID/Posix User ID number" }, "gidnumber": { "type": "string", "description": "Posix Group ID" }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "sn": { "type": "string", "description": "Surname" }, "mail": { "type": "array", "description": "List of mail addresses assigned to the user.\nIf an empty list is passed all assigned email addresses will be deleted.\nIf None is passed email addresses will not be checked or changed." }, "password": { "type": "string", "description": "Password for new user" }, "name": { "type": "string", "description": "uid of the user" } } }, "mongodb_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "user" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "user" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds or removes a user from a MongoDB database.", "properties": { "login_port": { "type": "string", "description": "Default: 27017\n\nThe port to connect to" }, "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users." }, "name": { "type": "string", "description": "The name of the user to add or remove" }, "roles": { "type": "string", "description": "Default: readWrite\n\nThe database user roles valid values could either be one or more of the following strings: 'read', 'readWrite', 'dbAdmin', 'userAdmin', 'clusterAdmin', 'readAnyDatabase', 'readWriteAnyDatabase', 'userAdminAnyDatabase', 'dbAdminAnyDatabase'\n\nOr the following dictionary '{ db: DATABASE_NAME, role: ROLE_NAME }'.\nThis param requires pymongo 2.5+. If it is a string, mongodb 2.4+ is also required. If it is a dictionary, mongo 2.6+ is required." }, "database": { "type": "string", "description": "The name of the database to add/remove the user from" }, "login_user": { "type": "string", "description": "The username used to authenticate with" }, "login_host": { "type": "string", "description": "Default: localhost\n\nThe host running the database" }, "login_password": { "type": "string", "description": "The password used to authenticate with" }, "ssl_cert_reqs": { "type": "string", "description": "Default: CERT_REQUIRED\n\nSpecifies whether a certificate is required from the other side of the connection, and whether it will be validated if provided." }, "ssl": { "type": "string", "description": "Whether to use an SSL connection when connecting to the database" }, "state": { "type": "string", "description": "Default: present\n\nThe database user state" }, "user": { "type": "string", "description": "The name of the user to add or remove" }, "login_database": { "type": "string", "description": "The database where login credentials are stored" }, "password": { "type": "string", "description": "The password to use for the user" }, "replica_set": { "type": "string", "description": "Replica set to connect to (automatically connects to primary for writes)" } } }, "vmware_target_canonical_facts": { "required": [ "target_id" ], "type": "object", "description": "Return canonical (NAA) from an ESXi host based on SCSI target ID", "properties": { "target_id": { "type": "string", "description": "The target id based on order of scsi device" } } }, "openvswitch_port": { "required": [ "bridge", "port" ], "type": "object", "description": "Manage Open vSwitch ports", "properties": { "bridge": { "type": "string", "description": "Name of bridge to manage" }, "set": { "type": "string", "description": "Default: None\n\nSet a single property on a port." }, "state": { "type": "string", "description": "Default: present\n\nWhether the port should exist" }, "tag": { "type": "string", "description": "VLAN tag for this port. Must be a value between 0 and 4095." }, "timeout": { "type": "string", "description": "Default: 5\n\nHow long to wait for ovs-vswitchd to respond" }, "external_ids": { "type": "object", "description": "Dictionary of external_ids applied to a port." }, "port": { "type": "string", "description": "Name of port to manage on the bridge" } } }, "vr_dns_domain": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create and remove DNS domains.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the DNS domain." }, "server_ip": { "type": "string", "description": "The default server IP.\nUse M(vr_dns_record) to change it once the domain is created.\nRequired if C(state=present)." }, "name": { "type": "string", "description": "The domain name." }, "domain": { "type": "string", "description": "The domain name." } } }, "panos_interface": { "required": [ "zone_name", "password", "ip_address", "if_name" ], "type": "object", "description": "Configure data-port (DP) network interface for DHCP. By default DP interfaces are static.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for auth." }, "if_name": { "type": "string", "description": "Name of the interface to configure." }, "create_default_route": { "type": "string", "description": "Default: false\n\nWhether or not to add default route with router learned via DHCP." }, "zone_name": { "type": "string", "description": "Name of the zone for the interface. If the zone does not exist it is created but if the zone exists and it is not of the layer3 type the operation will fail.\n" }, "commit": { "type": "string", "description": "Default: True\n\nCommit if changed" }, "password": { "type": "string", "description": "Password credentials to use for auth." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." } } }, "vmware_host_ntp": { "required": [ "ntp_servers" ], "type": "object", "description": "This module can be used to manage NTP configuration information about an ESXi host.\nUser can specify an ESXi hostname or Cluster name. In case of cluster name, all ESXi hosts are updated.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nNTP settings are applied to every ESXi host system in the given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "ntp_servers": { "type": "string", "description": "IP or FQDN of NTP server/s.\nThis accepts a list of NTP servers. For multiple servers, please look at the examples." }, "state": { "type": "string", "description": "Default: present\n\npresent: Add NTP server/s, if it specified server/s are absent else do nothing.\nabsent: Remove NTP server/s, if specified server/s are present else do nothing." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nNTP settings are applied to this ESXi host system.\nIf C(cluster_name) is not given, this parameter is required." } } }, "bigip_policy_rule": { "required": [ "policy", "name" ], "type": "object", "description": "This module will manage LTM policy rules on a BIG-IP.", "properties": { "description": { "type": "string", "description": "Description of the policy rule." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "actions": { "type": "string", "description": "The actions that you want the policy rule to perform.\nThe available attributes vary by the action, however, each action requires that a C(type) be specified.\nThese conditions can be specified in any order. Despite them being a list, the BIG-IP does not treat their order as anything special.\nAvailable C(type) values are C(forward)." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the key is uploaded to the device. When C(absent), ensures that the key is removed from the device. If the key is currently in use, the module will not be able to remove the key." }, "policy": { "type": "string", "description": "The name of the policy that you want to associate this rule with." }, "conditions": { "type": "string", "description": "A list of attributes that describe the condition.\nSee suboptions for details on how to construct each list entry.\nThe ordering of this list is important, the module will ensure the order is kept when modifying the task.\nThe suboption options listed below are not required for all condition types, read the description for more details.\nThese conditions can be specified in any order. Despite them being a list, the BIG-IP does not treat their order as anything special." }, "name": { "type": "string", "description": "The name of the rule." } } }, "timezone": { "allOf": [ { "allOf": [ { "not": { "required": [ "hwclock", "rtc" ], "type": "object" } } ] } ], "type": "object", "description": "This module configures the timezone setting, both of the system clock and of the hardware clock. I(Currently only Linux platform is supported.) It is recommended to restart C(crond) after changing the timezone, otherwise the jobs may run at the wrong time. It uses the C(timedatectl) command if available. Otherwise, it edits C(/etc/sysconfig/clock) or C(/etc/timezone) for the system clock, and uses the C(hwclock) command for the hardware clock. If you want to set up the NTP, use M(service) module.", "properties": { "hwclock": { "type": "string", "description": "Whether the hardware clock is in UTC or in local timezone. Default is to keep current setting. Note that this option is recommended not to change and may fail to configure, especially on virtual environments such as AWS." }, "name": { "type": "string", "description": "Name of the timezone for the system clock. Default is to keep current setting." }, "rtc": { "type": "string", "description": "Whether the hardware clock is in UTC or in local timezone. Default is to keep current setting. Note that this option is recommended not to change and may fail to configure, especially on virtual environments such as AWS." } } }, "ios_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "running_config", "config" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Cisco IOS configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with IOS configuration sections in a deterministic way.", "properties": { "multiline_delimiter": { "type": "string", "description": "Default: @\n\nThis argument is used when pushing a multiline configuration element to the IOS device. It specifies the character to use as the delimiting character. This only applies to the configuration action." }, "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "save_when": { "type": "string", "description": "Default: never\n\nWhen changes are made to the device running-configuration, the changes are not copied to non-volatile storage by default. Using this argument will change that before. If the argument is set to I(always), then the running-config will always be copied to the startup-config and the I(modified) flag will always be set to True. If the argument is set to I(modified), then the running-config will only be copied to the startup-config if it has changed since the last save to startup-config. If the argument is set to I(never), the running-config will never be copied to the startup-config. If the argument is set to I(changed), then the running-config will only be copied to the startup-config if the task has made a change. I(changed) was added in Ansible 2.5." }, "force": { "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in Ansible 2.6.", "$ref": "#/definitions/ansible_truth" }, "backup": { "description": "Default: no\n\nThis argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory or role root directory, if playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "intended_config": { "type": "string", "description": "The C(intended_config) provides the master configuration that the node should conform to and is used to check the final running-config against. This argument will not modify any settings on the remote device and is strictly used to check the compliance of the current device's configuration against. When specifying this argument, the task should also modify the C(diff_against) value and set it to I(intended)." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "diff_against": { "type": "string", "description": "When using the C(ansible-playbook --diff) command line argument the module can generate diffs against different sources.\nWhen this option is configure as I(startup), the module will return the diff of the running-config against the startup-config.\nWhen this option is configured as I(intended), the module will return the diff of the running-config against the configuration provided in the C(intended_config) argument.\nWhen this option is configured as I(running), the module will return the before and after diff of the running-config with respect to any changes made to the device configuration." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "running_config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "defaults": { "description": "This argument specifies whether or not to collect all defaults when getting the remote device running config. When enabled, the module will get the current config by issuing the command C(show running-config all).", "$ref": "#/definitions/ansible_truth" }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored.\nThis option is deprecated as of Ansible 2.4 and will be removed in Ansible 2.8, use C(save_when) instead.", "$ref": "#/definitions/ansible_truth" }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "diff_ignore_lines": { "type": "string", "description": "Use this argument to specify one or more lines that should be ignored during the diff. This is used for lines in the configuration that are automatically updated by the system. This argument takes a list of regular expressions or exact line matches." } } }, "bigip_gtm_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "server_type", "product" ], "type": "object" } } ] } ], "type": "object", "description": "Manage BIG-IP server configuration. This module is able to manipulate the server definitions in a BIG-IP.", "properties": { "link_discovery": { "type": "string", "description": "Specifies whether the system auto-discovers the links for this server. When creating a new GTM server, if this parameter is not specified, the default value C(disabled) is used.\nIf you set this parameter to C(enabled) or C(enabled-no-delete), you must also ensure that the C(virtual_server_discovery) parameter is also set to C(enabled) or C(enabled-no-delete)." }, "product": { "type": "string", "description": "Specifies the server type. The server type determines the metrics that the system can collect from the server. When creating a new GTM server, the default value C(bigip) is used." }, "name": { "type": "string", "description": "The name of the server." }, "server_type": { "type": "string", "description": "Specifies the server type. The server type determines the metrics that the system can collect from the server. When creating a new GTM server, the default value C(bigip) is used." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "devices": { "type": "array", "description": "Lists the self IP addresses and translations for each device. When creating a new GTM server, this value is required. This list is a complex list that specifies a number of keys. There are several supported keys.\nThe C(name) key specifies a name for the device. The device name must be unique per server. This key is required.\nThe C(address) key contains an IP address, or list of IP addresses, for the destination server. This key is required.\nThe C(translation) key contains an IP address to translate the C(address) value above to. This key is optional.\nSpecifying duplicate C(name) fields is a supported means of providing device addresses. In this scenario, the addresses will be assigned to the C(name)'s list of addresses." }, "state": { "type": "string", "description": "Default: present\n\nThe server state. If C(absent), an attempt to delete the server will be made. This will only succeed if this server is not in use by a virtual server. C(present) creates the server and enables it. If C(enabled), enable the server if it exists. If C(disabled), create the server if needed, and set state to C(disabled)." }, "virtual_server_discovery": { "type": "string", "description": "Specifies whether the system auto-discovers the virtual servers for this server. When creating a new GTM server, if this parameter is not specified, the default value C(disabled) is used." }, "datacenter": { "type": "string", "description": "Data center the server belongs to. When creating a new GTM server, this value is required." } } }, "archive": { "required": [ "path" ], "type": "object", "description": "Packs an archive. It is the opposite of M(unarchive). By default, it assumes the compression source exists on the target. It will not copy the source file from the local system to the target before archiving. Source files can be deleted after archival by specifying I(remove=True).", "properties": { "dest": { "type": "string", "description": "The file name of the destination archive. This is required when C(path) refers to multiple files by either specifying a glob, a directory or multiple paths in a list." }, "path": { "type": "string", "description": "Remote absolute path, glob, or list of paths or globs for the file or files to compress or archive." }, "exclude_path": { "type": "string", "description": "Remote absolute path, glob, or list of paths or globs for the file or files to exclude from the archive" }, "remove": { "description": "Default: no\n\nRemove any added source files and trees after adding to archive.", "$ref": "#/definitions/ansible_truth" }, "format": { "type": "string", "description": "Default: gz\n\nThe type of compression to use.\nSupport for xz was added in version 2.5." } } }, "azure_rm_networkinterface_facts": { "type": "object", "description": "Get facts for a specific network interface or all network interfaces within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific network interface." }, "resource_group": { "type": "string", "description": "Name of the resource group containing the network interface(s). Required when searching by name." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "onyx_lldp_interface": { "type": "object", "description": "This module provides declarative management of LLDP interfaces configuration on Mellanox ONYX network devices.", "properties": { "aggregate": { "type": "array", "description": "List of interfaces LLDP should be configured on." }, "purge": { "description": "Purge interfaces not defined in the aggregate parameter.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration." }, "name": { "type": "string", "description": "Name of the interface LLDP should be configured on." } } }, "avi_applicationprofile": { "required": [ "name", "type" ], "type": "object", "description": "This module is used to configure ApplicationProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "tcp_app_profile": { "type": "string", "description": "Specifies the tcp application proxy profile parameters." }, "uuid": { "type": "string", "description": "Uuid of the application profile." }, "dns_service_profile": { "type": "string", "description": "Specifies various dns service related controls for virtual service." }, "type": { "type": "string", "description": "Specifies which application layer proxy is enabled for the virtual service.\nEnum options - APPLICATION_PROFILE_TYPE_L4, APPLICATION_PROFILE_TYPE_HTTP, APPLICATION_PROFILE_TYPE_SYSLOG, APPLICATION_PROFILE_TYPE_DNS,\nAPPLICATION_PROFILE_TYPE_SSL." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "http_profile": { "type": "string", "description": "Specifies the http application proxy profile parameters." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "dos_rl_profile": { "type": "string", "description": "Specifies various security related controls for virtual service." }, "preserve_client_ip": { "description": "Specifies if client ip needs to be preserved for backend connection.\nNot compatible with connection multiplexing.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "The name of the application profile." } } }, "win_lineinfile": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest", "destfile", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "destfile" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module will search a file for a line, and ensure that it is present or absent.\nThis is primarily useful when you want to change a single line in a file only.", "properties": { "name": { "type": "string", "description": "The path of the file to modify.\nNote that the Windows path delimiter C(\\) must be escaped as C(\\\\) when the line is double quoted.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "insertbefore": { "type": "string", "description": "Used with C(state=present). If specified, the line will be inserted before the last match of specified regular expression. A value is available; C(BOF) for inserting the line at the beginning of the file.\nIf specified regular expression has no matches, the line will be inserted at the end of the file. May not be used with C(backrefs)." }, "encoding": { "type": "string", "description": "Default: auto\n\nSpecifies the encoding of the source text file to operate on (and thus what the output encoding will be). The default of C(auto) will cause the module to auto-detect the encoding of the source file and ensure that the modified file is written with the same encoding.\nAn explicit encoding can be passed as a string that is a valid value to pass to the .NET framework System.Text.Encoding.GetEncoding() method - see U(https://msdn.microsoft.com/en-us/library/system.text.encoding%28v=vs.110%29.aspx).\n\nThis is mostly useful with C(create=yes) if you want to create a new file with a specific encoding. If C(create=yes) is specified without a specific encoding, the default encoding (UTF-8, no BOM) will be used." }, "dest": { "type": "string", "description": "The path of the file to modify.\nNote that the Windows path delimiter C(\\) must be escaped as C(\\\\) when the line is double quoted.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "create": { "type": "string", "description": "Default: no\n\nUsed with C(state=present). If specified, the file will be created if it does not already exist. By default it will fail if the file is missing." }, "newline": { "type": "string", "description": "Default: windows\n\nSpecifies the line separator style to use for the modified file. This defaults to the windows line separator (C(\\r\\n)). Note that the indicated line separator will be used for file output regardless of the original line separator that appears in the input file.\n" }, "destfile": { "type": "string", "description": "The path of the file to modify.\nNote that the Windows path delimiter C(\\) must be escaped as C(\\\\) when the line is double quoted.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "backrefs": { "type": "string", "description": "Default: no\n\nUsed with C(state=present). If set, line can contain backreferences (both positional and named) that will get populated if the C(regexp) matches. This flag changes the operation of the module slightly; C(insertbefore) and C(insertafter) will be ignored, and if the C(regexp) doesn't match anywhere in the file, the file will be left unchanged.\nIf the C(regexp) does match, the last matching line will be replaced by the expanded line parameter." }, "state": { "type": "string", "description": "Default: present\n\nWhether the line should be there or not." }, "regexp": { "type": "string", "description": "The regular expression to look for in every line of the file. For C(state=present), the pattern to replace if found; only the last line found will be replaced. For C(state=absent), the pattern of the line to remove. Uses .NET compatible regular expressions; see U(https://msdn.microsoft.com/en-us/library/hs600312%28v=vs.110%29.aspx).\n" }, "insertafter": { "type": "string", "description": "Default: EOF\n\nUsed with C(state=present). If specified, the line will be inserted after the last match of specified regular expression. A special value is available; C(EOF) for inserting the line at the end of the file.\nIf specified regular expression has no matches, EOF will be used instead. May not be used with C(backrefs)." }, "path": { "type": "string", "description": "The path of the file to modify.\nNote that the Windows path delimiter C(\\) must be escaped as C(\\\\) when the line is double quoted.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "line": { "type": "string", "description": "Required for C(state=present). The line to insert/replace into the file. If C(backrefs) is set, may contain backreferences that will get expanded with the C(regexp) capture groups if the regexp matches.\nBe aware that the line is processed first on the controller and thus is dependent on yaml quoting rules. Any double quoted line will have control characters, such as '\\r\\n', expanded. To print such characters literally, use single or no quotes." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." }, "validate": { "type": "string", "description": "Default: None\n\nValidation to run before copying into place. Use %s in the command to indicate the current file to validate.\nThe command is passed securely so shell features like expansion and pipes won't work." } } }, "bcf_switch": { "required": [ "name", "mac", "controller", "fabric_role" ], "type": "object", "description": "Create and remove a Big Cloud Fabric switch.", "properties": { "name": { "type": "string", "description": "The name of the switch." }, "access_token": { "type": "string", "description": "Big Cloud Fabric access token. If this isn't set then the environment variable C(BIGSWITCH_ACCESS_TOKEN) is used." }, "controller": { "type": "string", "description": "The controller IP address." }, "mac": { "type": "string", "description": "The MAC address of the switch." }, "state": { "type": "string", "description": "Default: present\n\nWhether the switch should be present or absent." }, "leaf_group": { "type": "string", "description": "The leaf group of the switch if the switch is a leaf." }, "validate_certs": { "type": "string", "description": "Default: True\n\nIf C(false), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "fabric_role": { "type": "string", "description": "Fabric role of the switch." } } }, "nxos_vrf": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "vrf" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "vrf" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module provides declarative management of VRFs on CISCO NXOS network devices.", "properties": { "purge": { "type": "string", "description": "Purge VRFs not defined in the I(aggregate) parameter." }, "name": { "type": "string", "description": "Name of VRF to be managed." }, "interfaces": { "type": "array", "description": "List of interfaces to check the VRF has been configured correctly or keyword 'default'." }, "vni": { "type": "string", "description": "Specify virtual network identifier. Valid values are Integer or keyword 'default'." }, "rd": { "type": "string", "description": "VPN Route Distinguisher (RD). Valid values are a string in one of the route-distinguisher formats (ASN2:NN, ASN4:NN, or IPV4:NN); the keyword 'auto', or the keyword 'default'." }, "aggregate": { "type": "array", "description": "List of VRFs definitions." }, "state": { "type": "string", "description": "Default: present\n\nManages desired state of the resource." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state arguments." }, "admin_state": { "type": "string", "description": "Default: up\n\nAdministrative state of the VRF." }, "vrf": { "type": "string", "description": "Name of VRF to be managed." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vrf C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vrf interfaces on device it will result in failure." }, "description": { "type": "string", "description": "Description of the VRF or keyword 'default'." } } }, "nxos_vrf_af": { "required": [ "afi", "vrf", "safi" ], "type": "object", "description": "Manages VRF AF", "properties": { "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "safi": { "type": "string", "description": "Sub Address-Family Identifier (SAFI).\nDeprecated in 2.4" }, "route_target_both_auto_evpn": { "type": "string", "description": "Enable/Disable the EVPN route-target 'auto' setting for both import and export target communities." }, "afi": { "type": "string", "description": "Address-Family Identifier (AFI)." }, "vrf": { "type": "string", "description": "Name of the VRF." } } }, "ovirt_vms_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV virtual machines.", "properties": { "all_content": { "type": "string", "description": "If I(true) all the attributes of the virtual machines should be included in the response." }, "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search VM X from cluster Y use following pattern: name=X and cluster=Y" }, "max": { "type": "string", "description": "The maximum number of results to return." }, "case_sensitive": { "type": "string", "description": "If I(true) performed search will take case into account." } } }, "os_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "boot_volume", "root_volume" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "auto_ip", "auto_floating_ip", "public_ip" ], "type": "object" } } ] } ], "type": "object", "description": "Create or Remove compute instances from OpenStack.", "properties": { "image": { "type": "string", "description": "The name or id of the base image to boot." }, "image_exclude": { "type": "string", "description": "Text to use to filter image names, for the case, such as HP, where there are multiple image names matching the common identifying portions. image_exclude is a negative match filter - it is text that may not exist in the image name. Defaults to \"(deprecated)\"" }, "flavor_include": { "type": "string", "description": "Text to use to filter flavor names, for the case, such as Rackspace, where there are multiple flavors that have the same ram count. flavor_include is a positive match filter - it must exist in the flavor name." }, "public_ip": { "type": "string", "description": "Default: yes\n\nEnsure instance has public ip however the cloud wants to do that" }, "meta": { "type": "string", "description": "Default: None\n\nA list of key value pairs that should be provided as a metadata to the new instance or a string containing a list of key-value pairs. Eg: meta: \"key1=value1,key2=value2\"" }, "flavor": { "type": "string", "description": "Default: 1\n\nThe name or id of the flavor in which the new instance has to be created. Mutually exclusive with flavor_ram" }, "security_groups": { "type": "string", "description": "Default: None\n\nNames of the security groups to which the instance should be added. This may be a YAML list or a comma separated string." }, "scheduler_hints": { "type": "string", "description": "Default: None\n\nArbitrary key/value pairs to the scheduler for custom use" }, "boot_from_volume": { "type": "string", "description": "Should the instance boot from a persistent volume created based on the image given. Mututally exclusive with boot_volume." }, "userdata": { "type": "string", "description": "Default: None\n\nOpaque blob of data which is made available to the instance" }, "network": { "type": "string", "description": "Default: None\n\nName or ID of a network to attach this instance to. A simpler version of the nics parameter, only one of network or nics should be supplied." }, "nics": { "type": "string", "description": "Default: None\n\nA list of networks to which the instance's interface should be attached. Networks may be referenced by net-id/net-name/port-id or port-name.\nAlso this accepts a string containing a list of (net/port)-(id/name) Eg: nics: \"net-id=uuid-1,port-name=myport\" Only one of network or nics should be supplied." }, "floating_ips": { "type": "array", "description": "Default: None\n\nlist of valid floating IPs that pre-exist to assign to this node" }, "flavor_ram": { "type": "string", "description": "Default: 1\n\nThe minimum amount of ram in MB that the flavor in which the new instance has to be created must have. Mutually exclusive with flavor." }, "volume_size": { "type": "string", "description": "The size of the volume to create in GB if booting from volume based on an image." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "auto_ip": { "type": "string", "description": "Default: yes\n\nEnsure instance has public ip however the cloud wants to do that" }, "root_volume": { "type": "string", "description": "Default: None\n\nVolume name or id to use as the volume to boot from. Implies boot_from_volume. Mutually exclusive with image and boot_from_volume." }, "config_drive": { "type": "string", "description": "Default: no\n\nWhether to boot the server with config drive enabled" }, "terminate_volume": { "type": "string", "description": "If true, delete volume when deleting instance (if booted from volume)" }, "key_name": { "type": "string", "description": "Default: None\n\nThe key pair name to be used when creating a instance" }, "boot_volume": { "type": "string", "description": "Default: None\n\nVolume name or id to use as the volume to boot from. Implies boot_from_volume. Mutually exclusive with image and boot_from_volume." }, "wait": { "type": "string", "description": "Default: yes\n\nIf the module should wait for the instance to be created." }, "name": { "type": "string", "description": "Name that has to be given to the instance" }, "auto_floating_ip": { "type": "string", "description": "Default: yes\n\nEnsure instance has public ip however the cloud wants to do that" }, "timeout": { "type": "string", "description": "Default: 180\n\nThe amount of time the module should wait for the instance to get into active state." }, "delete_fip": { "type": "string", "description": "When I(state) is absent and this option is true, any floating IP associated with the instance will be deleted along with the instance." }, "volumes": { "type": "string", "description": "A list of preexisting volumes names or ids to attach to the instance" }, "floating_ip_pools": { "type": "string", "description": "Default: None\n\nName of floating IP pool from which to choose a floating IP" }, "reuse_ips": { "type": "string", "description": "Default: True\n\nWhen I(auto_ip) is true and this option is true, the I(auto_ip) code will attempt to re-use unassigned floating ips in the project before creating a new one. It is important to note that it is impossible to safely do this concurrently, so if your use case involves concurrent server creation, it is highly recommended to set this to false and to delete the floating ip associated with a server when the server is deleted using I(delete_fip)." } } }, "win_domain": { "required": [ "dns_domain_name", "safe_mode_password" ], "type": "object", "description": "Ensure that the domain named by C(dns_domain_name) exists and is reachable. If the domain is not reachable, the domain is created in a new forest on the target Windows Server 2012R2+ host. This module may require subsequent use of the M(win_reboot) action if changes are made.", "properties": { "dns_domain_name": { "type": "string", "description": "the DNS name of the domain which should exist and be reachable or reside on the target Windows host" }, "database_path": { "type": "string", "description": "The path to a directory on a fixed disk of the Windows host where the domain database will be created.\nIf not set then the default path is C(%SYSTEMROOT%\\NTDS)." }, "safe_mode_password": { "type": "string", "description": "safe mode password for the domain controller" }, "sysvol_path": { "type": "string", "description": "The path to a directory on a fixed disk of the Windows host where the Sysvol file will be created.\nIf not set then the default path is C(%SYSTEMROOT%\\SYSVOL)." } } }, "serverless": { "required": [ "service_path" ], "type": "object", "description": "Provides support for managing Serverless Framework (https://serverless.com/) project deployments and stacks.", "properties": { "functions": { "type": "string", "description": "A list of specific functions to deploy. If this is not provided, all functions in the service will be deployed." }, "deploy": { "type": "string", "description": "Default: True\n\nWhether or not to deploy artifacts after building them. When this option is `false` all the functions will be built, but no stack update will be run to send them out. This is mostly useful for generating artifacts to be stored/deployed elsewhere." }, "region": { "type": "string", "description": "Default: us-east-1\n\nAWS region to deploy the service to" }, "state": { "type": "string", "description": "Default: present\n\nGoal state of given stage/project" }, "serverless_bin_path": { "type": "string", "description": "The path of a serverless framework binary relative to the 'service_path' eg. node_module/.bin/serverless" }, "service_path": { "type": "string", "description": "The path to the root of the Serverless Service to be operated on." }, "stage": { "type": "string", "description": "The name of the serverless framework project stage to deploy to. This uses the serverless framework default \"dev\"." } } }, "vmware_host_service_manager": { "required": [ "service_name" ], "type": "object", "description": "This module can be used to manage (start, stop, restart) services on a given ESXi host.\nIf cluster_name is provided, specified service will be managed on all ESXi host belonging to that cluster.\nIf specific esxi_hostname is provided, then specified service will be managed on given ESXi host only.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nService settings are applied to every ESXi host system/s in given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "service_name": { "type": "string", "description": "Name of Service to be managed. This is brief identifier for the service, for example, ntpd, vxsyslogd etc.\nThis value should be a valid ESXi service name." }, "state": { "type": "string", "description": "Default: start\n\nDesired state of service.\nState value 'start' and 'present' has same effect.\nState value 'stop' and 'absent' has same effect." }, "service_policy": { "type": "string", "description": "Set of valid service policy strings.\nIf set C(on), then service should be started when the host starts up.\nIf set C(automatic), then service should run if and only if it has open firewall ports.\nIf set C(off), then Service should not be started when the host starts up." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nService settings are applied to this ESXi host system.\nIf C(cluster_name) is not given, this parameter is required." } } }, "sorcery": { "allOf": [ { "allOf": [ { "not": { "required": [ "update_cache", "update_codex" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "spell" ], "type": "object" } } ] } ], "type": "object", "description": "Manages \"spells\" on Source Mage GNU/Linux using I(sorcery) toolchain", "properties": { "update_codex": { "type": "string", "description": "Default: no\n\nWhether or not to update grimoire collection before casting spells" }, "name": { "type": "string", "description": "Name of the spell\nmultiple names can be given, separated by commas\nspecial value '*' in conjunction with states C(latest) or C(rebuild) will update or rebuild the whole system respectively" }, "spell": { "type": "string", "description": "Name of the spell\nmultiple names can be given, separated by commas\nspecial value '*' in conjunction with states C(latest) or C(rebuild) will update or rebuild the whole system respectively" }, "state": { "type": "string", "description": "Default: present\n\nWhether to cast, dispel or rebuild a package\nstate C(cast) is an equivalent of C(present), not C(latest)\nstate C(latest) always triggers C(update_cache=yes)\nstate C(rebuild) implies cast of all specified spells, not only those existed before" }, "update": { "type": "string", "description": "Default: no\n\nWhether or not to update sorcery scripts at the very first stage" }, "depends": { "type": "string", "description": "Comma-separated list of _optional_ dependencies to build a spell (or make sure it is built) with; use +/- in front of dependency to turn it on/off ('+' is optional though)\nthis option is ignored if C(name) parameter is equal to '*' or contains more than one spell\nproviders must be supplied in the form recognized by Sorcery, e.g. 'openssl(SSL)'" }, "update_cache": { "type": "string", "description": "Default: no\n\nWhether or not to update grimoire collection before casting spells" }, "cache_valid_time": { "type": "string", "description": "Time in seconds to invalidate grimoire collection on update\nespecially useful for SCM and rsync grimoires\nmakes sense only in pair with C(update_cache)" } } }, "win_regedit": { "required": [ "key", "value" ], "type": "object", "description": "Add, Edit, or Remove Registry Keys and Values using ItemProperties Cmdlets", "properties": { "datatype": { "type": "string", "description": "Default: string\n\nRegistry Value Data Type" }, "state": { "type": "string", "description": "Default: present\n\nState of Registry Value" }, "data": { "type": "string", "description": "Registry Value Data. Binary data should be expressed a yaml byte array or as comma separated hex values. An easy way to generate this is to run C(regedit.exe) and use the I(Export) option to save the registry values to a file. In the exported file binary values will look like C(hex:be,ef,be,ef). The C(hex:) prefix is optional." }, "value": { "type": "string", "description": "Name of Registry Value" }, "key": { "type": "string", "description": "Name of Registry Key" } } }, "ios_logging": { "type": "object", "description": "This module provides declarative management of logging on Cisco Ios devices.", "properties": { "name": { "type": "string", "description": "If value of C(dest) is I(file) it indicates file-name, for I(user) it indicates username and for I(host) indicates the host name to be notified." }, "facility": { "type": "string", "description": "Set logging facility." }, "dest": { "type": "string", "description": "Destination of the logs." }, "level": { "type": "string", "description": "Set logging severity levels." }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." }, "size": { "type": "string", "description": "Default: 4096\n\nSize of buffer. The acceptable value is in range from 4096 to 4294967295 bytes." } } }, "net_ping": { "required": [ "dest" ], "type": "object", "description": "Tests reachability using ping from network device to a remote destination.\nFor Windows targets, use the M(win_ping) module instead.\nFor targets running Python, use the M(ping) module instead.", "properties": { "count": { "type": "string", "description": "Default: 5\n\nNumber of packets to send." }, "dest": { "type": "string", "description": "The IP Address or hostname (resolvable by switch) of the remote node." }, "state": { "type": "string", "description": "Default: present\n\nDetermines if the expected result is success or fail." }, "vrf": { "type": "string", "description": "Default: default\n\nThe VRF to use for forwarding." }, "source": { "type": "string", "description": "The source IP Address." } } }, "ios_system": { "type": "object", "description": "This module provides declarative management of node system attributes on Cisco IOS devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "lookup_source": { "type": "string", "description": "Provides one or more source interfaces to use for performing DNS lookups. The interface provided in C(lookup_source) must be a valid interface configured on the device." }, "domain_search": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "domain_name": { "type": "string", "description": "Configure the IP domain name on the remote device to the provided value. Value should be in the dotted name form and will be appended to the C(hostname) to create a fully-qualified domain name." }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "name_servers": { "type": "array", "description": "List of DNS name servers by IP address to use to perform name resolution lookups. This argument accepts either a list of DNS servers See examples." }, "lookup_enabled": { "description": "Administrative control for enabling or disabling DNS lookups. When this argument is set to True, lookups are performed and when it is set to False, lookups are not performed.", "$ref": "#/definitions/ansible_truth" } } }, "win_rabbitmq_plugin": { "allOf": [ { "allOf": [ { "not": { "required": [ "names", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "names" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage RabbitMQ plugins.", "properties": { "state": { "type": "string", "description": "Default: enabled\n\nSpecify if plugins are to be enabled or disabled." }, "names": { "type": "string", "description": "Comma-separated list of plugin names." }, "prefix": { "type": "string", "description": "Specify a custom install prefix to a Rabbit." }, "name": { "type": "string", "description": "Comma-separated list of plugin names." }, "new_only": { "description": "Default: no\n\nOnly enable missing plugins.\nDoes not disable plugins that are not in the names list.", "$ref": "#/definitions/ansible_truth" } } }, "ce_info_center_global": { "type": "object", "description": "This module offers the ability to be output to the log buffer, log file, console, terminal, or log host on HUAWEI CloudEngine switches.", "properties": { "facility": { "type": "string", "description": "Log record tool." }, "transport_mode": { "type": "string", "description": "Transport mode. The value is of the enumerated type and case-sensitive." }, "channel_cfg_name": { "type": "string", "description": "Default: console\n\nChannel name.The value is a string of 1 to 30 case-sensitive characters. The default value is console." }, "suppress_enable": { "type": "string", "description": "Whether a device is enabled to suppress duplicate statistics. The value is of the Boolean type." }, "channel_name": { "type": "string", "description": "Channel name. The value is a string of 1 to 30 case-sensitive characters." }, "packet_priority": { "type": "string", "description": "Set the priority of the syslog packet.The value is an integer ranging from 0 to 7. The default value is 0." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "logfile_max_size": { "type": "string", "description": "Default: 32\n\nMaximum size (in MB) of a log file. The default value is 32.\nThe value range for log files is [4, 8, 16, 32], for security files is [1, 4],\nand for operation files is [1, 4]." }, "server_port": { "type": "string", "description": "Number of a port sending logs.The value is an integer ranging from 1 to 65535. For UDP, the default value is 514. For TCP, the default value is 601. For TSL, the default value is 6514." }, "info_center_enable": { "type": "string", "description": "Whether the info-center function is enabled. The value is of the Boolean type." }, "ip_type": { "type": "string", "description": "Log server address type, IPv4 or IPv6." }, "logfile_max_num": { "type": "string", "description": "Maximum number of log files of the same type. The default value is 200.\nThe value range for log files is[3, 500], for security files is [1, 3],and for operation files is [1, 7]." }, "server_ip": { "type": "string", "description": "Log server address, IPv4 or IPv6 type. The value is a string of 0 to 255 characters. The value can be an valid IPv4 or IPv6 address." }, "filter_log_name": { "type": "string", "description": "Name of the filtered log. The value is a string of 1 to 63 case-sensitive characters." }, "ssl_policy_name": { "type": "string", "description": "SSL policy name. The value is a string of 1 to 23 case-sensitive characters." }, "timestamp": { "type": "string", "description": "Log server timestamp. The value is of the enumerated type and case-sensitive." }, "channel_out_direct": { "type": "string", "description": "Direction of information output." }, "filter_feature_name": { "type": "string", "description": "Feature name of the filtered log. The value is a string of 1 to 31 case-insensitive characters." }, "is_default_vpn": { "type": "string", "description": "Use the default VPN or not." }, "server_domain": { "type": "string", "description": "Server name. The value is a string of 1 to 255 case-sensitive characters." }, "level": { "type": "string", "description": "Level of logs saved on a log server." }, "source_ip": { "type": "string", "description": "Log source ip address, IPv4 or IPv6 type. The value is a string of 0 to 255. The value can be an valid IPv4 or IPv6 address." }, "channel_id": { "type": "string", "description": "Number for channel. The value is an integer ranging from 0 to 9. The default value is 0." }, "vrf_name": { "type": "string", "description": "VPN name on a log server. The value is a string of 1 to 31 case-sensitive characters. The default value is _public_." } } }, "macports": { "required": [ "name" ], "type": "object", "description": "Manages MacPorts packages", "properties": { "state": { "type": "string", "description": "Default: present\n\nstate of the package" }, "update_cache": { "type": "string", "description": "Default: no\n\nupdate the package db first" }, "name": { "type": "string", "description": "name of package to install/remove" } } }, "ovirt_affinity_group": { "required": [ "name" ], "type": "object", "description": "This module manage affinity groups in oVirt/RHV. It can also manage assignments of those groups to VMs.", "properties": { "vm_enforcing": { "description": "If I(yes) VM cannot start if it does not satisfy the C(vm_rule).", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name of the affinity group to manage." }, "host_rule": { "type": "string", "description": "If I(positive) I(all) VMs in this group should run on the this host.\nIf I(negative) I(no) VMs in this group should run on the this host.\nThis parameter is support since oVirt/RHV 4.1 version." }, "cluster": { "type": "string", "description": "Name of the cluster of the affinity group." }, "state": { "type": "string", "description": "Default: present\n\nShould the affinity group be present or absent." }, "hosts": { "type": "array", "description": "List of the hosts names, which should have assigned this affinity group.\nThis parameter is support since oVirt/RHV 4.1 version." }, "vm_rule": { "type": "string", "description": "If I(positive) I(all) VMs in this group should run on the host defined by C(host_rule).\nIf I(negative) I(no) VMs in this group should run on the host defined by C(host_rule).\nIf I(disabled) this affinity group doesn't take effect." }, "host_enforcing": { "description": "If I(yes) VM cannot start on host if it does not satisfy the C(host_rule).\nThis parameter is support since oVirt/RHV 4.1 version.", "$ref": "#/definitions/ansible_truth" }, "vms": { "type": "array", "description": "List of the VMs names, which should have assigned this affinity group." }, "description": { "type": "string", "description": "Description of the affinity group." } } }, "net_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both login and motd banners on network devices. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string, with no empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner that should be configured on the remote device." } } }, "os_user_group": { "required": [ "group", "user" ], "type": "object", "description": "Add and remove users from groups", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the user be present or absent in the group" }, "group": { "type": "string", "description": "Name or id for the group." }, "user": { "type": "string", "description": "Name or id for the user" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" } } }, "avi_controllerproperties": { "type": "object", "description": "This module is used to configure ControllerProperties object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "vs_se_ping_fail": { "type": "string", "description": "Number of vs_se_ping_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(SEC)." }, "vs_se_create_fail": { "type": "string", "description": "Number of vs_se_create_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1500.\nUnits(SEC)." }, "portal_token": { "type": "string", "description": "Token used for uploading tech-support to portal.\nField introduced in 16.4.6,17.1.2." }, "warmstart_se_reconnect_wait_time": { "type": "string", "description": "Number of warmstart_se_reconnect_wait_time.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "persistence_key_rotate_period": { "type": "string", "description": "Allowed values are 1-1051200.\nSpecial values are 0 - 'disabled'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "bm_use_ansible": { "description": "Use ansible for se creation in baremetal.\nField introduced in 17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "attach_ip_retry_interval": { "type": "string", "description": "Number of attach_ip_retry_interval.\nDefault value when not specified in API or module is interpreted by Avi Controller as 360.\nUnits(SEC)." }, "vs_se_vnic_fail": { "type": "string", "description": "Number of vs_se_vnic_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "attach_ip_retry_limit": { "type": "string", "description": "Number of attach_ip_retry_limit.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "se_vnic_cooldown": { "type": "string", "description": "Number of se_vnic_cooldown.\nDefault value when not specified in API or module is interpreted by Avi Controller as 120.\nUnits(SEC)." }, "vnic_op_fail_time": { "type": "string", "description": "Number of vnic_op_fail_time.\nDefault value when not specified in API or module is interpreted by Avi Controller as 180.\nUnits(SEC)." }, "vs_key_rotate_period": { "type": "string", "description": "Allowed values are 1-1051200.\nSpecial values are 0 - 'disabled'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "vs_se_bootup_fail": { "type": "string", "description": "Number of vs_se_bootup_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 480.\nUnits(SEC)." }, "seupgrade_fabric_pool_size": { "type": "string", "description": "Pool size used for all fabric commands during se upgrade.\nDefault value when not specified in API or module is interpreted by Avi Controller as 20." }, "max_pcap_per_tenant": { "type": "string", "description": "Maximum number of pcap files stored per tenant.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "seupgrade_segroup_min_dead_timeout": { "type": "string", "description": "Time to wait before marking segroup upgrade as stuck.\nDefault value when not specified in API or module is interpreted by Avi Controller as 360.\nUnits(SEC)." }, "dns_refresh_period": { "type": "string", "description": "Number of dns_refresh_period.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "upgrade_lease_time": { "type": "string", "description": "Number of upgrade_lease_time.\nDefault value when not specified in API or module is interpreted by Avi Controller as 360.\nUnits(SEC)." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "se_create_timeout": { "type": "string", "description": "Number of se_create_timeout.\nDefault value when not specified in API or module is interpreted by Avi Controller as 900.\nUnits(SEC)." }, "query_host_fail": { "type": "string", "description": "Number of query_host_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 180.\nUnits(SEC)." }, "vs_apic_scaleout_timeout": { "type": "string", "description": "Time to wait for the scaled out se to become ready before marking the scaleout done, applies to apic configuration only.\nDefault value when not specified in API or module is interpreted by Avi Controller as 360.\nUnits(SEC)." }, "unresponsive_se_reboot": { "type": "string", "description": "Number of unresponsive_se_reboot.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "se_offline_del": { "type": "string", "description": "Number of se_offline_del.\nDefault value when not specified in API or module is interpreted by Avi Controller as 172000.\nUnits(SEC)." }, "max_dead_se_in_grp": { "type": "string", "description": "Number of max_dead_se_in_grp.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "upgrade_dns_ttl": { "type": "string", "description": "Time to account for dns ttl during upgrade.\nThis is in addition to vs_scalein_timeout_for_upgrade in se_group.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.\nUnits(SEC)." }, "fatal_error_lease_time": { "type": "string", "description": "Number of fatal_error_lease_time.\nDefault value when not specified in API or module is interpreted by Avi Controller as 120.\nUnits(SEC)." }, "allow_ip_forwarding": { "description": "Field introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vs_se_attach_ip_fail": { "type": "string", "description": "Time to wait before marking attach ip operation on an se as failed.\nField introduced in 17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3600.\nUnits(SEC)." }, "max_seq_vnic_failures": { "type": "string", "description": "Number of max_seq_vnic_failures.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3." }, "allow_unauthenticated_nodes": { "description": "Boolean flag to set allow_unauthenticated_nodes.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "allow_unauthenticated_apis": { "description": "Allow unauthenticated access for special apis.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "safenet_hsm_version": { "type": "string", "description": "Version of the safenet package installed on the controller.\nField introduced in 16.5.2,17.2.3." }, "cluster_ip_gratuitous_arp_period": { "type": "string", "description": "Number of cluster_ip_gratuitous_arp_period.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "dummy": { "type": "string", "description": "Number of dummy." }, "max_seq_attach_ip_failures": { "type": "string", "description": "Maximum number of consecutive attach ip failures that halts vs placement.\nField introduced in 17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3." }, "secure_channel_cleanup_timeout": { "type": "string", "description": "Number of secure_channel_cleanup_timeout.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "vs_se_vnic_ip_fail": { "type": "string", "description": "Number of vs_se_vnic_ip_fail.\nDefault value when not specified in API or module is interpreted by Avi Controller as 120.\nUnits(SEC)." }, "ssl_certificate_expiry_warning_days": { "type": "string", "description": "Number of days for ssl certificate expiry warning.\nUnits(DAYS)." }, "secure_channel_se_token_timeout": { "type": "string", "description": "Number of secure_channel_se_token_timeout.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "secure_channel_controller_token_timeout": { "type": "string", "description": "Number of secure_channel_controller_token_timeout.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(MIN)." }, "api_idle_timeout": { "type": "string", "description": "Allowed values are 0-1440.\nDefault value when not specified in API or module is interpreted by Avi Controller as 15.\nUnits(MIN)." }, "crashed_se_reboot": { "type": "string", "description": "Number of crashed_se_reboot.\nDefault value when not specified in API or module is interpreted by Avi Controller as 900.\nUnits(SEC)." }, "appviewx_compat_mode": { "description": "Export configuration in appviewx compatibility mode.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vs_awaiting_se_timeout": { "type": "string", "description": "Number of vs_awaiting_se_timeout.\nDefault value when not specified in API or module is interpreted by Avi Controller as 60.\nUnits(SEC)." }, "se_failover_attempt_interval": { "type": "string", "description": "Interval between attempting failovers to an se.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "dead_se_detection_timer": { "type": "string", "description": "Number of dead_se_detection_timer.\nDefault value when not specified in API or module is interpreted by Avi Controller as 360.\nUnits(SEC)." } } }, "ce_vxlan_vap": { "type": "object", "description": "Manages VXLAN Virtual access point on HUAWEI CloudEngine Devices.", "properties": { "pe_vid": { "type": "string", "description": "When I(encapsulation) is 'qinq', specifies an inner VLAN ID for double-tagged packets to be received by a Layer 2 sub-interface. The value is an integer ranging from 1 to 4094." }, "l2_sub_interface": { "type": "string", "description": "Specifies an Sub-Interface full name, i.e. \"10GE1/0/41.1\". The value is a string of 1 to 63 case-insensitive characters, spaces supported." }, "bind_vlan_id": { "type": "string", "description": "Specifies the VLAN binding to a BD(Bridge Domain). The value is an integer ranging ranging from 1 to 4094." }, "bridge_domain_id": { "type": "string", "description": "Specifies a bridge domain ID. The value is an integer ranging from 1 to 16777215." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "ce_vid": { "type": "string", "description": "When I(encapsulation) is 'dot1q', specifies a VLAN ID in the outer VLAN tag. When I(encapsulation) is 'qinq', specifies an outer VLAN ID for double-tagged packets to be received by a Layer 2 sub-interface. The value is an integer ranging from 1 to 4094." }, "encapsulation": { "type": "string", "description": "Specifies an encapsulation type of packets allowed to pass through a Layer 2 sub-interface." } } }, "clc_server_snapshot": { "required": [ "server_ids" ], "type": "object", "description": "An Ansible module to Create, Delete and Restore server snapshots in CenturyLink Cloud.", "properties": { "server_ids": { "type": "string", "description": "The list of CLC server Ids." }, "expiration_days": { "type": "string", "description": "Default: 7\n\nThe number of days to keep the server snapshot before it expires." }, "state": { "type": "string", "description": "Default: present\n\nThe state to insure that the provided resources are in." }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the provisioning tasks to finish before returning." } } }, "openvswitch_db": { "required": [ "record", "key", "table", "col", "value" ], "type": "object", "description": "Set column values in record in database table.", "properties": { "key": { "type": "string", "description": "Identifies the key in the record column" }, "value": { "type": "string", "description": "Expected value for the table, record, column and key." }, "record": { "type": "string", "description": "Identifies the recoard in the table." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the key. When set to I(present), the I(key) and I(value) pair will be set on the I(record) and when set to I(absent) the I(key) will not be set." }, "timeout": { "type": "string", "description": "Default: 5\n\nHow long to wait for ovs-vswitchd to respond" }, "table": { "type": "string", "description": "Identifies the table in the database." }, "col": { "type": "string", "description": "Identifies the column in the record." } } }, "net_l2_interface": { "type": "object", "description": "This module provides declarative management of Layer-2 interface on network devices.", "properties": { "native_vlan": { "type": "string", "description": "Native VLAN to be configured in trunk port." }, "access_vlan": { "type": "string", "description": "Configure given VLAN in access port." }, "name": { "type": "string", "description": "Name of the interface excluding any logical unit number." }, "state": { "type": "string", "description": "Default: present\n\nState of the Layer-2 Interface configuration." }, "trunk_vlans": { "type": "array", "description": "List of VLANs to be configured in trunk port." }, "trunk_allowed_vlans": { "type": "array", "description": "List of allowed VLAN's in a given trunk port." }, "mode": { "type": "string", "description": "Default: access\n\nMode in which interface needs to be configured." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." } } }, "consul": { "required": [ "state" ], "type": "object", "description": "Registers services and checks for an agent with a consul cluster. A service is some process running on the agent node that should be advertised by consul's discovery mechanism. It may optionally supply a check definition, a periodic service test to notify the consul cluster of service's health.\nChecks may also be registered per node e.g. disk usage, or cpu usage and notify the health of the entire node to the cluster. Service level checks do not require a check name or id as these are derived by Consul from the Service name and id respectively by appending 'service:' Node level checks require a check_name and optionally a check_id.\nCurrently, there is no complete way to retrieve the script, interval or ttl metadata for a registered check. Without this metadata it is not possible to tell if the data supplied with ansible represents a change to a check. As a result this does not attempt to determine changes and will always report a changed occurred. An api method is planned to supply this metadata so at that stage change management will be added.\nSee http://consul.io for more details.", "properties": { "service_address": { "type": "string", "description": "Default: None\n\nthe address to advertise that the service will be listening on. This value will be passed as the I(Address) parameter to Consul's U(/v1/agent/service/register) API method, so refer to the Consul API documentation for further details." }, "http": { "type": "string", "description": "Default: None\n\nchecks can be registered with an http endpoint. This means that consul will check that the http endpoint returns a successful http status. Interval must also be provided with this option." }, "tags": { "type": "string", "description": "Default: None\n\na list of tags that will be attached to the service registration." }, "check_name": { "type": "string", "description": "Default: None\n\na name for the service check, defaults to the check id. required if standalone, ignored if part of service definition." }, "service_name": { "type": "string", "description": "Unique name for the service on a node, must be unique per node, required if registering a service. May be omitted if registering a node level check" }, "notes": { "type": "string", "description": "Default: None\n\nNotes to attach to check when registering it." }, "script": { "type": "string", "description": "Default: None\n\nthe script/command that will be run periodically to check the health of the service. Scripts require an interval and vise versa" }, "token": { "type": "string", "description": "Default: None\n\nthe token key indentifying an ACL rule set. May be required to register services." }, "interval": { "type": "string", "description": "Default: None\n\nthe interval at which the service check will be run. This is a number with a s or m suffix to signify the units of seconds or minutes e.g 15s or 1m. If no suffix is supplied, m will be used by default e.g. 1 will be 1m. Required if the script param is specified." }, "check_id": { "type": "string", "description": "Default: None\n\nan ID for the service check, defaults to the check name, ignored if part of a service definition." }, "host": { "type": "string", "description": "Default: localhost\n\nhost of the consul agent defaults to localhost" }, "state": { "type": "string", "description": "register or deregister the consul service, defaults to present" }, "service_port": { "type": "string", "description": "Default: None\n\nthe port on which the service is listening. Can optionally be supplied for registration of a service, i.e. if service_name or service_id is set" }, "timeout": { "type": "string", "description": "Default: None\n\nA custom HTTP check timeout. The consul default is 10 seconds. Similar to the interval this is a number with a s or m suffix to signify the units of seconds or minutes, e.g. 15s or 1m." }, "ttl": { "type": "string", "description": "Default: None\n\nchecks can be registered with a ttl instead of a script and interval this means that the service will check in with the agent before the ttl expires. If it doesn't the check will be considered failed. Required if registering a check and the script an interval are missing Similar to the interval this is a number with a s or m suffix to signify the units of seconds or minutes e.g 15s or 1m. If no suffix is supplied, m will be used by default e.g. 1 will be 1m" }, "service_id": { "type": "string", "description": "Default: service_name if supplied\n\nthe ID for the service, must be unique per node, defaults to the service name if the service name is supplied" }, "scheme": { "type": "string", "description": "Default: http\n\nthe protocol scheme on which the consul agent is running" }, "validate_certs": { "type": "string", "description": "Default: True\n\nwhether to verify the tls certificate of the consul agent" }, "port": { "type": "string", "description": "Default: 8500\n\nthe port on which the consul agent is running" } } }, "alternatives": { "required": [ "path", "name" ], "type": "object", "description": "Manages symbolic links using the 'update-alternatives' tool\nUseful when multiple programs are installed but provide similar functionality (e.g. different editors).", "properties": { "priority": { "type": "string", "description": "Default: 50\n\nThe priority of the alternative" }, "path": { "type": "string", "description": "The path to the real executable that the link should point to." }, "link": { "type": "string", "description": "The path to the symbolic link that should point to the real executable.\nThis option is always required on RHEL-based distributions. On Debian-based distributions this option is required when the alternative I(name) is unknown to the system." }, "name": { "type": "string", "description": "The generic name of the link." } } }, "gce_tag": { "required": [ "instance_name", "tags" ], "type": "object", "description": "This module can add or remove tags U(https://cloud.google.com/compute/docs/instances/#tags) to/from GCE instance.", "properties": { "zone": { "type": "string", "description": "Default: us-central1-a\n\nthe zone of the disk specified by source" }, "tags": { "type": "string", "description": "comma-separated list of tags to add or remove" }, "service_account_email": { "type": "string", "description": "service account email" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email" }, "instance_name": { "type": "string", "description": "the name of the GCE instance to add/remove tags" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the tags" }, "project_id": { "type": "string", "description": "your GCE project ID" } } }, "infini_pool": { "required": [ "name" ], "type": "object", "description": "This module to creates, deletes or modifies pools on Infinibox.", "properties": { "ssd_cache": { "type": "string", "description": "Default: True\n\nEnable/Disable SSD Cache on Pool" }, "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies Pool when present or removes when absent" }, "vsize": { "type": "string", "description": "Pool Virtual Capacity in MB, GB or TB units. If pool vsize is not set on pool creation, Virtual Capacity will be equal to Physical Capacity. See examples." }, "name": { "type": "string", "description": "Pool Name" }, "size": { "type": "string", "description": "Pool Physical Capacity in MB, GB or TB units. If pool size is not set on pool creation, size will be equal to 1TB. See examples." } } }, "nxos_ntp": { "type": "object", "description": "Manages core NTP configuration.", "properties": { "source_addr": { "type": "string", "description": "Local source address from which NTP messages are sent." }, "prefer": { "type": "string", "description": "Makes given NTP server or peer the preferred NTP server or peer for the device." }, "server": { "type": "string", "description": "Network address of NTP server." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "vrf_name": { "type": "string", "description": "Makes the device communicate with the given NTP server or peer over a specific VRF." }, "peer": { "type": "string", "description": "Network address of NTP peer." }, "key_id": { "type": "string", "description": "Authentication key identifier to use with given NTP server or peer." }, "source_int": { "type": "string", "description": "Local source interface from which NTP messages are sent. Must be fully qualified interface name." } } }, "netapp_e_amg_sync": { "required": [ "api_password", "state", "api_username", "api_url", "name" ], "type": "object", "description": "Allows for the initialization, suspension and resumption of an asynchronous mirror group's synchronization for NetApp E-series storage arrays.", "properties": { "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "name": { "type": "string", "description": "The name of the async mirror group you wish to target" }, "state": { "type": "string", "description": "The synchronization action you'd like to take.\nIf C(running) then it will begin syncing if there is no active sync or will resume a suspended sync. If there is already a sync in progress, it will return with an OK status.\nIf C(suspended) it will suspend any ongoing sync action, but return OK if there is no active sync or if the sync is already suspended" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "delete_recovery_point": { "type": "string", "description": "Indicates whether the failures point can be deleted on the secondary if necessary to achieve the synchronization.\nIf true, and if the amount of unsynchronized data exceeds the CoW repository capacity on the secondary for any member volume, the last failures point will be deleted and synchronization will continue.\nIf false, the synchronization will be suspended if the amount of unsynchronized data exceeds the CoW Repository capacity on the secondary and the failures point will be preserved.\nNOTE: This only has impact for newly launched syncs." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "ssid": { "type": "string", "description": "The ID of the storage array containing the AMG you wish to target" } } }, "ovirt_storage_vms_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV virtual machines relate to a storage domain.", "properties": { "unregistered": { "type": "string", "description": "Flag which indicates whether to get unregistered virtual machines which contain one or more disks which reside on a storage domain or diskless virtual machines." } } }, "elb_application_lb_facts": { "type": "object", "description": "Gather facts about application ELBs in AWS", "properties": { "names": { "type": "string", "description": "The names of the load balancers." }, "load_balancer_arns": { "type": "string", "description": "The Amazon Resource Names (ARN) of the load balancers. You can specify up to 20 load balancers in a single call." } } }, "eos_vrf": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of VRFs on Arista EOS network devices.", "properties": { "purge": { "type": "string", "description": "Purge VRFs not defined in the I(aggregate) parameter." }, "name": { "type": "string", "description": "Name of the VRF." }, "interfaces": { "type": "string", "description": "Identifies the set of interfaces that should be configured in the VRF. Interfaces must be routed interfaces in order to be placed into a VRF. The name of interface should be in expanded format and not abbreviated." }, "rd": { "type": "string", "description": "Route distinguisher of the VRF" }, "aggregate": { "type": "array", "description": "List of VRFs definitions" }, "state": { "type": "string", "description": "Default: present\n\nState of the VRF configuration." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state arguments." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vrf C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vrf interfaces on device it will result in failure." } } }, "aci_interface_selector_to_switch_policy_leaf_profile": { "allOf": [ { "allOf": [ { "not": { "required": [ "interface_selector", "name", "interface_selector_name", "interface_profile_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "leaf_profile", "leaf_profile_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind interface selector profiles to switch policy leaf profiles on Cisco ACI fabrics.", "properties": { "leaf_profile_name": { "type": "string", "description": "Name of the Leaf Profile to which we add a Selector." }, "name": { "type": "string", "description": "Name of Interface Profile Selector to be added and associated with the Leaf Profile." }, "leaf_profile": { "type": "string", "description": "Name of the Leaf Profile to which we add a Selector." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "interface_selector": { "type": "string", "description": "Name of Interface Profile Selector to be added and associated with the Leaf Profile." }, "interface_selector_name": { "type": "string", "description": "Name of Interface Profile Selector to be added and associated with the Leaf Profile." }, "interface_profile_name": { "type": "string", "description": "Name of Interface Profile Selector to be added and associated with the Leaf Profile." } } }, "ucs_wwn_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures WWNNs or WWPN pools on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "description": { "type": "string", "description": "A description of the WWNN or WWPN pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "descr": { "type": "string", "description": "A description of the WWNN or WWPN pool.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "last_addr": { "type": "string", "description": "The last initiator in the Worlde Wide Name (WWN) block.\nThis is the To field in the UCS Manager Add WWN Blocks menu.\nFor WWxN pools, the pool size must be a multiple of ports-per-node + 1.\nFor example, if there are 7 ports per node, the pool size must be a multiple of 8.\nIf there are 63 ports per node, the pool size must be a multiple of 64." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "first_addr": { "type": "string", "description": "The first initiator in the World Wide Name (WWN) block.\nThis is the From field in the UCS Manager Add WWN Blocks menu." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify WWNNs/WWPNs are present and will create if needed.\nIf C(absent), will verify WWNNs/WWPNs are absent and will delete if needed." }, "purpose": { "type": "string", "description": "Specify whether this is a node (WWNN) or port (WWPN) pool.\nOptional if state is absent." }, "order": { "type": "string", "description": "Default: default\n\nThe Assignment Order field.\nThis can be one of the following:\ndefault - Cisco UCS Manager selects a random identity from the pool.\nsequential - Cisco UCS Manager selects the lowest available identity from the pool." }, "name": { "type": "string", "description": "The name of the World Wide Node Name (WWNN) or World Wide Port Name (WWPN) pool.\nThis name can be between 1 and 32 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the WWNN or WWPN pool is created." } } }, "ec2_vpc_dhcp_option_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "dhcp_options_ids", "DhcpOptionIds" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about dhcp options sets in AWS", "properties": { "DhcpOptionIds": { "type": "string", "description": "Default: None\n\nGet details of specific DHCP Option ID\nProvide this value as a list" }, "dhcp_options_ids": { "type": "string", "description": "Default: None\n\nGet details of specific DHCP Option ID\nProvide this value as a list" }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) for possible filters." } } }, "avi_gslbhealthmonitor": { "required": [ "name", "type" ], "type": "object", "description": "This module is used to configure GslbHealthMonitor object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "monitor_port": { "type": "string", "description": "Use this port instead of the port defined for the server in the pool.\nIf the monitor succeeds to this port, the load balanced traffic will still be sent to the port of the server defined within the pool.\nAllowed values are 1-65535.\nSpecial values are 0 - 'use server port'." }, "https_monitor": { "type": "string", "description": "Healthmonitorhttp settings for gslbhealthmonitor." }, "receive_timeout": { "type": "string", "description": "A valid response from the server is expected within the receive timeout window.\nThis timeout must be less than the send interval.\nIf server status is regularly flapping up and down, consider increasing this value.\nAllowed values are 1-300.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "description": { "type": "string", "description": "User defined description for the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "dns_monitor": { "type": "string", "description": "Healthmonitordns settings for gslbhealthmonitor." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "uuid": { "type": "string", "description": "Uuid of the health monitor." }, "name": { "type": "string", "description": "A user friendly name for this health monitor." }, "failed_checks": { "type": "string", "description": "Number of continuous failed health checks before the server is marked down.\nAllowed values are 1-50.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2." }, "tcp_monitor": { "type": "string", "description": "Healthmonitortcp settings for gslbhealthmonitor." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "send_interval": { "type": "string", "description": "Frequency, in seconds, that monitors are sent to a server.\nAllowed values are 1-3600.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5." }, "udp_monitor": { "type": "string", "description": "Healthmonitorudp settings for gslbhealthmonitor." }, "http_monitor": { "type": "string", "description": "Healthmonitorhttp settings for gslbhealthmonitor." }, "external_monitor": { "type": "string", "description": "Healthmonitorexternal settings for gslbhealthmonitor." }, "type": { "type": "string", "description": "Type of the health monitor.\nEnum options - HEALTH_MONITOR_PING, HEALTH_MONITOR_TCP, HEALTH_MONITOR_HTTP, HEALTH_MONITOR_HTTPS, HEALTH_MONITOR_EXTERNAL, HEALTH_MONITOR_UDP,\nHEALTH_MONITOR_DNS, HEALTH_MONITOR_GSLB." }, "successful_checks": { "type": "string", "description": "Number of continuous successful health checks before server is marked up.\nAllowed values are 1-50.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2." } } }, "cs_portforward": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and remove port forwarding rules.", "properties": { "vm_guest_ip": { "type": "string", "description": "VM guest NIC secondary IP address for the port forwarding rule." }, "domain": { "type": "string", "description": "Domain the C(vm) is related to." }, "protocol": { "type": "string", "description": "Default: tcp\n\nProtocol of the port forwarding rule." }, "network": { "type": "string", "description": "Name of the network." }, "open_firewall": { "type": "string", "description": "Whether the firewall rule for public port should be created, while creating the new rule.\nUse M(cs_firewall) for managing firewall rules." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "public_port": { "type": "string", "description": "Start public port for this rule." }, "vm": { "type": "string", "description": "Name of virtual machine which we make the port forwarding rule for.\nRequired if C(state=present)." }, "public_end_port": { "type": "string", "description": "End public port for this rule.\nIf not specified equal C(public_port)." }, "project": { "type": "string", "description": "Name of the project the C(vm) is located in." }, "private_port": { "type": "string", "description": "Start private port for this rule." }, "state": { "type": "string", "description": "Default: present\n\nState of the port forwarding rule." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "vpc": { "type": "string", "description": "Name of the VPC." }, "private_end_port": { "type": "string", "description": "End private port for this rule.\nIf not specified equal C(private_port)." }, "account": { "type": "string", "description": "Account the C(vm) is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "zone": { "type": "string", "description": "Name of the zone in which the virtual machine is in.\nIf not set, default zone is used." }, "ip_address": { "type": "string", "description": "Public IP address the rule is assigned to." } } }, "bigip_config": { "type": "object", "description": "Manages a BIG-IP configuration by allowing TMSH commands that modify running configuration, or merge SCF formatted files into the running configuration. Additionally, this module is of significant importance because it allows you to save your running configuration to disk. Since the F5 module only manipulate running configuration, it is important that you utilize this module to save that running config.", "properties": { "reset": { "description": "Loads the default configuration on the device. If this option is specified, the default configuration will be loaded before any commands or other provided configuration is run.", "$ref": "#/definitions/ansible_truth" }, "verify": { "description": "Validates the specified configuration to see whether they are valid to replace the running configuration. The running configuration will not be changed.", "$ref": "#/definitions/ansible_truth" }, "save": { "description": "The C(save) argument instructs the module to save the running-config to startup-config. This operation is performed after any changes are made to the current running config. If no changes are made, the configuration is still saved to the startup config. This option will always cause the module to return changed.", "$ref": "#/definitions/ansible_truth" }, "merge_content": { "type": "string", "description": "Loads the specified configuration that you want to merge into the running configuration. This is equivalent to using the C(tmsh) command C(load sys config from-terminal merge). If you need to read configuration from a file or template, use Ansible's C(file) or C(template) lookup plugins respectively." } } }, "rax_files_objects": { "required": [ "container" ], "type": "object", "description": "Upload, download, and delete objects in Rackspace Cloud Files", "properties": { "src": { "type": "string", "description": "Source from which to upload files. Used to specify a remote object as a source for an operation, i.e. a file name, \"file1\", or a comma-separated list of remote objects, \"file1,file2,file17\". src and dest are mutually exclusive on remote-only object operations" }, "container": { "type": "string", "description": "The container to use for file object operations." }, "dest": { "type": "string", "description": "The destination of a \"get\" operation; i.e. a local directory, \"/home/user/myfolder\". Used to specify the destination of an operation on a remote object; i.e. a file name, \"file1\", or a comma-separated list of remote objects, \"file1,file2,file17\"" }, "expires": { "type": "string", "description": "Used to set an expiration on a file or folder uploaded to Cloud Files. Requires an integer, specifying expiration in seconds" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "clear_meta": { "type": "string", "description": "Default: no\n\nOptionally clear existing metadata when applying metadata to existing objects. Selecting this option is only appropriate when setting type=meta" }, "meta": { "type": "string", "description": "A hash of items to set as metadata values on an uploaded file or folder" }, "type": { "type": "string", "description": "Default: file\n\nType of object to do work on\nMetadata object or a file object" }, "method": { "type": "string", "description": "Default: get\n\nThe method of operation to be performed. For example, put to upload files to Cloud Files, get to download files from Cloud Files or delete to delete remote objects in Cloud Files" }, "structure": { "type": "string", "description": "Default: yes\n\nUsed to specify whether to maintain nested directory structure when downloading objects from Cloud Files. Setting to false downloads the contents of a container to a single, flat directory" } } }, "win_acl": { "required": [ "user", "rights", "path", "type" ], "type": "object", "description": "Add or remove rights/permissions for a given user or group for the specified src file or folder.", "properties": { "rights": { "type": "string", "description": "Default: none\n\nThe rights/permissions that are to be allowed/denyed for the specified user or group for the given src file or directory. Can be entered as a comma separated list (Ex. \"Modify, Delete, ExecuteFile\"). For more information on the choices see MSDN FileSystemRights Enumeration." }, "inherit": { "type": "string", "description": "Default: For Leaf File, None; For Directory, ContainerInherit, ObjectInherit;\n\nInherit flags on the ACL rules. Can be specified as a comma separated list (Ex. \"ContainerInherit, ObjectInherit\"). For more information on the choices see MSDN InheritanceFlags Enumeration." }, "propagation": { "type": "string", "description": "Default: None\n\nPropagation flag on the ACL rules. For more information on the choices see MSDN PropagationFlags Enumeration." }, "state": { "type": "string", "description": "Default: present\n\nSpecify whether to add C(present) or remove C(absent) the specified access rule" }, "user": { "type": "string", "description": "Default: none\n\nUser or Group to add specified rights to act on src file/folder" }, "path": { "type": "string", "description": "File or Directory" }, "type": { "type": "string", "description": "Default: none\n\nSpecify whether to allow or deny the rights specified" } } }, "infini_vol": { "required": [ "name", "pool" ], "type": "object", "description": "This module creates, deletes or modifies volume on Infinibox.", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies volume when present or removes when absent" }, "name": { "type": "string", "description": "Volume Name" }, "pool": { "type": "string", "description": "Pool that volume will reside on" }, "size": { "type": "string", "description": "Volume size in MB, GB or TB units. See examples." } } }, "ce_static_route": { "required": [ "prefix", "aftype", "mask" ], "type": "object", "description": "Manages the static routes on HUAWEI CloudEngine switches.", "properties": { "description": { "type": "string", "description": "Name of the route. Used with the name parameter on the CLI." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "pref": { "type": "string", "description": "Preference or administrative difference of route (range 1-255)." }, "mask": { "type": "string", "description": "Destination ip mask of static route." }, "destvrf": { "type": "string", "description": "VPN instance of next hop ip address." }, "nhp_interface": { "type": "string", "description": "Next hop interface full name of static route." }, "prefix": { "type": "string", "description": "Destination ip address of static route." }, "next_hop": { "type": "string", "description": "Next hop address of static route." }, "vrf": { "type": "string", "description": "VPN instance of destination ip address." }, "tag": { "type": "string", "description": "Route tag value (numeric)." }, "aftype": { "type": "string", "description": "Destination ip address family type of static route." } } }, "cnos_rollback": { "required": [ "serverpassword", "configType", "protocol", "serverusername", "rcserverip", "rcpath" ], "type": "object", "description": "This module allows you to work with switch configurations. It provides a way to roll back configurations of a switch from a remote server. This is achieved by using startup or running configurations of the target device that were previously backed up to a remote server using FTP, SFTP, TFTP, or SCP. The first step is to create a directory from where the remote server can be reached. The next step is to provide the full file path of the backup configuration's location. Authentication details required by the remote server must be provided as well. By default, this method overwrites the switch's configuration file with the newly downloaded file. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_rollback.html)", "properties": { "serverpassword": { "type": "string", "description": "Specify the password for the server relating to the protocol used." }, "protocol": { "type": "string", "description": "This refers to the protocol used by the network device to interact with the remote server from where to download the backup configuration. The choices are FTP, SFTP, TFTP, or SCP. Any other protocols will result in error. If this parameter is not specified, there is no default value to be used." }, "configType": { "type": "string", "description": "This refers to the type of configuration which will be used for the rolling back process. The choices are the running or startup configurations. There is no default value, so it will result in an error if the input is incorrect." }, "serverusername": { "type": "string", "description": "Specify the username for the server relating to the protocol used." }, "rcserverip": { "type": "string", "description": "This specifies the IP Address of the remote server from where the backup configuration will be downloaded." }, "rcpath": { "type": "string", "description": "This specifies the full file path of the configuration file located on the remote server. In case the relative path is used as the variable value, the root folder for the user of the server needs to be specified." } } }, "ec2_elb_lb": { "required": [ "name", "state" ], "type": "object", "description": "Returns information about the load balancer.\nWill be marked changed when called only if state is changed.", "properties": { "purge_subnets": { "type": "string", "description": "Purge existing subnet on ELB that are not found in subnets" }, "purge_instance_ids": { "type": "string", "description": "Purge existing instance ids on ELB that are not found in instance_ids" }, "connection_draining_timeout": { "type": "string", "description": "Wait a specified timeout allowing connections to drain before terminating an instance" }, "access_logs": { "type": "string", "description": "Default: None\n\nAn associative array of access logs configuration settings (see example)" }, "state": { "type": "string", "description": "Create or destroy the ELB" }, "purge_listeners": { "type": "string", "description": "Default: True\n\nPurge existing listeners on ELB that are not found in listeners" }, "scheme": { "type": "string", "description": "Default: internet-facing\n\nThe scheme to use when creating the ELB. For a private VPC-visible ELB use 'internal'. If you choose to update your scheme with a different value the ELB will be destroyed and recreated. To update scheme you must use the option wait." }, "subnets": { "type": "string", "description": "Default: None\n\nA list of VPC subnets to use when creating ELB. Zones should be empty if using this." }, "health_check": { "type": "string", "description": "Default: None\n\nAn associative array of health check configuration settings (see example)" }, "tags": { "type": "string", "description": "An associative array of tags. To delete all tags, supply an empty dict." }, "instance_ids": { "type": "array", "description": "List of instance ids to attach to this ELB" }, "idle_timeout": { "type": "string", "description": "ELB connections from clients and to servers are timed out after this amount of time" }, "wait_timeout": { "type": "string", "description": "Default: 60\n\nUsed in conjunction with wait. Number of seconds to wait for the elb to be terminated. A maximum of 600 seconds (10 minutes) is allowed." }, "cross_az_load_balancing": { "type": "string", "description": "Default: no\n\nDistribute load across all configured Availability Zones" }, "security_group_ids": { "type": "string", "description": "Default: None\n\nA list of security groups to apply to the elb" }, "purge_zones": { "type": "string", "description": "Purge existing availability zones on ELB that are not found in zones" }, "wait": { "type": "string", "description": "When specified, Ansible will check the status of the load balancer to ensure it has been successfully removed from AWS." }, "zones": { "type": "array", "description": "List of availability zones to enable on this ELB" }, "name": { "type": "string", "description": "The name of the ELB" }, "listeners": { "type": "array", "description": "List of ports/protocols for this ELB to listen on (see example)" }, "security_group_names": { "type": "string", "description": "Default: None\n\nA list of security group names to apply to the elb" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to \"no\", SSL certificates will not be validated for boto versions >= 2.6.0." }, "stickiness": { "type": "string", "description": "An associative array of stickiness policy settings. Policy will be applied to all listeners ( see example )" } } }, "eos_vlan": { "required": [ "vlan_id" ], "type": "object", "description": "This module provides declarative management of VLANs on Arista EOS network devices.", "properties": { "purge": { "type": "string", "description": "Purge VLANs not defined in the I(aggregate) parameter." }, "name": { "type": "string", "description": "Name of the VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces that should be associated to the VLAN. The name of interface is case sensitive and should be in expanded format and not abbreviated." }, "delay": { "type": "string", "description": "Default: 10\n\nDelay the play should wait to check for declarative intent params values." }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vlan C(name) for associated interfaces. The name of interface is case sensitive and should be in expanded format and not abbreviated. If the value in the C(associated_interfaces) does not match with the operational state of vlan interfaces on device it will result in failure." }, "vlan_id": { "type": "string", "description": "ID of the VLAN." } } }, "avi_networksecuritypolicy": { "type": "object", "description": "This module is used to configure NetworkSecurityPolicy object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "rules": { "type": "array", "description": "List of networksecurityrule." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "cloud_config_cksum": { "type": "string", "description": "Checksum of cloud configuration for network sec policy.\nInternally set by cloud connector." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "lightsail": { "required": [ "name" ], "type": "object", "description": "Creates or instances in AWS Lightsail and optionally wait for it to be 'running'.", "properties": { "name": { "type": "string", "description": "Name of the instance" }, "zone": { "type": "string", "description": "AWS availability zone in which to launch the instance. Required when state='present'" }, "blueprint_id": { "type": "string", "description": "ID of the instance blueprint image. Required when state='present'" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long before wait gives up, in seconds." }, "user_data": { "type": "string", "description": "Launch script that can configure the instance with additional data" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "key_pair_name": { "type": "string", "description": "Name of the key pair to use with the instance" }, "bundle_id": { "type": "string", "description": "Bundle of specification info for the instance. Required when state='present'" }, "wait": { "type": "string", "description": "Default: yes\n\nWait for the instance to be in state 'running' before returning. If wait is \"no\" an ip_address may not be returned" } } }, "netapp_e_storage_system": { "required": [ "ssid", "api_password", "api_username", "state", "api_url", "controller_addresses" ], "type": "object", "description": "Manage the arrays accessible via a NetApp Web Services Proxy for NetApp E-series storage arrays.", "properties": { "meta_tags": { "type": "string", "description": "Default: None\n\nOptional meta tags to associate to this storage system" }, "ssid": { "type": "string", "description": "The ID of the array to manage. This value must be unique for each array." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "array_wwn": { "type": "string", "description": "The WWN of the array to manage. Only necessary if in-band managing multiple arrays on the same agent host. Mutually exclusive of controller_addresses parameter." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "state": { "type": "string", "description": "Whether the specified array should be configured on the Web Services Proxy or not." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "controller_addresses": { "type": "string", "description": "The list addresses for the out-of-band management adapter or the agent host. Mutually exclusive of array_wwn parameter." }, "enable_trace": { "type": "string", "description": "Enable trace logging for SYMbol calls to the storage system." }, "array_password": { "type": "string", "description": "The management password of the array to manage, if set." }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." } } }, "aci_tenant_span_dst_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "dst_group", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "dst_group" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage SPAN destination groups on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the SPAN destination group." }, "descr": { "type": "string", "description": "The description of the SPAN destination group." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "dst_group": { "type": "string", "description": "The name of the SPAN destination group." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "The description of the SPAN destination group." } } }, "ce_dldp": { "type": "object", "description": "Manages global DLDP configuration on HUAWEI CloudEngine switches.", "properties": { "reset": { "type": "string", "description": "Specify whether reset DLDP state of disabled interfaces." }, "enable": { "type": "string", "description": "Set global DLDP enable state." }, "auth_pwd": { "type": "string", "description": "Specifies authentication password. The value is a string of 1 to 16 case-sensitive plaintexts or 24/32/48/108/128 case-sensitive encrypted characters. The string excludes a question mark (?)." }, "time_internal": { "type": "string", "description": "Specifies the interval for sending Advertisement packets. The value is an integer ranging from 1 to 100, in seconds. The default interval for sending Advertisement packets is 5 seconds." }, "auth_mode": { "type": "string", "description": "Specifies authentication algorithm of DLDP." }, "work_mode": { "type": "string", "description": "Set global DLDP work-mode." } } }, "iso_extract": { "allOf": [ { "allOf": [ { "not": { "required": [ "image", "path", "src" ], "type": "object" } }, { "oneOf": [ { "required": [ "image" ], "type": "object" }, { "required": [ "path" ], "type": "object" }, { "required": [ "src" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "force", "thirsty" ], "type": "object" } } ] } ], "type": "object", "description": "This module has two possible ways of operation.\nIf 7zip is installed on the system, this module extracts files from an ISO into a temporary directory and copies files to a given destination, if needed.\nIf the user has mount-capabilities (CAP_SYS_ADMIN on Linux) this module mounts the ISO image to a temporary location, and copies files to a given destination, if needed.", "properties": { "files": { "type": "string", "description": "A list of files to extract from the image.\nExtracting directories does not work." }, "src": { "type": "string", "description": "The ISO image to extract files from." }, "executable": { "type": "string", "description": "Default: 7z\n\nThe path to the C(7z) executable to use for extracting files from the ISO." }, "force": { "description": "Default: yes\n\nIf C(yes), which will replace the remote file when contents are different than the source.\nIf C(no), the file will only be extracted and copied if the destination does not already exist.", "$ref": "#/definitions/ansible_truth" }, "thirsty": { "description": "Default: yes\n\nIf C(yes), which will replace the remote file when contents are different than the source.\nIf C(no), the file will only be extracted and copied if the destination does not already exist.", "$ref": "#/definitions/ansible_truth" }, "dest": { "type": "string", "description": "The destination directory to extract files to." }, "image": { "type": "string", "description": "The ISO image to extract files from." }, "path": { "type": "string", "description": "The ISO image to extract files from." } } }, "aws_batch_compute_environment": { "required": [ "subnets", "instance_types", "maxv_cpus", "security_group_ids", "instance_role", "minv_cpus", "compute_resource_type", "state", "service_role", "compute_environment_name", "type" ], "type": "object", "description": "This module allows the management of AWS Batch Compute Environments. It is idempotent and supports \"Check\" mode. Use module M(batch_compute_environment) to manage the compute environment, M(batch_job_queue) to manage job queues, M(batch_job_definition) to manage job definitions.", "properties": { "subnets": { "type": "string", "description": "The VPC subnets into which the compute resources are launched." }, "desiredv_cpus": { "type": "string", "description": "The desired number of EC2 vCPUS in the compute environment." }, "minv_cpus": { "type": "string", "description": "The minimum number of EC2 vCPUs that an environment should maintain." }, "tags": { "type": "string", "description": "Key-value pair tags to be applied to resources that are launched in the compute environment." }, "compute_resource_type": { "type": "string", "description": "The type of compute resource." }, "instance_types": { "type": "string", "description": "The instance types that may be launched." }, "bid_percentage": { "type": "string", "description": "The minimum percentage that a Spot Instance price must be when compared with the On-Demand price for that instance type before instances are launched. For example, if your bid percentage is 20%, then the Spot price must be below 20% of the current On-Demand price for that EC2 instance." }, "compute_environment_state": { "type": "string", "description": "Default: ENABLED\n\nThe state of the compute environment. If the state is ENABLED, then the compute environment accepts jobs from a queue and can scale out automatically based on queues." }, "image_id": { "type": "string", "description": "The Amazon Machine Image (AMI) ID used for instances launched in the compute environment." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "maxv_cpus": { "type": "string", "description": "The maximum number of EC2 vCPUs that an environment can reach." }, "instance_role": { "type": "string", "description": "The Amazon ECS instance role applied to Amazon EC2 instances in a compute environment." }, "service_role": { "type": "string", "description": "The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf." }, "compute_environment_name": { "type": "string", "description": "The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, and underscores are allowed." }, "security_group_ids": { "type": "string", "description": "The EC2 security groups that are associated with instances launched in the compute environment." }, "type": { "type": "string", "description": "The type of the compute environment." }, "ec2_key_pair": { "type": "string", "description": "The EC2 key pair that is used for instances launched in the compute environment." }, "spot_iam_fleet_role": { "type": "string", "description": "The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment." } } }, "ovirt_host_pm": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "host" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "host" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "encrypt_options", "encrypt" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage power management of hosts in oVirt/RHV.", "properties": { "username": { "type": "string", "description": "Username to be used to connect to power management interface." }, "slot": { "type": "string", "description": "Power management slot." }, "encrypt_options": { "type": "string", "description": "If (true) options will be encrypted when send to agent." }, "encrypt": { "type": "string", "description": "If (true) options will be encrypted when send to agent." }, "name": { "type": "string", "description": "Name of the host to manage." }, "state": { "type": "string", "description": "Default: present\n\nShould the host be present/absent." }, "port": { "type": "string", "description": "Power management interface port." }, "host": { "type": "string", "description": "Name of the host to manage." }, "options": { "type": "object", "description": "Dictionary of additional fence agent options.\nAdditional information about options can be found at U(https://fedorahosted.org/cluster/wiki/FenceArguments)." }, "address": { "type": "string", "description": "Address of the power management interface." }, "password": { "type": "string", "description": "Password of the user specified in C(username) parameter." }, "type": { "type": "string", "description": "Type of the power management. oVirt/RHV predefined values are I(drac5), I(ipmilan), I(rsa), I(bladecenter), I(alom), I(apc), I(apc_snmp), I(eps), I(wti), I(rsb), I(cisco_ucs), I(drac7), I(hpblade), I(ilo), I(ilo2), I(ilo3), I(ilo4), I(ilo_ssh), but user can have defined custom type." }, "order": { "type": "string", "description": "Integer value specifying, by default it's added at the end." } } }, "template": { "required": [ "dest", "src" ], "type": "object", "description": "Templates are processed by the Jinja2 templating language (U(http://jinja.pocoo.org/docs/)) - documentation on the template formatting can be found in the Template Designer Documentation (U(http://jinja.pocoo.org/docs/templates/)).\nSix additional variables can be used in templates: C(ansible_managed) (configurable via the C(defaults) section of C(ansible.cfg)) contains a string which can be used to describe the template name, host, modification time of the template file and the owner uid, C(template_host) contains the node name of the template's machine, C(template_uid) the owner, C(template_path) the absolute path of the template, C(template_fullpath) is the absolute path of the template, and C(template_run_date) is the date that the template was rendered. Note that including a string that uses a date in the template will result in the template being marked 'changed' each time.", "properties": { "dest": { "type": "string", "description": "Location to render the template to on the remote machine." }, "src": { "type": "string", "description": "Path of a Jinja2 formatted template on the Ansible controller. This can be a relative or absolute path." }, "force": { "type": "string", "description": "Default: yes\n\nthe default is C(yes), which will replace the remote file when contents are different than the source. If C(no), the file will only be transferred if the destination does not exist." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." } } }, "azure_rm_keyvault": { "required": [ "resource_group", "vault_name" ], "type": "object", "description": "Create, update and delete instance of Key Vault.", "properties": { "sku": { "type": "string", "description": "SKU details" }, "resource_group": { "type": "string", "description": "The name of the Resource Group to which the server belongs." }, "recover_mode": { "description": "Create vault in recovery mode.", "$ref": "#/definitions/ansible_truth" }, "location": { "type": "string", "description": "Resource location. If not set, location from the resource group will be used as default." }, "enabled_for_disk_encryption": { "description": "Property to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys.", "$ref": "#/definitions/ansible_truth" }, "enabled_for_template_deployment": { "description": "Property to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the KeyVault. Use 'present' to create or update an KeyVault and 'absent' to delete it." }, "vault_name": { "type": "string", "description": "Name of the vault" }, "enabled_for_deployment": { "description": "Property to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault.", "$ref": "#/definitions/ansible_truth" }, "access_policies": { "type": "string", "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." }, "enable_soft_delete": { "description": "Property to specify whether the soft delete functionality is enabled for this key vault.", "$ref": "#/definitions/ansible_truth" }, "vault_tenant": { "type": "string", "description": "The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault." } } }, "tower_inventory": { "required": [ "organization", "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower inventories. See U(https://www.ansible.com/tower) for an overview.", "properties": { "organization": { "type": "string", "description": "Organization the inventory belongs to." }, "variables": { "type": "string", "description": "Inventory variables. Use '@' to get from file." }, "description": { "type": "string", "description": "The description to use for the inventory." }, "name": { "type": "string", "description": "The name to use for the inventory." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." } } }, "ip_netns": { "type": "object", "description": "Create or delete network namespaces using the ip command.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the namespace should exist" }, "name": { "type": "string", "description": "Name of the namespace" } } }, "tower_job_wait": { "required": [ "job_id" ], "type": "object", "description": "Wait for Ansible Tower job to finish and report success or failure. See U(https://www.ansible.com/tower) for an overview.", "properties": { "min_interval": { "type": "string", "description": "Default: 1\n\nMinimum interval in seconds, to request an update from Tower." }, "max_interval": { "type": "string", "description": "Default: 30\n\nMaximum interval in seconds, to request an update from Tower." }, "job_id": { "type": "string", "description": "ID of the job to monitor." }, "timeout": { "type": "string", "description": "Maximum time in seconds to wait for a job to finish." } } }, "ovirt_tags": { "required": [ "name" ], "type": "object", "description": "This module manage tags in oVirt/RHV. It can also manage assignments of those tags to entities.", "properties": { "description": { "type": "string", "description": "Description of the tag to manage." }, "parent": { "type": "string", "description": "Name of the parent tag." }, "state": { "type": "string", "description": "Default: present\n\nShould the tag be present/absent/attached/detached.\nC(Note): I(attached) and I(detached) states are supported since version 2.4." }, "hosts": { "type": "array", "description": "List of the hosts names, which should have assigned this tag." }, "vms": { "type": "array", "description": "List of the VMs names, which should have assigned this tag." }, "name": { "type": "string", "description": "Name of the tag to manage." } } }, "ovirt_cluster_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV clusters.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search cluster X from datacenter Y use following pattern: name=X and datacenter=Y" } } }, "vyos_lldp_interface": { "type": "object", "description": "This module provides declarative management of LLDP interfaces configuration on VyOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of interfaces LLDP should be configured on." }, "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration." }, "name": { "type": "string", "description": "Name of the interface LLDP should be configured on." } } }, "elasticache_subnet_group": { "required": [ "state", "name" ], "type": "object", "description": "Creates, modifies, and deletes Elasticache subnet groups. This module has a dependency on python-boto >= 2.5.", "properties": { "subnets": { "type": "array", "description": "List of subnet IDs that make up the Elasticache subnet group." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether the subnet should be present or absent." }, "name": { "type": "string", "description": "Database subnet group identifier." }, "description": { "type": "string", "description": "Elasticache subnet group description. Only set when a new group is added." } } }, "vmware_host": { "required": [ "cluster_name", "datacenter_name", "esxi_hostname", "esxi_password", "esxi_username" ], "type": "object", "description": "This module can be used to add/remove an ESXi host to/from vCenter", "properties": { "datacenter_name": { "type": "string", "description": "Name of the datacenter to add the host" }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to manage" }, "esxi_username": { "type": "string", "description": "ESXi username" }, "cluster_name": { "type": "string", "description": "Name of the cluster to add the host" }, "state": { "type": "string", "description": "Default: present\n\nAdd or remove the host" }, "esxi_password": { "type": "string", "description": "ESXi password" } } }, "ce_snmp_location": { "required": [ "location" ], "type": "object", "description": "Manages SNMP location configurations on HUAWEI CloudEngine switches.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "location": { "type": "string", "description": "Location information." } } }, "webfaction_domain": { "required": [ "login_name", "name", "login_password" ], "type": "object", "description": "Add or remove domains or subdomains on a Webfaction host. Further documentation at http://github.com/quentinsf/ansible-webfaction.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the domain should exist" }, "login_password": { "type": "string", "description": "The webfaction password to use" }, "login_name": { "type": "string", "description": "The webfaction account to use" }, "name": { "type": "string", "description": "The name of the domain" }, "subdomains": { "type": "string", "description": "Any subdomains to create." } } }, "ipinfoio_facts": { "type": "object", "description": "Gather IP geolocation facts of a host's IP address using ipinfo.io API", "properties": { "http_agent": { "type": "string", "description": "Default: ansible-ipinfoio-module/0.0.1\n\nSet http user agent" }, "timeout": { "type": "string", "description": "Default: 10\n\nHTTP connection timeout in seconds" } } }, "grafana_dashboard": { "required": [ "grafana_url", "state" ], "type": "object", "description": "Create, update, delete, export Grafana dashboards via API.", "properties": { "grafana_user": { "type": "string", "description": "Default: admin\n\nThe Grafana API user." }, "org_id": { "type": "string", "description": "Default: 1\n\nThe Grafana Organisation ID where the dashboard will be imported / exported.\nNot used when I(grafana_api_key) is set, because the grafana_api_key only belong to one organisation.." }, "state": { "type": "string", "description": "Default: present\n\nState of the dashboard." }, "grafana_url": { "type": "string", "description": "The Grafana URL." }, "grafana_api_key": { "type": "string", "description": "The Grafana API key.\nIf set, I(grafana_user) and I(grafana_password) will be ignored." }, "grafana_password": { "type": "string", "description": "Default: admin\n\nThe Grafana API password." }, "path": { "type": "string", "description": "The path to the json file containing the Grafana dashboard to import or export." }, "message": { "type": "string", "description": "Set a commit message for the version history.\nOnly used when C(state) is C(present)." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated.\nThis should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "slug": { "type": "string", "description": "slug of the dashboard. It's the friendly url name of the dashboard.\nWhen C(state) is C(present), this parameter can override the slug in the meta section of the json file.\nIf you want to import a json dashboard exported directly from the interface (not from the api), you have to specify the slug parameter because there is no meta section in the exported json." }, "overwrite": { "description": "Default: no\n\nOverride existing dashboard when state is present.", "$ref": "#/definitions/ansible_truth" } } }, "webfaction_mailbox": { "required": [ "mailbox_password", "login_name", "mailbox_name", "login_password" ], "type": "object", "description": "Add or remove mailboxes on a Webfaction account. Further documentation at http://github.com/quentinsf/ansible-webfaction.", "properties": { "mailbox_password": { "type": "string", "description": "The password for the mailbox" }, "state": { "type": "string", "description": "Default: present\n\nWhether the mailbox should exist" }, "login_name": { "type": "string", "description": "The webfaction account to use" }, "mailbox_name": { "type": "string", "description": "The name of the mailbox" }, "login_password": { "type": "string", "description": "The webfaction password to use" } } }, "avi_vsdatascriptset": { "required": [ "name" ], "type": "object", "description": "This module is used to configure VSDataScriptSet object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "datascript": { "type": "string", "description": "Datascripts to execute." }, "uuid": { "type": "string", "description": "Uuid of the virtual service datascript collection." }, "pool_refs": { "type": "string", "description": "Uuid of pools that could be referred by vsdatascriptset objects.\nIt is a reference to an object of type pool." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "description": { "type": "string", "description": "User defined description for the object." }, "pool_group_refs": { "type": "string", "description": "Uuid of pool groups that could be referred by vsdatascriptset objects.\nIt is a reference to an object of type poolgroup." }, "string_group_refs": { "type": "string", "description": "Uuid of string groups that could be referred by vsdatascriptset objects.\nIt is a reference to an object of type stringgroup." }, "created_by": { "type": "string", "description": "Creator name.\nField introduced in 17.1.11,17.2.4." }, "ipgroup_refs": { "type": "string", "description": "Uuid of ip groups that could be referred by vsdatascriptset objects.\nIt is a reference to an object of type ipaddrgroup." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name for the virtual service datascript collection." } } }, "sns_topic": { "required": [ "name" ], "type": "object", "description": "The C(sns_topic) module allows you to create, delete, and manage subscriptions for AWS SNS topics.", "properties": { "display_name": { "type": "string", "description": "Default: None\n\nDisplay name of the topic" }, "name": { "type": "string", "description": "The name or ARN of the SNS topic to converge" }, "subscriptions": { "type": "array", "description": "List of subscriptions to apply to the topic. Note that AWS requires subscriptions to be confirmed, so you will need to confirm any new subscriptions." }, "delivery_policy": { "type": "string", "description": "Default: None\n\nDelivery policy to apply to the SNS topic" }, "state": { "type": "string", "description": "Default: present\n\nWhether to create or destroy an SNS topic" }, "policy": { "type": "string", "description": "Default: None\n\nPolicy to apply to the SNS topic" }, "purge_subscriptions": { "type": "string", "description": "Default: True\n\nWhether to purge any subscriptions not listed here. NOTE: AWS does not allow you to purge any PendingConfirmation subscriptions, so if any exist and would be purged, they are silently skipped. This means that somebody could come back later and confirm the subscription. Sorry. Blame Amazon." } } }, "sensu_silence": { "required": [ "state", "subscription" ], "type": "object", "description": "Create and clear (delete) a silence entries via the Sensu API for subscriptions and checks.", "properties": { "creator": { "type": "string", "description": "Specifies the entity responsible for this entry." }, "url": { "type": "string", "description": "Default: http://127.0.01:4567\n\nSpecifies the URL of the Sensu monitoring host server." }, "expire_on_resolve": { "description": "If specified as true, the silence entry will be automatically cleared once the condition it is silencing is resolved.", "$ref": "#/definitions/ansible_truth" }, "reason": { "type": "string", "description": "If specified, this free-form string is used to provide context or rationale for the reason this silence entry was created." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies to create or clear (delete) a silence entry via the Sensu API" }, "expire": { "type": "string", "description": "If specified, the silence entry will be automatically cleared after this number of seconds." }, "check": { "type": "string", "description": "Specifies the check which the silence entry applies to." }, "subscription": { "type": "string", "description": "Specifies the subscription which the silence entry applies to.\nTo create a silence entry for a client append C(client:) to client name. Example - C(client:server1.example.dev)" } } }, "win_dotnet_ngen": { "type": "object", "description": "After .NET framework is installed/updated, Windows will probably want to recompile things to optimise for the host.\nThis happens via scheduled task, usually at some inopportune time.\nThis module allows you to run this task on your own schedule, so you incur the CPU hit at some more convenient and controlled time.\nhttp://blogs.msdn.com/b/dotnet/archive/2013/08/06/wondering-why-mscorsvw-exe-has-high-cpu-usage-you-can-speed-it-up.aspx", "properties": {} }, "nxos_mtu": { "type": "object", "description": "Manages MTU settings on Nexus switch.", "properties": { "interface": { "type": "string", "description": "Full name of interface, i.e. Ethernet1/1." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "sysmtu": { "type": "string", "description": "System jumbo MTU. Must be an even number between 576 and 9216." }, "mtu": { "type": "string", "description": "MTU for a specific interface. Must be an even number between 576 and 9216." } } }, "rpm_key": { "required": [ "key" ], "type": "object", "description": "Adds or removes (rpm --import) a gpg key to your rpm database.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIf the key will be imported or removed from the rpm db." }, "validate_certs": { "description": "Default: yes\n\nIf C(no) and the C(key) is a url starting with https, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "key": { "type": "string", "description": "Key that will be modified. Can be a url, a file, or a keyid if the key already exists in the database." } } }, "win_robocopy": { "required": [ "dest", "src" ], "type": "object", "description": "Synchronizes the contents of two directories on the remote machine.\nUnder the hood this just calls out to RoboCopy, since that should be available on most modern Windows Systems.", "properties": { "dest": { "type": "string", "description": "Destination file/directory to sync (Will receive contents of src)." }, "src": { "type": "string", "description": "Source file/directory to sync." }, "recurse": { "description": "Default: no\n\nIncludes all subdirectories (Toggles the C(/e) flag to RoboCopy).\nIf C(flags) is set, this will be ignored.", "$ref": "#/definitions/ansible_truth" }, "purge": { "description": "Default: no\n\nDeletes any files/directories found in the destination that do not exist in the source.\nToggles the C(/purge) flag to RoboCopy. If C(flags) is set, this will be ignored.", "$ref": "#/definitions/ansible_truth" }, "flags": { "type": "string", "description": "Directly supply Robocopy flags. If set, C(purge) and C(recurse) will be ignored." } } }, "netact_cm_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "typeOption", "type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "operation", "op" ], "type": "object" } }, { "oneOf": [ { "required": [ "operation" ], "type": "object" }, { "required": [ "op" ], "type": "object" } ] } ] } ], "type": "object", "description": "netact_cm_command can be used to run various configuration management operations. This module requires that the target hosts have Nokia NetAct network management system installed. Module will access the Configurator command line interface in NetAct to upload network configuration to NetAct, run configuration export, plan import and configuration provision operations To set the scope of the operation, define Distinguished Name (DN) or Working Set (WS) or Maintenance Region (MR) as input", "properties": { "DN": { "type": "string", "description": "Sets the exact scope of the operation in form of a list of managed object Distinguished Names (DN) in the network. A single DN or a list of DNs can be given (comma separated list without spaces). Alternatively, if DN or a list of DNs is not given, working set (WS) or Maintenance Region (MR) must be provided as parameter to set the scope of operation." }, "planName": { "type": "string", "description": "Specifies a plan name." }, "verbose": { "type": "string", "description": "NetAct Configurator will print more info" }, "backupPlanName": { "type": "string", "description": "Specifies a backup plan name" }, "opsName": { "type": "string", "description": "user specified operation name" }, "fileName": { "type": "string", "description": "Specifies a file name. Valid for Import and Export operations." }, "typeOption": { "type": "string", "description": "Specifies the type of the export operation." }, "WS": { "type": "string", "description": "Sets the scope of the operation to use one or more pre-defined working sets (WS) in NetAct. A working set contains network elements selected by user according to defined criteria. A single WS name, or multiple WSs can be provided (comma-separated list without spaces). Alternatively, if a WS name or a list of WSs is not given, Distinguished Name (DN) or Maintenance Region(MR) must be provided as parameter to set the scope of operation." }, "MR": { "type": "string", "description": "Sets the scope of the operation to network elements assigned to a Maintenance Region (MR) Value can be set as MR IDs including the Maintenance Region Collection (MRC) information (for example MRC-FIN1/MR-Hel). Multiple MRs can be given (comma-separated list without spaces) The value of this parameter is searched through MR IDs under given MRC. If there is no match, then it is searched from all MR names. Alternatively, if MR ID or a list or MR IDs is not given, Distinguished Name (DN) or Working Set (WS) must be provided as parameter to set the scope of operation." }, "inputFile": { "type": "string", "description": "Specifies full path to plan file location for the import operation. This parameter (inputFile) or the fileName parameter must be filled. If both are present then the inputFile is used." }, "extra_opts": { "type": "string", "description": "Extra options to be set for operations. Check Configuration Management > Configuration Management Operating Procedures > Command Line Operations in Nokia NetAct user documentation for further information for extra options." }, "operation": { "type": "string", "description": "Supported operations allow user to upload actual configuration from the network, to import and provision prepared plans, or export reference or actual configuration for planning purposes. Provision_Mass_Modification enables provisioning the same parameters to multiple network elements. This operation supports modifications only to one object class at a time. With this option NetAct Configurator creates and provisions a plan to the network with the given scope and options." }, "createBackupPlan": { "description": "Specifies if backup plan generation is enabled.", "$ref": "#/definitions/ansible_truth" }, "type": { "type": "string", "description": "Specifies the type of the export operation." }, "fileFormat": { "type": "string", "description": "Indicates file format." }, "op": { "type": "string", "description": "Supported operations allow user to upload actual configuration from the network, to import and provision prepared plans, or export reference or actual configuration for planning purposes. Provision_Mass_Modification enables provisioning the same parameters to multiple network elements. This operation supports modifications only to one object class at a time. With this option NetAct Configurator creates and provisions a plan to the network with the given scope and options." } } }, "ucs_vhba_template": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures vHBA templates on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "redundancy_type": { "type": "string", "description": "Default: none\n\nThe Redundancy Type used for template pairing from the Primary or Secondary redundancy template.\nprimary — Creates configurations that can be shared with the Secondary template.\nAny other shared changes on the Primary template are automatically synchronized to the Secondary template.\nsecondary — All shared configurations are inherited from the Primary template.\nnone - Legacy vHBA template behavior. Select this option if you do not want to use redundancy." }, "name": { "type": "string", "description": "The name of the virtual HBA template.\nThis name can be between 1 and 16 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the template is created." }, "stats_policy": { "type": "string", "description": "Default: default\n\nThe statistics collection policy that is associated with vHBAs created from this template." }, "description": { "type": "string", "description": "A user-defined description of the template.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "template_type": { "type": "string", "description": "Default: initial-template\n\nThe Template Type field.\nThis can be one of the following:\ninitial-template — vHBAs created from this template are not updated if the template changes.\nupdating-template - vHBAs created from this template are updated if the template changes." }, "max_data": { "type": "string", "description": "Default: 2048\n\nThe Max Data Field Size field.\nThe maximum size of the Fibre Channel frame payload bytes that the vHBA supports.\nEnter an string between '256' and '2112'." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify vHBA templates are present and will create if needed.\nIf C(absent), will verify vHBA templates are absent and will delete if needed." }, "wwpn_pool": { "type": "string", "description": "Default: default\n\nThe WWPN pool that a vHBA created from this template uses to derive its WWPN address." }, "descr": { "type": "string", "description": "A user-defined description of the template.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "pin_group": { "type": "string", "description": "The SAN pin group that is associated with vHBAs created from this template." }, "qos_policy": { "type": "string", "description": "The QoS policy that is associated with vHBAs created from this template." }, "vsan": { "type": "string", "description": "Default: default\n\nThe VSAN to associate with vHBAs created from this template." }, "fabric": { "type": "string", "description": "Default: A\n\nThe Fabric ID field.\nThe name of the fabric interconnect that vHBAs created with this template are associated with." } } }, "github_issue": { "required": [ "repo", "organization", "issue" ], "type": "object", "description": "View GitHub issue for a given repository.", "properties": { "repo": { "type": "string", "description": "Default: none\n\nName of repository from which issue needs to be retrieved." }, "organization": { "type": "string", "description": "Default: none\n\nName of the GitHub organization in which the repository is hosted." }, "issue": { "type": "string", "description": "Default: none\n\nIssue number for which information is required." }, "action": { "type": "string", "description": "Default: get_status\n\nGet various details about issue depending upon action specified." } } }, "vmware_vmkernel_facts": { "type": "object", "description": "This module can be used to gather VMKernel facts about an ESXi host from given ESXi hostname or cluster name.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nVMKernel facts about each ESXi server will be returned for the given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nVMKernel facts about this ESXi server will be returned.\nIf C(cluster_name) is not given, this parameter is required." } } }, "ovirt_hosts": { "allOf": [ { "allOf": [ { "not": { "required": [ "public_key", "ssh_public_key" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage hosts in oVirt/RHV", "properties": { "comment": { "type": "string", "description": "Description of the host." }, "check_upgrade": { "type": "string", "description": "Default: True\n\nIf I(true) and C(state) is I(upgraded) run check for upgrade action before executing upgrade action." }, "password": { "type": "string", "description": "Password of the root. It's required in case C(public_key) is set to I(False)." }, "activate": { "type": "string", "description": "Default: True\n\nIf C(state) is I(present) activate the host.\nThis parameter is good to disable, when you don't want to change the state of host when using I(present) C(state)." }, "force": { "type": "string", "description": "If True host will be forcibly moved to desired state." }, "name": { "type": "string", "description": "Name of the host to manage." }, "public_key": { "type": "string", "description": "I(True) if the public key should be used to authenticate to host.\nIt's required in case C(password) is not set." }, "spm_priority": { "type": "string", "description": "SPM priority of the host. Integer value from 1 to 10, where higher number means higher priority." }, "iscsi": { "type": "string", "description": "If C(state) is I(iscsidiscover) it means that the iscsi attribute is being used to discover targets\nIf C(state) is I(iscsilogin) it means that the iscsi attribute is being used to login to the specified targets passed as part of the iscsi attribute" }, "hosted_engine": { "type": "string", "description": "If I(deploy) it means this host should deploy also hosted engine components.\nIf I(undeploy) it means this host should un-deploy hosted engine components and this host will not function as part of the High Availability cluster." }, "power_management_enabled": { "type": "string", "description": "Enable or disable power management of the host.\nFor more comprehensive setup of PM use C(ovirt_host_pm) module." }, "cluster": { "type": "string", "description": "Name of the cluster, where host should be created." }, "state": { "type": "string", "description": "Default: present\n\nState which should a host to be in after successful completion.\nI(iscsilogin) and I(iscsidiscover) are supported since version 2.4." }, "ssh_public_key": { "type": "string", "description": "I(True) if the public key should be used to authenticate to host.\nIt's required in case C(password) is not set." }, "kernel_params": { "type": "array", "description": "List of kernel boot parameters.\nFollowing are most common kernel parameters used for host:\nHostdev Passthrough & SR-IOV: intel_iommu=on\nNested Virtualization: kvm-intel.nested=1\nUnsafe Interrupts: vfio_iommu_type1.allow_unsafe_interrupts=1\nPCI Reallocation: pci=realloc\nC(Note:)\nModifying kernel boot parameters settings can lead to a host boot failure. Please consult the product documentation before doing any changes.\nKernel boot parameters changes require host deploy and restart. The host needs to be I(reinstalled) suceesfully and then to be I(rebooted) for kernel boot parameters to be applied." }, "address": { "type": "string", "description": "Host address. It can be either FQDN (preferred) or IP address." }, "override_iptables": { "type": "string", "description": "If True host iptables will be overridden by host deploy script.\nNote that C(override_iptables) is I(false) by default in oVirt/RHV." }, "kdump_integration": { "type": "string", "description": "Default: enabled\n\nSpecify if host will have enabled Kdump integration." }, "override_display": { "type": "string", "description": "Override the display address of all VMs on this host with specified address." } } }, "docker_login": { "allOf": [ { "allOf": [ { "not": { "required": [ "config_path", "self.config_path", "dockercfg_path" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "reauthorize", "reauth" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "registry_url", "registry", "url" ], "type": "object" } } ] } ], "type": "object", "description": "Provides functionality similar to the \"docker login\" command.\nAuthenticate with a docker registry and add the credentials to your local Docker config file. Adding the credentials to the config files allows future connections to the registry using tools such as Ansible's Docker modules, the Docker CLI and docker-py without needing to provide credentials.\nRunning in check mode will perform the authentication without updating the config file.", "properties": { "username": { "type": "string", "description": "The username for the registry account" }, "config_path": { "type": "string", "description": "Default: ~/.docker/config.json\n\nCustom path to the Docker CLI configuration file." }, "url": { "type": "string", "description": "Default: https://index.docker.io/v1/\n\nThe registry URL." }, "registry_url": { "type": "string", "description": "Default: https://index.docker.io/v1/\n\nThe registry URL." }, "reauth": { "type": "string", "description": "Refresh exiting authentication found in the configuration file." }, "state": { "type": "string", "description": "Default: present\n\nThis controls the current state of the user. C(present) will login in a user, C(absent) will log them out.\nTo logout you only need the registry server, which defaults to DockerHub.\nBefore 2.1 you could ONLY log in.\ndocker does not support 'logout' with a custom config file." }, "registry": { "type": "string", "description": "Default: https://index.docker.io/v1/\n\nThe registry URL." }, "dockercfg_path": { "type": "string", "description": "Default: ~/.docker/config.json\n\nCustom path to the Docker CLI configuration file." }, "self.config_path": { "type": "string", "description": "Default: ~/.docker/config.json\n\nCustom path to the Docker CLI configuration file." }, "password": { "type": "string", "description": "The plaintext password for the registry account" }, "email": { "type": "string", "description": "Default: None\n\nThe email address for the registry account. NOTE: private registries may not require this, but Docker Hub requires it." }, "reauthorize": { "type": "string", "description": "Refresh exiting authentication found in the configuration file." } } }, "nxos_bgp_af": { "required": [ "afi", "safi", "vrf", "asn" ], "type": "object", "description": "Manages BGP Address-family configurations on NX-OS switches.", "properties": { "dampening_max_suppress_time": { "type": "string", "description": "Specify max suppress time for route-flap dampening stable route. Valid values are integer and keyword 'default'." }, "additional_paths_send": { "type": "string", "description": "Enables the send capability of additional paths for all of the neighbors under this address family for which the capability has not been disabled." }, "additional_paths_install": { "type": "string", "description": "Install a backup path into the forwarding table and provide prefix independent convergence (PIC) in case of a PE-CE link failure." }, "dampening_state": { "type": "string", "description": "Enable/disable route-flap dampening." }, "additional_paths_receive": { "type": "string", "description": "Enables the receive capability of additional paths for all of the neighbors under this address family for which the capability has not been disabled." }, "suppress_inactive": { "type": "string", "description": "Advertises only active routes to peers." }, "dampening_routemap": { "type": "string", "description": "Specify route-map for route-flap dampening. Valid values are a string defining the name of the route-map." }, "networks": { "type": "string", "description": "Networks to configure. Valid value is a list of network prefixes to advertise. The list must be in the form of an array. Each entry in the array must include a prefix address and an optional route-map. For example [['10.0.0.0/16', 'routemap_LA'], ['192.168.1.1', 'Chicago'], ['192.168.2.0/24'], ['192.168.3.0/24', 'routemap_NYC']]." }, "distance_local": { "type": "string", "description": "Sets the administrative distance for local BGP routes. Valid values are Integer or keyword 'default'." }, "advertise_l2vpn_evpn": { "type": "string", "description": "Advertise evpn routes." }, "afi": { "type": "string", "description": "Address Family Identifier." }, "default_information_originate": { "type": "string", "description": "Default information originate." }, "distance_ibgp": { "type": "string", "description": "Sets the administrative distance for iBGP routes. Valid values are Integer or keyword 'default'." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "next_hop_route_map": { "type": "string", "description": "Configure a route-map for valid nexthops. Valid values are a string defining the name of the route-map." }, "table_map_filter": { "type": "string", "description": "Filters routes rejected by the route-map and does not download them to the RIB." }, "safi": { "type": "string", "description": "Sub Address Family Identifier." }, "default_metric": { "type": "string", "description": "Sets default metrics for routes redistributed into BGP. Valid values are Integer or keyword 'default'" }, "client_to_client": { "type": "string", "description": "Configure client-to-client route reflection." }, "dampen_igp_metric": { "type": "string", "description": "Specify dampen value for IGP metric-related changes, in seconds. Valid values are integer and keyword 'default'." }, "additional_paths_selection": { "type": "string", "description": "Configures the capability of selecting additional paths for a prefix. Valid values are a string defining the name of the route-map." }, "maximum_paths_ibgp": { "type": "string", "description": "Configures the maximum number of ibgp equal-cost paths for load sharing. Valid value is an integer in the range 1-64." }, "vrf": { "type": "string", "description": "Name of the VRF. The name 'default' is a valid VRF representing the global bgp." }, "distance_ebgp": { "type": "string", "description": "Sets the administrative distance for eBGP routes. Valid values are Integer or keyword 'default'." }, "asn": { "type": "string", "description": "BGP autonomous system number. Valid values are String, Integer in ASPLAIN or ASDOT notation." }, "redistribute": { "type": "string", "description": "A list of redistribute directives. Multiple redistribute entries are allowed. The list must be in the form of a nested array. the first entry of each array defines the source-protocol to redistribute from; the second entry defines a route-map name. A route-map is highly advised but may be optional on some platforms, in which case it may be omitted from the array list. For example [['direct', 'rm_direct'], ['lisp', 'rm_lisp']]." }, "dampening_reuse_time": { "type": "string", "description": "Specify route reuse time for route-flap dampening. Valid values are integer and keyword 'default'." }, "maximum_paths": { "type": "string", "description": "Configures the maximum number of equal-cost paths for load sharing. Valid value is an integer in the range 1-64." }, "inject_map": { "type": "string", "description": "An array of route-map names which will specify prefixes to inject. Each array entry must first specify the inject-map name, secondly an exist-map name, and optionally the copy-attributes keyword which indicates that attributes should be copied from the aggregate. For example [['lax_inject_map', 'lax_exist_map'], ['nyc_inject_map', 'nyc_exist_map', 'copy-attributes'], ['fsd_inject_map', 'fsd_exist_map']]." }, "dampening_suppress_time": { "type": "string", "description": "Specify route suppress time for route-flap dampening. Valid values are integer and keyword 'default'." }, "table_map": { "type": "string", "description": "Apply table-map to filter routes downloaded into URIB. Valid values are a string." }, "dampening_half_time": { "type": "string", "description": "Specify decay half-life in minutes for route-flap dampening. Valid values are integer and keyword 'default'." } } }, "gitlab_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "validate_certs", "verify_ssl" ], "type": "object" } } ] } ], "type": "object", "description": "When the user does not exist in Gitlab, it will be created.\nWhen the user does exists and state=absent, the user will be deleted.\nWhen changes are made to user, the user will be updated.", "properties": { "username": { "type": "string", "description": "The username of the user." }, "verify_ssl": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." }, "group": { "type": "string", "description": "Add user as an member to this group." }, "name": { "type": "string", "description": "Name of the user you want to create" }, "sshkey_file": { "type": "string", "description": "The ssh key itself." }, "sshkey_name": { "type": "string", "description": "The name of the sshkey" }, "login_user": { "type": "string", "description": "Gitlab user name." }, "login_token": { "type": "string", "description": "Gitlab token for logging in." }, "confirm": { "type": "string", "description": "Default: True\n\nRequire confirmation." }, "server_url": { "type": "string", "description": "Url of Gitlab server, with protocol (http or https)." }, "access_level": { "type": "string", "description": "The access level to the group. One of the following can be used.\nguest\nreporter\ndeveloper\nmaster\nowner" }, "state": { "type": "string", "description": "Default: present\n\ncreate or delete group.\nPossible values are present and absent." }, "login_password": { "type": "string", "description": "Gitlab password for login_user" }, "password": { "type": "string", "description": "The password of the user.\nGitLab server enforces minimum password length to 8, set this value with 8 or more characters." }, "validate_certs": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." }, "email": { "type": "string", "description": "The email that belongs to the user." } } }, "bigip_policy": { "required": [ "name" ], "type": "object", "description": "Manages general policy configuration on a BIG-IP. This module is best used in conjunction with the C(bigip_policy_rule) module. This module can handle general configuration like setting the draft state of the policy, the description, and things unrelated to the policy rules themselves. It is also the first module that should be used when creating rules as the C(bigip_policy_rule) module requires a policy parameter.", "properties": { "description": { "type": "string", "description": "The description to attach to the policy.\nThis parameter is only supported on versions of BIG-IP >= 12.1.0. On earlier versions it will simply be ignored." }, "rules": { "type": "string", "description": "Specifies a list of rules that you want associated with this policy. The order of this list is the order they will be evaluated by BIG-IP. If the specified rules do not exist (for example when creating a new policy) then they will be created.\nThe C(conditions) for a default rule are C(all).\nThe C(actions) for a default rule are C(ignore).\nThe C(bigip_policy_rule) module can be used to create and edit existing and new rules." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "strategy": { "type": "string", "description": "Specifies the method to determine which actions get executed in the case where there are multiple rules that match. When creating new policies, the default is C(first).\nThis module does not allow you to specify the C(best) strategy to use. It will choose the system default (C(/Common/best-match)) for you instead." }, "state": { "type": "string", "description": "When C(state) is C(present), ensures that the policy exists and is published. When C(state) is C(absent), ensures that the policy is removed, even if it is currently drafted.\nWhen C(state) is C(draft), ensures that the policy exists and is drafted. When modifying rules, it is required that policies first be in a draft.\nDrafting is only supported on versions of BIG-IP >= 12.1.0. On versions prior to that, specifying a C(state) of C(draft) will raise an error." }, "name": { "type": "string", "description": "The name of the policy to create." } } }, "azure_rm_dnsrecordset_facts": { "type": "object", "description": "Get facts for a specific DNS Record Set in a Zone, or a specific type in all Zones or in one Zone etc.", "properties": { "zone_name": { "type": "string", "description": "Limit results by zones. Required when filtering by name or type." }, "top": { "type": "string", "description": "Default: 100\n\nLimit the maximum number of record sets to return" }, "record_type": { "type": "string", "description": "Limit record sets by record type." }, "resource_group": { "type": "string", "description": "Limit results by resource group. Required when filtering by name or type." }, "relative_name": { "type": "string", "description": "Only show results for a Record Set." } } }, "aws_application_scaling_policy": { "required": [ "policy_type", "scalable_dimension", "resource_id", "service_namespace", "policy_name" ], "type": "object", "description": "Creates, updates or removes a Scaling Policy", "properties": { "policy_type": { "type": "string", "description": "The policy type." }, "target_tracking_scaling_policy_configuration": { "type": "string", "description": "A target tracking policy. This parameter is required if you are creating a new policy and the policy type is TargetTrackingScaling." }, "resource_id": { "type": "string", "description": "The identifier of the resource associated with the scalable target." }, "policy_name": { "type": "string", "description": "The name of the scaling policy." }, "scalable_dimension": { "type": "string", "description": "The scalable dimension associated with the scalable target." }, "service_namespace": { "type": "string", "description": "The namespace of the AWS service." }, "step_scaling_policy_configuration": { "type": "string", "description": "A step scaling policy. This parameter is required if you are creating a policy and the policy type is StepScaling." } } }, "cs_instance": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "networks", "network" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "security_groups", "security_group" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ip_to_networks", "ip_to_network" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "affinity_groups", "affinity_group" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "template_filter", "iso_filter" ], "type": "object" } } ] } ], "type": "object", "description": "Deploy, start, update, scale, restart, restore, stop and destroy instances.", "properties": { "domain": { "type": "string", "description": "Domain the instance is related to." }, "force": { "type": "string", "description": "Force stop/start the instance if required to apply changes, otherwise a running instance will not be changed." }, "disk_offering": { "type": "string", "description": "Name of the disk offering to be used." }, "keyboard": { "type": "string", "description": "Keyboard device type for the instance." }, "user_data": { "type": "string", "description": "Optional data (ASCII) that can be sent to the instance upon a successful deployment.\nThe data will be automatically base64 encoded.\nConsider switching to HTTP_POST by using C(CLOUDSTACK_METHOD=post) to increase the HTTP_GET size limit of 2KB to 32 KB." }, "root_disk_size": { "type": "string", "description": "Root disk size in GByte required if deploying instance with KVM hypervisor and want resize the root disk size at startup (need CloudStack >= 4.4, cloud-initramfs-growroot installed and enabled in the template)" }, "iso_filter": { "type": "string", "description": "Default: executable\n\nName of the filter used to search for the template or iso.\nUsed for params C(iso) or C(template) on C(state=present)." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nIf you want to delete all tags, set a empty list e.g. C(tags: [])." }, "cpu_speed": { "type": "string", "description": "The clock speed/shares allocated to the instance, used with custom service offerings" }, "ip6_address": { "type": "string", "description": "IPv6 address for default instance's network." }, "networks": { "type": "array", "description": "List of networks to use for the new instance." }, "security_groups": { "type": "array", "description": "List of security groups the instance to be applied to." }, "group": { "type": "string", "description": "Group in where the new instance should be in." }, "network": { "type": "array", "description": "List of networks to use for the new instance." }, "zone": { "type": "string", "description": "Name of the zone in which the instance should be deployed.\nIf not set, default zone is used." }, "state": { "type": "string", "description": "Default: present\n\nState of the instance." }, "template": { "type": "string", "description": "Name or id of the template to be used for creating the new instance.\nRequired when using C(state=present).\nMutually exclusive with C(ISO) option." }, "memory": { "type": "string", "description": "The memory allocated to the instance, used with custom service offerings" }, "iso": { "type": "string", "description": "Name or id of the ISO to be used for creating the new instance.\nRequired when using C(state=present).\nMutually exclusive with C(template) option." }, "template_filter": { "type": "string", "description": "Default: executable\n\nName of the filter used to search for the template or iso.\nUsed for params C(iso) or C(template) on C(state=present)." }, "ip_to_network": { "type": "array", "description": "List of mappings in the form {'network': NetworkName, 'ip': 1.2.3.4}\nMutually exclusive with C(networks) option." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nIf you want to delete all tags, set a empty list e.g. C(tags: [])." }, "ssh_key": { "type": "string", "description": "Name of the SSH key to be deployed on the new instance." }, "affinity_group": { "type": "string", "description": "Affinity groups names to be applied to the new instance." }, "display_name": { "type": "string", "description": "Custom display name of the instances.\nDisplay name will be set to C(name) if not specified.\nEither C(name) or C(display_name) is required." }, "service_offering": { "type": "string", "description": "Name or id of the service offering of the new instance.\nIf not set, first found service offering is used." }, "ip_address": { "type": "string", "description": "IPv4 address for default instance's network during creation." }, "account": { "type": "string", "description": "Account the instance is related to." }, "disk_size": { "type": "string", "description": "Disk size in GByte required if deploying instance from ISO." }, "name": { "type": "string", "description": "Host name of the instance. C(name) can only contain ASCII letters.\nName will be generated (UUID) by CloudStack if not specified and can not be changed afterwards.\nEither C(name) or C(display_name) is required." }, "hypervisor": { "type": "string", "description": "Name the hypervisor to be used for creating the new instance.\nRelevant when using C(state=present), but only considered if not set on ISO/template.\nIf not set or found on ISO/template, first found hypervisor will be used." }, "ip_to_networks": { "type": "array", "description": "List of mappings in the form {'network': NetworkName, 'ip': 1.2.3.4}\nMutually exclusive with C(networks) option." }, "project": { "type": "string", "description": "Name of the project the instance to be deployed in." }, "affinity_groups": { "type": "string", "description": "Affinity groups names to be applied to the new instance." }, "security_group": { "type": "array", "description": "List of security groups the instance to be applied to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "cpu": { "type": "string", "description": "The number of CPUs to allocate to the instance, used with custom service offerings" } } }, "bigip_iapp_service": { "required": [ "name" ], "type": "object", "description": "Manages TCL iApp services on a BIG-IP.", "properties": { "force": { "type": "string", "description": "Forces the updating of an iApp service even if the parameters to the service have not changed. This option is of particular importance if the iApp template that underlies the service has been updated in-place. This option is equivalent to re-configuring the iApp if that template has changed." }, "name": { "type": "string", "description": "The name of the iApp service that you want to deploy." }, "parameters": { "type": "string", "description": "A hash of all the required template variables for the iApp template. If your parameters are stored in a file (the more common scenario) it is recommended you use either the `file` or `template` lookups to supply the expected parameters.\nThese parameters typically consist of the C(lists), C(tables), and C(variables) fields." }, "strict_updates": { "type": "string", "description": "Default: True\n\nIndicates whether the application service is tied to the template, so when the template is updated, the application service changes to reflect the updates.\nWhen C(yes), disallows any updates to the resources that the iApp service has created, if they are not updated directly through the iApp.\nWhen C(no), allows updates outside of the iApp.\nIf this option is specified in the Ansible task, it will take precedence over any similar setting in the iApp Server payload that you provide in the C(parameters) field." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the iApp service is created and running. When C(absent), ensures that the iApp service has been removed." }, "template": { "type": "string", "description": "The iApp template from which to instantiate a new service. This template must exist on your BIG-IP before you can successfully create a service. This parameter is required if the C(state) parameter is C(present)." }, "traffic_group": { "type": "string", "description": "The traffic group for the iApp service. When creating a new service, if this value is not specified, the default of C(/Common/traffic-group-1) will be used.\nIf this option is specified in the Ansible task, it will take precedence over any similar setting in the iApp Server payload that you provide in the C(parameters) field." } } }, "win_domain_membership": { "required": [ "domain_admin_user" ], "type": "object", "description": "Manages domain membership or workgroup membership for a Windows host. Also supports hostname changes. This module may require subsequent use of the M(win_reboot) action if changes are made.", "properties": { "workgroup_name": { "type": "string", "description": "when C(state) is C(workgroup), the name of the workgroup that the Windows host should be in" }, "domain_admin_user": { "type": "string", "description": "username of a domain admin for the target domain (required to join or leave the domain)" }, "domain_ou_path": { "type": "string", "description": "The desired OU path for adding the computer object.\nThis is only used when adding the target host to a domain, if it is already a member then it is ignored." }, "hostname": { "type": "string", "description": "the desired hostname for the Windows host" }, "domain_admin_password": { "type": "string", "description": "password for the specified C(domain_admin_user)" }, "state": { "type": "string", "description": "whether the target host should be a member of a domain or workgroup" }, "dns_domain_name": { "type": "string", "description": "when C(state) is C(domain), the DNS name of the domain to which the targeted Windows host should be joined" } } }, "pushbullet": { "required": [ "title", "api_key" ], "type": "object", "description": "This module sends push notifications via Pushbullet to channels or devices.", "properties": { "body": { "type": "string", "description": "Body of the notification, e.g. Details of the fault you're alerting." }, "title": { "type": "string", "description": "Title of the notification." }, "push_type": { "type": "string", "description": "Default: note\n\nThing you wish to push." }, "device": { "type": "string", "description": "The device NAME you wish to send a push notification, as seen on the Pushbullet main page." }, "api_key": { "type": "string", "description": "Push bullet API token" }, "channel": { "type": "string", "description": "The channel TAG you wish to broadcast a push notification, as seen on the \"My Channels\" > \"Edit your channel\" at Pushbullet page." } } }, "ec2_ami": { "type": "object", "description": "Creates or deletes ec2 images.", "properties": { "device_mapping": { "type": "string", "description": "An optional list of device hashes/dictionaries with custom configurations (same block-device-mapping parameters)\nValid properties include: device_name, volume_type, size (in GB), delete_on_termination (boolean), no_device (boolean), snapshot_id, iops (for io1 volume_type)" }, "description": { "type": "string", "description": "An optional human-readable string describing the contents and purpose of the AMI." }, "tags": { "type": "object", "description": "a dictionary of tags to add to the new image; '{\"key\":\"value\"}' and '{\"key\":\"value\",\"key\":\"value\"}'" }, "launch_permissions": { "type": "string", "description": "Users and groups that should be able to launch the ami. Expects dictionary with a key of user_ids and/or group_names. user_ids should be a list of account ids. group_name should be a list of groups, \"all\" is the only acceptable value currently." }, "delete_snapshot": { "type": "string", "description": "Default: no\n\nWhether or not to delete snapshots when deregistering AMI." }, "no_reboot": { "type": "string", "description": "An optional flag indicating that the bundling process should not attempt to shutdown the instance before bundling. If this flag is True, the responsibility of maintaining file system integrity is left to the owner of the instance. The default choice is \"no\"." }, "instance_id": { "type": "string", "description": "instance id of the image to create" }, "image_id": { "type": "string", "description": "Image ID to be deregistered." }, "state": { "type": "string", "description": "Default: present\n\ncreate or deregister/delete image" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the AMI to be in state 'available' before returning." }, "name": { "type": "string", "description": "The name of the new image to create" } } }, "panos_check": { "required": [ "password", "ip_address" ], "type": "object", "description": "Check if PAN-OS device is ready for being configured (no pending jobs).\nThe check could be done once or multiple times until the device is ready.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "timeout": { "type": "string", "description": "Default: 0\n\ntimeout of API calls" }, "interval": { "type": "string", "description": "Default: 0\n\ntime waited between checks" } } }, "aci_encap_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "pool_type", "type" ], "type": "object" } }, { "oneOf": [ { "required": [ "pool_type" ], "type": "object" }, { "required": [ "type" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "pool_allocation_mode", "allocation_mode", "mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool", "name", "pool_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage vlan, vxlan, and vsan pools on Cisco ACI fabrics.", "properties": { "pool_name": { "type": "string", "description": "The name of the pool." }, "pool_allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "description": { "type": "string", "description": "Description for the C(pool)." }, "descr": { "type": "string", "description": "Description for the C(pool)." }, "pool_type": { "type": "string", "description": "The encap type of C(pool)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "type": { "type": "string", "description": "The encap type of C(pool)." }, "pool": { "type": "string", "description": "The name of the pool." }, "name": { "type": "string", "description": "The name of the pool." } } }, "apt_rpm": { "required": [ "pkg" ], "type": "object", "description": "Manages packages with I(apt-rpm). Both low-level (I(rpm)) and high-level (I(apt-get)) package manager binaries required.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired package state." }, "update_cache": { "description": "Default: no\n\nupdate the package database first C(apt-get update).", "$ref": "#/definitions/ansible_truth" }, "pkg": { "type": "string", "description": "name of package to install, upgrade or remove." } } }, "iam_role_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "role_name" ], "type": "object" } } ] } ], "type": "object", "description": "Gathers information about IAM roles", "properties": { "role_name": { "type": "string", "description": "Default: None\n\nName of a role to search for\nMutually exclusive with C(prefix)" }, "name": { "type": "string", "description": "Default: None\n\nName of a role to search for\nMutually exclusive with C(prefix)" }, "path_prefix": { "type": "string", "description": "Default: None\n\nPrefix of role I(path) to restrict IAM role search for\nMutually exclusive with C(name)" } } }, "nxos_vrrp": { "required": [ "group", "interface" ], "type": "object", "description": "Manages VRRP configuration on NX-OS switches.", "properties": { "group": { "type": "string", "description": "VRRP group number." }, "vip": { "type": "string", "description": "VRRP virtual IP address." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "authentication": { "type": "string", "description": "Clear text authentication string." }, "priority": { "type": "string", "description": "VRRP priority." }, "preempt": { "type": "string", "description": "Enable/Disable preempt." }, "admin_state": { "type": "string", "description": "Default: no shutdown\n\nUsed to enable or disable the VRRP process." }, "interface": { "type": "string", "description": "Full name of interface that is being managed for VRRP." } } }, "dellos10_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to a Dell OS10 node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(dellos10_config) to configure Dell OS10 devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should be tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote dellos10 device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of I(retries), the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "s3": { "allOf": [ { "allOf": [ { "not": { "required": [ "aws_secret_key", "ec2_secret_key", "secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_access_key", "ec2_access_key", "access_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "s3_url", "S3_URL" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows the user to manage S3 buckets and the objects within them. Includes support for creating and deleting both objects and buckets, retrieving objects as files or strings and generating download links. This module has a dependency on python-boto.", "properties": { "prefix": { "type": "string", "description": "Limits the response to keys that begin with the specified prefix for list mode" }, "marker": { "type": "string", "description": "Specifies the key to start with when using list mode. Object keys are returned in alphabetical order, starting with key after the marker in order." }, "overwrite": { "type": "string", "description": "Default: always\n\nForce overwrite either locally on the filesystem or remotely with the object/key. Used with PUT and GET operations. Boolean or one of [always, never, different], true is equal to 'always' and false is equal to 'never', new in 2.0" }, "aws_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "encrypt": { "type": "string", "description": "When set for PUT mode, asks for server-side encryption" }, "rgw": { "type": "string", "description": "Enable Ceph RGW S3 support. This option requires an explicit url via s3_url." }, "retries": { "type": "string", "description": "On recoverable failure, how many times to retry before actually failing." }, "max_keys": { "type": "string", "description": "Default: 1000\n\nMax number of results to return in list mode, set this if you want to retrieve fewer than the default 1000 keys." }, "version": { "type": "string", "description": "Version ID of the object inside the bucket. Can be used to get a specific version of a file if versioning is enabled in the target bucket." }, "s3_url": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "metadata": { "type": "string", "description": "Metadata for PUT operation, as a dictionary of 'key=value' and 'key=value,key=value'." }, "permission": { "type": "string", "description": "Default: private\n\nThis option lets the user set the canned permissions on the object/bucket that are created. The permissions that can be set are 'private', 'public-read', 'public-read-write', 'authenticated-read'. Multiple permissions can be specified as a list." }, "dest": { "type": "string", "description": "The destination file path when downloading an object/key with a GET operation." }, "object": { "type": "string", "description": "Keyname of the object inside the bucket. Can be used to create \"virtual directories\", see examples." }, "ec2_access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "ec2_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "S3_URL": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "src": { "type": "string", "description": "The source file path when performing a PUT operation." }, "aws_access_key": { "type": "string", "description": "AWS access key id. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "region": { "type": "string", "description": "AWS region to create the bucket in. If not set then the value of the AWS_REGION and EC2_REGION environment variables are checked, followed by the aws_region and ec2_region settings in the Boto config file. If none of those are set the region defaults to the S3 Location: US Standard. Prior to ansible 1.8 this parameter could be specified but had no effect." }, "expiration": { "type": "string", "description": "Default: 600\n\nTime limit (in seconds) for the URL generated and returned by S3/Walrus when performing a mode=put or mode=geturl operation." }, "bucket": { "type": "string", "description": "Bucket name." }, "headers": { "type": "string", "description": "Custom headers for PUT operation, as a dictionary of 'key=value' and 'key=value,key=value'." }, "mode": { "type": "string", "description": "Switches the module behaviour between put (upload), get (download), geturl (return download url, Ansible 1.3+), getstr (download object as string (1.3+)), list (list keys, Ansible 2.0+), create (bucket), delete (bucket), and delobj (delete object, Ansible 2.0+)." }, "secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." } } }, "ping": { "type": "object", "description": "A trivial test module, this module always returns C(pong) on successful contact. It does not make sense in playbooks, but it is useful from C(/usr/bin/ansible) to verify the ability to login and that a usable Python is configured.\nThis is NOT ICMP ping, this is just a trivial test module that requires Python on the remote-node.\nFor Windows targets, use the M(win_ping) module instead.\nFor Network targets, use the M(net_ping) module instead.", "properties": { "data": { "type": "string", "description": "Default: pong\n\nData to return for the C(ping) return value.\nIf this parameter is set to C(crash), the module will cause an exception." } } }, "avi_cloud": { "required": [ "vtype", "name" ], "type": "object", "description": "This module is used to configure Cloud object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "vca_configuration": { "type": "string", "description": "Vcloudairconfiguration settings for cloud." }, "proxy_configuration": { "type": "string", "description": "Proxyconfiguration settings for cloud." }, "docker_configuration": { "type": "string", "description": "Dockerconfiguration settings for cloud." }, "oshiftk8s_configuration": { "type": "string", "description": "Oshiftk8sconfiguration settings for cloud." }, "dhcp_enabled": { "description": "Select the ip address management scheme.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "rancher_configuration": { "type": "string", "description": "Rancherconfiguration settings for cloud." }, "vtype": { "type": "string", "description": "Cloud type.\nEnum options - CLOUD_NONE, CLOUD_VCENTER, CLOUD_OPENSTACK, CLOUD_AWS, CLOUD_VCA, CLOUD_APIC, CLOUD_MESOS, CLOUD_LINUXSERVER, CLOUD_DOCKER_UCP,\nCLOUD_RANCHER, CLOUD_OSHIFT_K8S, CLOUD_AZURE.\nDefault value when not specified in API or module is interpreted by Avi Controller as CLOUD_NONE." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "obj_name_prefix": { "type": "string", "description": "Default prefix for all automatically created objects in this cloud.\nThis prefix can be overridden by the se-group template." }, "custom_tags": { "type": "string", "description": "Custom tags for all avi created resources in the cloud infrastructure.\nField introduced in 17.1.5." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "nsx_configuration": { "type": "string", "description": "Configuration parameters for nsx manager.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "apic_mode": { "description": "Boolean flag to set apic_mode.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "dns_provider_ref": { "type": "string", "description": "Dns profile for the cloud.\nIt is a reference to an object of type ipamdnsproviderprofile." }, "mesos_configuration": { "type": "string", "description": "Mesosconfiguration settings for cloud." }, "openstack_configuration": { "type": "string", "description": "Openstackconfiguration settings for cloud." }, "enable_vip_static_routes": { "description": "Use static routes for vip side network resolution during virtualservice placement.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "aws_configuration": { "type": "string", "description": "Awsconfiguration settings for cloud." }, "license_tier": { "type": "string", "description": "Specifies the default license tier which would be used by new se groups.\nThis field by default inherits the value from system configuration.\nEnum options - ENTERPRISE_16, ENTERPRISE_18.\nField introduced in 17.2.5." }, "cloudstack_configuration": { "type": "string", "description": "Cloudstackconfiguration settings for cloud." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "state_based_dns_registration": { "description": "Dns records for vips are added/deleted based on the operational state of the vips.\nField introduced in 17.1.12.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "azure_configuration": { "type": "string", "description": "Field introduced in 17.2.1." }, "ipam_provider_ref": { "type": "string", "description": "Ipam profile for the cloud.\nIt is a reference to an object of type ipamdnsproviderprofile." }, "name": { "type": "string", "description": "Name of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "mtu": { "type": "string", "description": "Mtu setting for the cloud.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1500.\nUnits(BYTES)." }, "east_west_ipam_provider_ref": { "type": "string", "description": "Ipam profile for east-west services.\nWarning - please use virtual subnets in this ipam profile that do not conflict with the underlay networks or any overlay networks in the cluster.\nFor example in aws and gcp, 169.254.0.0/16 is used for storing instance metadata.\nHence, it should not be used in this profile.\nIt is a reference to an object of type ipamdnsproviderprofile." }, "linuxserver_configuration": { "type": "string", "description": "Linuxserverconfiguration settings for cloud." }, "apic_configuration": { "type": "string", "description": "Apicconfiguration settings for cloud." }, "prefer_static_routes": { "description": "Prefer static routes over interface routes during virtualservice placement.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "license_type": { "type": "string", "description": "If no license type is specified then default license enforcement for the cloud type is chosen.\nThe default mappings are container cloud is max ses, openstack and vmware is cores and linux it is sockets.\nEnum options - LIC_BACKEND_SERVERS, LIC_SOCKETS, LIC_CORES, LIC_HOSTS, LIC_SE_BANDWIDTH." }, "vcenter_configuration": { "type": "string", "description": "Vcenterconfiguration settings for cloud." }, "east_west_dns_provider_ref": { "type": "string", "description": "Dns profile for east-west services.\nIt is a reference to an object of type ipamdnsproviderprofile." } } }, "bigip_facts": { "required": [ "include" ], "type": "object", "description": "Collect facts from F5 BIG-IP devices via iControl SOAP API", "properties": { "filter": { "type": "string", "description": "Shell-style glob matching string used to filter fact keys. Not applicable for software, provision, and system_info fact categories." }, "include": { "type": "string", "description": "Fact category or list of categories to collect" }, "session": { "type": "string", "description": "Default: True\n\nBIG-IP session support; may be useful to avoid concurrency issues in certain circumstances." } } }, "os_volume": { "required": [ "display_name" ], "type": "object", "description": "Create or Remove cinder block storage volumes", "properties": { "display_name": { "type": "string", "description": "Name of volume" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "image": { "type": "string", "description": "Default: None\n\nImage name or id for boot from volume" }, "volume_type": { "type": "string", "description": "Default: None\n\nVolume type for volume" }, "volume": { "type": "string", "description": "Default: None\n\nVolume name or id to create from" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "display_description": { "type": "string", "description": "Default: None\n\nString describing the volume" }, "snapshot_id": { "type": "string", "description": "Default: None\n\nVolume snapshot id to create from" }, "scheduler_hints": { "type": "string", "description": "Default: None\n\nScheduler hints passed to volume API in form of dict" }, "size": { "type": "string", "description": "Default: None\n\nSize of volume in GB. This parameter is required when the I(state) parameter is 'present'." } } }, "ce_eth_trunk": { "required": [ "trunk_id" ], "type": "object", "description": "Manages Eth-Trunk specific configuration parameters on HUAWEI CloudEngine switches.", "properties": { "force": { "type": "string", "description": "When true it forces Eth-Trunk members to match what is declared in the members param. This can be used to remove members." }, "hash_type": { "type": "string", "description": "Hash algorithm used for load balancing among Eth-Trunk member interfaces." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "mode": { "type": "string", "description": "Specifies the working mode of an Eth-Trunk interface." }, "members": { "type": "array", "description": "List of interfaces that will be managed in a given Eth-Trunk. The interface name must be full name." }, "min_links": { "type": "string", "description": "Specifies the minimum number of Eth-Trunk member links in the Up state. The value is an integer ranging from 1 to the maximum number of interfaces that can be added to a Eth-Trunk interface." }, "trunk_id": { "type": "string", "description": "Eth-Trunk interface number. The value is an integer. The value range depends on the assign forward eth-trunk mode command. When 256 is specified, the value ranges from 0 to 255. When 512 is specified, the value ranges from 0 to 511. When 1024 is specified, the value ranges from 0 to 1023." } } }, "a10_server_axapi3": { "allOf": [ { "allOf": [ { "not": { "required": [ "server_ip", "ip", "address" ], "type": "object" } }, { "oneOf": [ { "required": [ "server_ip" ], "type": "object" }, { "required": [ "ip" ], "type": "object" }, { "required": [ "address" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "server_name", "server" ], "type": "object" } }, { "oneOf": [ { "required": [ "server_name" ], "type": "object" }, { "required": [ "server" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "server_ports", "port" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "server_status", "action" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SLB (Server Load Balancer) server objects on A10 Networks devices via aXAPIv3.", "properties": { "server_name": { "type": "string", "description": "The SLB (Server Load Balancer) server name." }, "server_ports": { "type": "string", "description": "A list of ports to create for the server. Each list item should be a dictionary which specifies the C(port:) and C(protocol:)." }, "ip": { "type": "string", "description": "The SLB (Server Load Balancer) server IPv4 address." }, "server": { "type": "string", "description": "The SLB (Server Load Balancer) server name." }, "server_ip": { "type": "string", "description": "The SLB (Server Load Balancer) server IPv4 address." }, "address": { "type": "string", "description": "The SLB (Server Load Balancer) server IPv4 address." }, "action": { "type": "string", "description": "Default: enable\n\nThe SLB (Server Load Balancer) virtual server status." }, "operation": { "type": "string", "description": "Default: create\n\nCreate, Update or Remove SLB server. For create and update operation, we use the IP address and server name specified in the POST message. For delete operation, we use the server name in the request URI." }, "server_status": { "type": "string", "description": "Default: enable\n\nThe SLB (Server Load Balancer) virtual server status." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "port": { "type": "string", "description": "A list of ports to create for the server. Each list item should be a dictionary which specifies the C(port:) and C(protocol:)." } } }, "set_fact": { "required": [ "key_value" ], "type": "object", "description": "This module allows setting new variables. Variables are set on a host-by-host basis just like facts discovered by the setup module.\nThese variables will be available to subsequent plays during an ansible-playbook run, but will not be saved across executions even if you use a fact cache.", "properties": { "key_value": { "type": "string", "description": "The C(set_fact) module takes key=value pairs as variables to set in the playbook scope. Or alternatively, accepts complex arguments using the C(args:) statement." } } }, "newrelic_deployment": { "required": [ "token" ], "type": "object", "description": "Notify newrelic about app deployments (see https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/deployment-notifications#api)", "properties": { "application_id": { "type": "string", "description": "(one of app_name or application_id are required) The application id, found in the URL when viewing the application in RPM" }, "description": { "type": "string", "description": "Text annotation for the deployment - notes for you" }, "appname": { "type": "string", "description": "Name of the application" }, "changelog": { "type": "string", "description": "A list of changes for this deployment" }, "environment": { "type": "string", "description": "The environment for this deployment" }, "token": { "type": "string", "description": "API token, to place in the x-api-key header." }, "user": { "type": "string", "description": "The name of the user/process that triggered this deployment" }, "app_name": { "type": "string", "description": "(one of app_name or application_id are required) The value of app_name in the newrelic.yml file used by the application" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "revision": { "type": "string", "description": "A revision number (e.g., git commit SHA)" } } }, "net_user": { "type": "object", "description": "This module provides declarative management of the local usernames configured on network devices. It allows playbooks to manage either individual usernames or the aggregate of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the remote network device. The password needs to be provided in clear and it will be encrypted on the device. Please note that this option is not same as C(provider password)." }, "name": { "type": "string", "description": "The username to be configured on the remote network device. This argument accepts a string value and is mutually exclusive with the C(aggregate) argument. Please note that this option is not same as C(provider username)." }, "nopassword": { "description": "Defines the username without assigning a password. This will allow the user to login to the system without being authenticated by a password.", "$ref": "#/definitions/ansible_truth" }, "purge": { "description": "Instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user (the current defined set of users).", "$ref": "#/definitions/ansible_truth" }, "privilege": { "type": "string", "description": "The C(privilege) argument configures the privilege level of the user when logged into the system. This argument accepts integer values in the range of 1 to 15." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "role": { "type": "string", "description": "Configures the role for the username in the device running configuration. The argument accepts a string value defining the role name. This argument does not check if the role has been configured on the device." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote network device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "sshkey": { "type": "string", "description": "Specifies the SSH public key to configure for the given username. This argument accepts a valid SSH key value." } } }, "vyos_logging": { "type": "object", "description": "This module provides declarative management of logging on Vyatta Vyos devices.", "properties": { "name": { "type": "string", "description": "If value of C(dest) is I(file) it indicates file-name, for I(user) it indicates username and for I(host) indicates the host name to be notified." }, "facility": { "type": "string", "description": "Set logging facility." }, "dest": { "type": "string", "description": "Destination of the logs." }, "level": { "type": "string", "description": "Set logging severity levels." }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." } } }, "sns": { "allOf": [ { "allOf": [ { "not": { "required": [ "aws_secret_key", "ec2_secret_key", "secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_access_key", "ec2_access_key", "access_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "msg", "default" ], "type": "object" } }, { "oneOf": [ { "required": [ "msg" ], "type": "object" }, { "required": [ "default" ], "type": "object" } ] } ] } ], "type": "object", "description": "The M(sns) module sends notifications to a topic on your Amazon SNS account", "properties": { "aws_secret_key": { "type": "string", "description": "Default: None\n\nAWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "access_key": { "type": "string", "description": "Default: None\n\nAWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "aws_access_key": { "type": "string", "description": "Default: None\n\nAWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "http": { "type": "string", "description": "Message to send to HTTP-only subscription" }, "sqs": { "type": "string", "description": "Message to send to SQS-only subscription" }, "sms": { "type": "string", "description": "Message to send to SMS-only subscription" }, "region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." }, "aws_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." }, "subject": { "type": "string", "description": "Subject line for email delivery." }, "topic": { "type": "string", "description": "The topic you want to publish to." }, "default": { "type": "string", "description": "Default message to send." }, "https": { "type": "string", "description": "Message to send to HTTPS-only subscription" }, "msg": { "type": "string", "description": "Default message to send." }, "ec2_access_key": { "type": "string", "description": "Default: None\n\nAWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "secret_key": { "type": "string", "description": "Default: None\n\nAWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "ec2_secret_key": { "type": "string", "description": "Default: None\n\nAWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "email": { "type": "string", "description": "Message to send to email-only subscription" }, "ec2_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." } } }, "bigip_ssl_certificate": { "allOf": [ { "allOf": [ { "not": { "required": [ "content", "cert_content" ], "type": "object" } } ] } ], "type": "object", "description": "This module will import/delete SSL certificates on BIG-IP LTM. Certificates can be imported from certificate and key files on the local disk, in PEM format.", "properties": { "name": { "type": "string", "description": "SSL Certificate Name. This is the cert name used when importing a certificate into the F5. It also determines the filenames of the objects on the LTM." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "content": { "type": "string", "description": "Sets the contents of a certificate directly to the specified value. This is used with lookup plugins or for anything with formatting or\nC(content) must be provided when C(state) is C(present)." }, "issuer_cert": { "type": "string", "description": "Issuer certificate used for OCSP monitoring.\nThis parameter is only valid on versions of BIG-IP 13.0.0 or above." }, "state": { "type": "string", "description": "Default: present\n\nCertificate state. This determines if the provided certificate and key is to be made C(present) on the device or C(absent)." }, "cert_content": { "type": "string", "description": "Sets the contents of a certificate directly to the specified value. This is used with lookup plugins or for anything with formatting or\nC(content) must be provided when C(state) is C(present)." } } }, "junos_vrf": { "type": "object", "description": "This module provides declarative management of VRF definitions on Juniper JUNOS devices. It allows playbooks to manage individual or the entire VRF collection.", "properties": { "target": { "type": "string", "description": "It configures VRF target community configuration. The target value takes the form of C(target:A:B) where C(A) and C(B) are both numeric values." }, "interfaces": { "type": "string", "description": "Identifies the set of interfaces that should be configured in the VRF. Interfaces must be routed interfaces in order to be placed into a VRF." }, "description": { "type": "string", "description": "Provides a short description of the VRF definition in the current active configuration. The VRF definition value accepts alphanumeric characters used to provide additional information about the VRF." }, "rd": { "type": "string", "description": "The router-distinguisher value uniquely identifies the VRF to routing processes on the remote IOS system. The RD value takes the form of C(A:B) where C(A) and C(B) are both numeric values." }, "aggregate": { "type": "string", "description": "The set of VRF definition objects to be configured on the remote JUNOS device. Ths list entries can either be the VRF name or a hash of VRF definitions and attributes. This argument is mutually exclusive with the C(name) argument." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the VRF definition as it relates to the device operational configuration. When set to I(present), the VRF should be configured in the device active configuration and when set to I(absent) the VRF should not be in the device active configuration" }, "table_label": { "type": "string", "description": "Causes JUNOS to allocate a VPN label per VRF rather than per VPN FEC. This allows for forwarding of traffic to directly connected subnets, COS Egress filtering etc." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "name": { "type": "string", "description": "The name of the VRF definition to be managed on the remote IOS device. The VRF definition name is an ASCII string name used to uniquely identify the VRF. This argument is mutually exclusive with the C(aggregate) argument" } } }, "onyx_protocol": { "type": "object", "description": "This module provides a mechanism for enabling and disabling protocols Mellanox on ONYX network devices.", "properties": { "spanning_tree": { "type": "string", "description": "Spanning Tree support" }, "lldp": { "type": "string", "description": "LLDP protocol" }, "mlag": { "type": "string", "description": "MLAG protocol" }, "magp": { "type": "string", "description": "MAGP protocol" }, "ip_routing": { "type": "string", "description": "IP routing support" }, "lacp": { "type": "string", "description": "LACP protocol" }, "ip_l3": { "type": "string", "description": "IP L3 support" }, "igmp_snooping": { "type": "string", "description": "IP IGMP snooping" }, "dcb_pfc": { "type": "string", "description": "DCB priority flow control" }, "ospf": { "type": "string", "description": "OSPF protocol" }, "bgp": { "type": "string", "description": "BGP protocol" } } }, "purefa_volume": { "required": [ "name" ], "type": "object", "description": "Create, delete or extend the capacity of a volume on Pure Storage FlashArray.", "properties": { "target": { "type": "string", "description": "The name of the target volume, if copying." }, "name": { "type": "string", "description": "The name of the volume." }, "state": { "type": "string", "description": "Default: present\n\nDefine whether the volume should exist or not." }, "size": { "type": "string", "description": "Volume size in M, G, T or P units." }, "overwrite": { "description": "Default: no\n\nDefine whether to overwrite a target volume if it already exisits.", "$ref": "#/definitions/ansible_truth" }, "eradicate": { "description": "Default: no\n\nDefine whether to eradicate the volume on delete or leave in trash.", "$ref": "#/definitions/ansible_truth" } } }, "ecs_taskdefinition_facts": { "required": [ "task_definition" ], "type": "object", "description": "Describes a task definition in ecs.", "properties": { "task_definition": { "type": "string", "description": "The name of the task definition to get details for" } } }, "fireball": { "type": "object", "description": "Modern SSH clients support ControlPersist which is just as fast as fireball was. Please enable that in ansible.cfg as a replacement for fireball.\nRemoved in ansible 2.0.", "properties": {} }, "aci_tenant_ep_retention_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "epr_policy", "epr_name", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage End Point (EP) retention protocol policies on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the end point retention policy." }, "descr": { "type": "string", "description": "Description for the End point rentention policy." }, "tenant_name": { "type": "string", "description": "The name of an existing tenant." }, "hold_interval": { "type": "string", "description": "Default: 300\n\nHold Interval (range 5secs - 65535secs)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "epr_name": { "type": "string", "description": "The name of the end point retention policy." }, "epr_policy": { "type": "string", "description": "The name of the end point retention policy." }, "local_ep_interval": { "type": "string", "description": "Default: 900\n\nLocal end point Aging Interval (range 120secs - 65535secs).\n0 is used for infinite." }, "tenant": { "type": "string", "description": "The name of an existing tenant." }, "move_frequency": { "type": "string", "description": "Default: 256\n\nMove frequency per second (range 0secs - 65535secs).\n0 is used for none." }, "bounce_trigger": { "type": "string", "description": "Default: coop\n\nDetermines if the bounce entries are installed by RARP Flood or COOP Protocol.\nThe APIC defaults new End Point Retention Policies to C(coop)." }, "remote_ep_interval": { "type": "string", "description": "Default: 300\n\nRemote end point Aging Interval (range 120secs - 65535secs).\nO is used for infinite." }, "bounce_age": { "type": "string", "description": "Default: 630\n\nBounce Entry Aging Interval (range 150secs - 65535secs)\n0 is used for infinite." }, "description": { "type": "string", "description": "Description for the End point rentention policy." } } }, "nxos_bgp_neighbor_af": { "required": [ "afi", "safi", "asn", "neighbor" ], "type": "object", "description": "Manages BGP address-family's neighbors configurations on NX-OS switches.", "properties": { "default_originate": { "type": "string", "description": "Activate the default-originate feature." }, "next_hop_self": { "type": "string", "description": "Activate the next-hop-self feature." }, "suppress_inactive": { "type": "string", "description": "suppress-inactive feature." }, "weight": { "type": "string", "description": "Weight value. Valid values are an integer value or 'default'." }, "soo": { "type": "string", "description": "Site-of-origin. Valid values are a string defining a VPN extcommunity or 'default'." }, "additional_paths_receive": { "type": "string", "description": "Valid values are enable for basic command enablement; disable for disabling the command at the neighbor af level (it adds the disable keyword to the basic command); and inherit to remove the command at this level (the command value is inherited from a higher BGP layer)." }, "route_reflector_client": { "type": "string", "description": "Router reflector client." }, "max_prefix_limit": { "type": "string", "description": "maximum-prefix limit value. Valid values are an integer value or 'default'." }, "prefix_list_out": { "type": "string", "description": "Valid values are a string defining a prefix-list name, or 'default'." }, "as_override": { "type": "string", "description": "Activate the as-override feature." }, "filter_list_out": { "type": "string", "description": "Valid values are a string defining a filter-list name, or 'default'." }, "additional_paths_send": { "type": "string", "description": "Valid values are enable for basic command enablement; disable for disabling the command at the neighbor af level (it adds the disable keyword to the basic command); and inherit to remove the command at this level (the command value is inherited from a higher BGP layer)." }, "allowas_in": { "type": "string", "description": "Activate allowas-in property" }, "max_prefix_warning": { "type": "string", "description": "Optional warning-only keyword. Requires max_prefix_limit." }, "asn": { "type": "string", "description": "BGP autonomous system number. Valid values are String, Integer in ASPLAIN or ASDOT notation." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "advertise_map_non_exist": { "type": "string", "description": "Conditional route advertisement. This property requires two route maps, an advertise-map and an exist-map. Valid values are an array specifying both the advertise-map name and the non-exist-map name, or simply 'default' e.g. ['my_advertise_map', 'my_non_exist_map']. This command is mutually exclusive with the advertise_map_exist property." }, "default_originate_route_map": { "type": "string", "description": "Optional route-map for the default_originate property. Can be used independently or in conjunction with C(default_originate). Valid values are a string defining a route-map name, or 'default'." }, "safi": { "type": "string", "description": "Sub Address Family Identifier." }, "filter_list_in": { "type": "string", "description": "Valid values are a string defining a filter-list name, or 'default'." }, "vrf": { "type": "string", "description": "Default: default\n\nName of the VRF. The name 'default' is a valid VRF representing the global bgp." }, "unsuppress_map": { "type": "string", "description": "unsuppress-map. Valid values are a string defining a route-map name or 'default'." }, "max_prefix_threshold": { "type": "string", "description": "Optional threshold percentage at which to generate a warning. Valid values are an integer value. Requires max_prefix_limit." }, "route_map_in": { "type": "string", "description": "Valid values are a string defining a route-map name, or 'default'." }, "afi": { "type": "string", "description": "Address Family Identifier." }, "soft_reconfiguration_in": { "type": "string", "description": "Valid values are 'enable' for basic command enablement; 'always' to add the always keyword to the basic command; and 'inherit' to remove the command at this level (the command value is inherited from a higher BGP layer)." }, "max_prefix_interval": { "type": "string", "description": "Optional restart interval. Valid values are an integer. Requires max_prefix_limit." }, "route_map_out": { "type": "string", "description": "Valid values are a string defining a route-map name, or 'default'." }, "send_community": { "type": "string", "description": "send-community attribute." }, "prefix_list_in": { "type": "string", "description": "Valid values are a string defining a prefix-list name, or 'default'." }, "neighbor": { "type": "string", "description": "Neighbor Identifier. Valid values are string. Neighbors may use IPv4 or IPv6 notation, with or without prefix length." }, "next_hop_third_party": { "type": "string", "description": "Activate the next-hop-third-party feature." }, "advertise_map_exist": { "type": "string", "description": "Conditional route advertisement. This property requires two route maps, an advertise-map and an exist-map. Valid values are an array specifying both the advertise-map name and the exist-map name, or simply 'default' e.g. ['my_advertise_map', 'my_exist_map']. This command is mutually exclusive with the advertise_map_non_exist property." }, "allowas_in_max": { "type": "string", "description": "Optional max-occurrences value for allowas_in. Valid values are an integer value or 'default'. Can be used independently or in conjunction with allowas_in." } } }, "ce_netstream_export": { "required": [ "type" ], "type": "object", "description": "Configure NetStream flow statistics exporting and versions for exported packets on HUAWEI CloudEngine switches.", "properties": { "bgp_nexthop": { "type": "string", "description": "Default: disable\n\nConfigures the statistics to carry BGP next hop information. Currently, only V9 supports the exported packets carrying BGP next hop information." }, "host_port": { "type": "string", "description": "Specifies the destination UDP port number of the exported packets. The value is an integer that ranges from 1 to 65535." }, "source_ip": { "type": "string", "description": "Specifies source address which can be IPv6 or IPv4 of the exported NetStream packet." }, "as_option": { "type": "string", "description": "Specifies the AS number recorded in the statistics as the original or the peer AS number." }, "host_ip": { "type": "string", "description": "Specifies destination address which can be IPv6 or IPv4 of the exported NetStream packet." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "version": { "type": "string", "description": "Sets the version of exported packets." }, "type": { "type": "string", "description": "Specifies NetStream feature." }, "host_vpn": { "type": "string", "description": "Specifies the VPN instance of the exported packets carrying flow statistics. Ensure the VPN instance has been created on the device." } } }, "aci_aep_to_domain": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain_type", "type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aep", "aep_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "domain", "domain_name", "domain_profile" ], "type": "object" } } ] } ], "type": "object", "description": "Bind AEPs to Physical or Virtual Domains on Cisco ACI fabrics.", "properties": { "domain_profile": { "type": "string", "description": "Name of the physical or virtual domain being associated with the AEP." }, "aep": { "type": "string", "description": "The name of the Attachable Access Entity Profile." }, "domain": { "type": "string", "description": "Name of the physical or virtual domain being associated with the AEP." }, "domain_name": { "type": "string", "description": "Name of the physical or virtual domain being associated with the AEP." }, "domain_type": { "type": "string", "description": "Determines if the Domain is physical (phys) or virtual (vmm)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "aep_name": { "type": "string", "description": "The name of the Attachable Access Entity Profile." }, "vm_provider": { "type": "string", "description": "The VM platform for VMM Domains.\nSupport for Kubernetes was added in ACI v3.0.\nSupport for CloudFoundry, OpenShift and Red Hat was added in ACI v3.1." }, "type": { "type": "string", "description": "Determines if the Domain is physical (phys) or virtual (vmm)." } } }, "avi_alertconfig": { "required": [ "name", "category", "source", "alert_rule" ], "type": "object", "description": "This module is used to configure AlertConfig object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "object_type": { "type": "string", "description": "The object type to which the alert config is associated with.\nValid object types are - virtual service, pool, service engine.\nEnum options - VIRTUALSERVICE, POOL, HEALTHMONITOR, NETWORKPROFILE, APPLICATIONPROFILE, HTTPPOLICYSET, DNSPOLICY, IPADDRGROUP, STRINGGROUP,\nSSLPROFILE, SSLKEYANDCERTIFICATE, NETWORKSECURITYPOLICY, APPLICATIONPERSISTENCEPROFILE, ANALYTICSPROFILE, VSDATASCRIPTSET, TENANT, PKIPROFILE,\nAUTHPROFILE, CLOUD, SERVERAUTOSCALEPOLICY, AUTOSCALELAUNCHCONFIG, MICROSERVICEGROUP, IPAMPROFILE, HARDWARESECURITYMODULEGROUP, POOLGROUP,\nPRIORITYLABELS, POOLGROUPDEPLOYMENTPOLICY, GSLBSERVICE, GSLBSERVICERUNTIME, SCHEDULER, GSLBGEODBPROFILE, GSLBAPPLICATIONPERSISTENCEPROFILE,\nTRAFFICCLONEPROFILE, VSVIP, WAFPOLICY, WAFPROFILE, ERRORPAGEPROFILE, ERRORPAGEBODY, L4POLICYSET, SERVICEENGINE, DEBUGSERVICEENGINE,\nDEBUGCONTROLLER, DEBUGVIRTUALSERVICE, SERVICEENGINEGROUP, SEPROPERTIES, NETWORK, CONTROLLERNODE, CONTROLLERPROPERTIES, SYSTEMCONFIGURATION,\nVRFCONTEXT, USER, ALERTCONFIG, ALERTSYSLOGCONFIG, ALERTEMAILCONFIG, ALERTTYPECONFIG, APPLICATION, ROLE, CLOUDPROPERTIES, SNMPTRAPPROFILE,\nACTIONGROUPPROFILE, MICROSERVICE, ALERTPARAMS, ACTIONGROUPCONFIG, CLOUDCONNECTORUSER, GSLB, GSLBDNSUPDATE, GSLBSITEOPS, GLBMGRWARMSTART,\nIPAMDNSRECORD, GSLBDNSGSSTATUS, GSLBDNSGEOFILEOPS, GSLBDNSGEOUPDATE, GSLBDNSGEOCLUSTEROPS, GSLBDNSCLEANUP, GSLBSITEOPSRESYNC, TCPSTATRUNTIME,\nUDPSTATRUNTIME, IPSTATRUNTIME, ARPSTATRUNTIME, MBSTATRUNTIME, IPSTKQSTATSRUNTIME, MALLOCSTATRUNTIME, SHMALLOCSTATRUNTIME, CPUUSAGERUNTIME,\nL7GLOBALSTATSRUNTIME, L7VIRTUALSERVICESTATSRUNTIME, SEAGENTVNICDBRUNTIME, SEAGENTGRAPHDBRUNTIME, SEAGENTSTATERUNTIME, INTERFACERUNTIME,\nARPTABLERUNTIME, DISPATCHERSTATRUNTIME, DISPATCHERSTATCLEARRUNTIME, DISPATCHERTABLEDUMPRUNTIME, DISPATCHERREMOTETIMERLISTDUMPRUNTIME,\nMETRICSAGENTMESSAGE, HEALTHMONITORSTATRUNTIME, METRICSENTITYRUNTIME, PERSISTENCEINTERNAL, HTTPPOLICYSETINTERNAL, DNSPOLICYINTERNAL,\nCONNECTIONDUMPRUNTIME, SHAREDDBSTATS, SHAREDDBSTATSCLEAR, ICMPSTATRUNTIME, ROUTETABLERUNTIME, VIRTUALMACHINE, POOLSERVER, SEVSLIST,\nMEMINFORUNTIME, RTERINGSTATRUNTIME, ALGOSTATRUNTIME, HEALTHMONITORRUNTIME, CPUSTATRUNTIME, SEVM, HOST, PORTGROUP, CLUSTER, DATACENTER, VCENTER,\nHTTPPOLICYSETSTATS, DNSPOLICYSTATS, METRICSSESTATS, RATELIMITERSTATRUNTIME, NETWORKSECURITYPOLICYSTATS, TCPCONNRUNTIME, POOLSTATS,\nCONNPOOLINTERNAL, CONNPOOLSTATS, VSHASHSHOWRUNTIME, SELOGSTATSRUNTIME, NETWORKSECURITYPOLICYDETAIL, LICENSERUNTIME, SERVERRUNTIME,\nMETRICSRUNTIMESUMMARY, METRICSRUNTIMEDETAIL, DISPATCHERSEHMPROBETEMPDISABLERUNTIME, POOLDEBUG, VSLOGMGRMAP, SERUMINSERTIONSTATS, HTTPCACHE,\nHTTPCACHESTATS, SEDOSSTATRUNTIME, VSDOSSTATRUNTIME, SERVERUPDATEREQ, VSSCALEOUTLIST, SEMEMDISTRUNTIME, TCPCONNRUNTIMEDETAIL, SEUPGRADESTATUS,\nSEUPGRADEPREVIEW, SEFAULTINJECTEXHAUSTM, SEFAULTINJECTEXHAUSTMCL, SEFAULTINJECTEXHAUSTMCLSMALL, SEFAULTINJECTEXHAUSTCONN, SEHEADLESSONLINEREQ,\nSEUPGRADE, SEUPGRADESTATUSDETAIL, SERESERVEDVS, SERESERVEDVSCLEAR, VSCANDIDATESEHOSTLIST, SEGROUPUPGRADE, REBALANCE, SEGROUPREBALANCE,\nSEAUTHSTATSRUNTIME, AUTOSCALESTATE, VIRTUALSERVICEAUTHSTATS, NETWORKSECURITYPOLICYDOS, KEYVALINTERNAL, KEYVALSUMMARYINTERNAL,\nSERVERSTATEUPDATEINFO, CLTRACKINTERNAL, CLTRACKSUMMARYINTERNAL, MICROSERVICERUNTIME, SEMICROSERVICE, VIRTUALSERVICEANALYSIS, CLIENTINTERNAL,\nCLIENTSUMMARYINTERNAL, MICROSERVICEGROUPRUNTIME, BGPRUNTIME, REQUESTQUEUERUNTIME, MIGRATEALL, MIGRATEALLSTATUSSUMMARY, MIGRATEALLSTATUSDETAIL,\nINTERFACESUMMARYRUNTIME, INTERFACELACPRUNTIME, DNSTABLE, GSLBSERVICEDETAIL, GSLBSERVICEINTERNAL, GSLBSERVICEHMONSTAT, SETROLESREQUEST,\nTRAFFICCLONERUNTIME, GEOLOCATIONINFO, SEVSHBSTATRUNTIME, GEODBINTERNAL, GSLBSITEINTERNAL, WAFSTATS, USERDEFINEDDATASCRIPTCOUNTERS, LLDPRUNTIME,\nVSESSHARINGPOOL, SEVSSPLACEMENT, L4POLICYSETSTATS, L4POLICYSETINTERNAL, SERESOURCEPROTO, SECONSUMERPROTO, SECREATEPENDINGPROTO, PLACEMENTSTATS,\nSEVIPPROTO, RMVRFPROTO, VCENTERMAP, VIMGRVCENTERRUNTIME, INTERESTEDVMS, INTERESTEDHOSTS, VCENTERSUPPORTEDCOUNTERS, ENTITYCOUNTERS,\nTRANSACTIONSTATS, SEVMCREATEPROGRESS, PLACEMENTSTATUS, VISUBFOLDERS, VIDATASTORE, VIHOSTRESOURCES, CLOUDCONNECTOR, VINETWORKSUBNETVMS,\nVIDATASTORECONTENTS, VIMGRVCENTERCLOUDRUNTIME, VIVCENTERPORTGROUPS, VIVCENTERDATACENTERS, VIMGRHOSTRUNTIME, PLACEMENTGLOBALS, APICCONFIGURATION,\nCIFTABLE, APICTRANSACTION, VIRTUALSERVICESTATEDBCACHESUMMARY, POOLSTATEDBCACHESUMMARY, SERVERSTATEDBCACHESUMMARY, APICAGENTINTERNAL,\nAPICTRANSACTIONFLAP, APICGRAPHINSTANCES, APICEPGS, APICEPGEPS, APICDEVICEPKGVER, APICTENANTS, APICVMMDOMAINS, NSXCONFIGURATION, NSXSGTABLE,\nNSXAGENTINTERNAL, NSXSGINFO, NSXSGIPS, NSXAGENTINTERNALCLI, MAXOBJECTS." }, "recommendation": { "type": "string", "description": "Recommendation of alertconfig." }, "threshold": { "type": "string", "description": "An alert is created only when the number of events meets or exceeds this number within the chosen time frame.\nAllowed values are 1-65536.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "category": { "type": "string", "description": "Determines whether an alert is raised immediately when event occurs (realtime) or after specified number of events occurs within rolling time\nwindow.\nEnum options - REALTIME, ROLLINGWINDOW, WATERMARK.\nDefault value when not specified in API or module is interpreted by Avi Controller as REALTIME." }, "expiry_time": { "type": "string", "description": "An alert is expired and deleted after the expiry time has elapsed.\nThe original event triggering the alert remains in the event's log.\nAllowed values are 1-31536000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 86400.\nUnits(SEC)." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "source": { "type": "string", "description": "Signifies system events or the type of client logsused in this alert configuration.\nEnum options - CONN_LOGS, APP_LOGS, EVENT_LOGS, METRICS." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "alert_rule": { "type": "array", "description": "List of filters matching on events or client logs used for triggering alerts." }, "description": { "type": "string", "description": "A custom description field." }, "autoscale_alert": { "description": "This alert config applies to auto scale alerts.", "$ref": "#/definitions/ansible_truth" }, "obj_uuid": { "type": "string", "description": "Uuid of the resource for which alert was raised." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "throttle": { "type": "string", "description": "Alerts are suppressed (throttled) for this duration of time since the last alert was raised for this alert config.\nAllowed values are 0-31536000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 600.\nUnits(SEC)." }, "name": { "type": "string", "description": "Name of the alert configuration." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "enabled": { "description": "Enable or disable this alert config from generating new alerts.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "summary": { "type": "string", "description": "Summary of reason why alert is generated." }, "rolling_window": { "type": "string", "description": "Only if the number of events is reached or exceeded within the time window will an alert be generated.\nAllowed values are 1-31536000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "action_group_ref": { "type": "string", "description": "The alert config will trigger the selected alert action, which can send notifications and execute a controlscript.\nIt is a reference to an object of type actiongroupconfig." } } }, "netscaler_cs_vserver": { "type": "object", "description": "Manage content switching vserver\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance", "properties": { "comment": { "type": "string", "description": "Information about this virtual server." }, "oracleserverversion": { "type": "string", "description": "Oracle server version." }, "precedence": { "type": "string", "description": "Type of precedence to use for both RULE-based and URL-based policies on the content switching virtual server. With the default C(RULE) setting, incoming requests are evaluated against the rule-based content switching policies. If none of the rules match, the URL in the request is evaluated against the URL-based content switching policies." }, "domainname": { "type": "string", "description": "Domain name for which to change the time to live (TTL) and/or backup service IP address.\nMinimum length = 1" }, "mysqlcharacterset": { "type": "string", "description": "The character set returned by the mysql vserver." }, "rtspnat": { "description": "Enable network address translation (NAT) for real-time streaming protocol (RTSP) connections.", "$ref": "#/definitions/ansible_truth" }, "authn401": { "description": "Enable HTTP 401-response based authentication.", "$ref": "#/definitions/ansible_truth" }, "disabled": { "description": "Default: no\n\nWhen set to C(yes) the cs vserver will be disabled.\nWhen set to C(no) the cs vserver will be enabled.\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "mysqlprotocolversion": { "type": "string", "description": "The protocol version returned by the mysql vserver." }, "listenpolicy": { "type": "string", "description": "String specifying the listen policy for the content switching virtual server. Can be either the name of an existing expression or an in-line expression." }, "icmpvsrresponse": { "type": "string", "description": "Can be active or passive." }, "ttl": { "type": "string", "description": ".\nMinimum value = C(1)" }, "redirecturl": { "type": "string", "description": "URL to which traffic is redirected if the virtual server becomes unavailable. The service type of the virtual server should be either C(HTTP) or C(SSL).\nCaution: Make sure that the domain in the URL does not match the domain specified for a content switching policy. If it does, requests are continuously redirected to the unavailable virtual server.\nMinimum length = 1" }, "ipmask": { "type": "string", "description": "IP mask, in dotted decimal notation, for the IP Pattern parameter. Can have leading or trailing non-zero octets (for example, C(255.255.240.0) or C(0.0.255.255)). Accordingly, the mask specifies whether the first n bits or the last n bits of the destination IP address in a client request are to be matched with the corresponding bits in the IP pattern. The former is called a forward mask. The latter is called a reverse mask." }, "insertvserveripport": { "type": "string", "description": "Insert the virtual server's VIP address and port number in the request header. Available values function as follows:\nC(VIPADDR) - Header contains the vserver's IP address and port number without any translation.\nC(OFF) - The virtual IP and port header insertion option is disabled.\nC(V6TOV4MAPPING) - Header contains the mapped IPv4 address corresponding to the IPv6 address of the vserver and the port number. An IPv6 address can be mapped to a user-specified IPv4 address using the set ns ip6 command." }, "redirectportrewrite": { "type": "string", "description": "State of port rewrite while performing HTTP redirect." }, "port": { "type": "string", "description": "Port number for content switching virtual server.\nMinimum value = 1\nRange C(1) - C(65535)\n* in CLI is represented as 65535 in NITRO API" }, "clttimeout": { "type": "string", "description": "Idle time, in seconds, after which the client connection is terminated. The default values are:\nMinimum value = C(0)\nMaximum value = C(31536000)" }, "downstateflush": { "type": "string", "description": "Flush all active transactions associated with a virtual server whose state transitions from UP to DOWN. Do not enable this option for applications that must complete their transactions." }, "authenticationhost": { "type": "string", "description": "FQDN of the authentication virtual server. The service type of the virtual server should be either C(HTTP) or C(SSL).\nMinimum length = 3\nMaximum length = 252" }, "servicetype": { "type": "string", "description": "Protocol used by the virtual server." }, "ssl_certkey": { "type": "string", "description": "The name of the ssl certificate that is bound to this service.\nThe ssl certificate must already exist.\nCreating the certificate can be done with the M(netscaler_ssl_certkey) module.\nThis option is only applicable only when C(servicetype) is C(SSL)." }, "cookietimeout": { "type": "string", "description": ".\nMinimum value = C(0)\nMaximum value = C(1440)" }, "mysqlservercapabilities": { "type": "string", "description": "The server capabilities returned by the mysql vserver." }, "mysqlserverversion": { "type": "string", "description": "The server version string returned by the mysql vserver.\nMinimum length = 1\nMaximum length = 31" }, "backupvserver": { "type": "string", "description": "Name of the backup virtual server that you are configuring. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at sign C(@), equal sign C(=), and hyphen C(-) characters. Can be changed after the backup virtual server is created. You can assign a different backup virtual server or rename the existing virtual server.\nMinimum length = 1" }, "backupip": { "type": "string", "description": ".\nMinimum length = 1" }, "vipheader": { "type": "string", "description": "Name of virtual server IP and port header, for use with the VServer IP Port Insertion parameter.\nMinimum length = 1" }, "pushvserver": { "type": "string", "description": "Name of the load balancing virtual server, of type C(PUSH) or C(SSL_PUSH), to which the server pushes updates received on the client-facing load balancing virtual server.\nMinimum length = 1" }, "authentication": { "description": "Authenticate users who request a connection to the content switching virtual server.", "$ref": "#/definitions/ansible_truth" }, "authnvsname": { "type": "string", "description": "Name of authentication virtual server that authenticates the incoming user requests to this content switching virtual server. .\nMinimum length = 1\nMaximum length = 252" }, "netprofile": { "type": "string", "description": "The name of the network profile.\nMinimum length = 1\nMaximum length = 127" }, "pushmulticlients": { "description": "Allow multiple Web 2.0 connections from the same client to connect to the virtual server and expect updates.", "$ref": "#/definitions/ansible_truth" }, "td": { "type": "string", "description": "Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.\nMinimum value = 0\nMaximum value = 4094" }, "lbvserver": { "type": "string", "description": "The default Load Balancing virtual server." }, "httpprofilename": { "type": "string", "description": "Name of the HTTP profile containing HTTP configuration settings for the virtual server. The service type of the virtual server should be either C(HTTP) or C(SSL).\nMinimum length = 1\nMaximum length = 127" }, "rhistate": { "type": "string", "description": "A host route is injected according to the setting on the virtual servers\n* If set to C(PASSIVE) on all the virtual servers that share the IP address, the appliance always injects the hostroute.\n* If set to C(ACTIVE) on all the virtual servers that share the IP address, the appliance injects even if one virtual server is UP.\n* If set to C(ACTIVE) on some virtual servers and C(PASSIVE) on the others, the appliance, injects even if one virtual server set to C(ACTIVE) is UP." }, "targettype": { "type": "string", "description": "Virtual server target type." }, "authnprofile": { "type": "string", "description": "Name of the authentication profile to be used when authentication is turned on." }, "sopersistence": { "type": "string", "description": "Maintain source-IP based persistence on primary and backup virtual servers." }, "appflowlog": { "type": "string", "description": "Enable logging appflow flow information." }, "sobackupaction": { "type": "string", "description": "Action to be performed if spillover is to take effect, but no backup chain to spillover is usable or exists." }, "dbprofilename": { "type": "string", "description": "Name of the DB profile.\nMinimum length = 1\nMaximum length = 127" }, "cookiedomain": { "type": "string", "description": ".\nMinimum length = 1" }, "cacheable": { "description": "Use this option to specify whether a virtual server, used for load balancing or content switching, routes requests to the cache redirection virtual server before sending it to the configured servers.", "$ref": "#/definitions/ansible_truth" }, "sothreshold": { "type": "string", "description": "Depending on the spillover method, the maximum number of connections or the maximum total bandwidth (Kbps) that a virtual server can handle before spillover occurs.\nMinimum value = C(1)\nMaximum value = C(4294967287)" }, "l2conn": { "type": "string", "description": "Use L2 Parameters to identify a connection." }, "ipv46": { "type": "string", "description": "IP address of the content switching virtual server.\nMinimum length = 1" }, "name": { "type": "string", "description": "Name for the content switching virtual server. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space, colon C(:), at sign C(@), equal sign C(=), and hyphen C(-) characters.\nCannot be changed after the CS virtual server is created.\nMinimum length = 1" }, "ippattern": { "type": "string", "description": "IP address pattern, in dotted decimal notation, for identifying packets to be accepted by the virtual server. The IP Mask parameter specifies which part of the destination IP address is matched against the pattern. Mutually exclusive with the IP Address parameter.\nFor example, if the IP pattern assigned to the virtual server is C(198.51.100.0) and the IP mask is C(255.255.240.0) (a forward mask), the first 20 bits in the destination IP addresses are matched with the first 20 bits in the pattern. The virtual server accepts requests with IP addresses that range from 198.51.96.1 to 198.51.111.254. You can also use a pattern such as C(0.0.2.2) and a mask such as C(0.0.255.255) (a reverse mask).\nIf a destination IP address matches more than one IP pattern, the pattern with the longest match is selected, and the associated virtual server processes the request. For example, if the virtual servers, C(vs1) and C(vs2), have the same IP pattern, C(0.0.100.128), but different IP masks of C(0.0.255.255) and C(0.0.224.255), a destination IP address of 198.51.100.128 has the longest match with the IP pattern of C(vs1). If a destination IP address matches two or more virtual servers to the same extent, the request is processed by the virtual server whose port number matches the port number in the request." }, "disableprimaryondown": { "type": "string", "description": "Continue forwarding the traffic to backup virtual server even after the primary server comes UP from the DOWN state." }, "tcpprofilename": { "type": "string", "description": "Name of the TCP profile containing TCP configuration settings for the virtual server.\nMinimum length = 1\nMaximum length = 127" }, "mssqlserverversion": { "type": "string", "description": "The version of the MSSQL server." }, "sitedomainttl": { "type": "string", "description": ".\nMinimum value = C(1)" }, "pushlabel": { "type": "string", "description": "Expression for extracting the label from the response received from server. This string can be either an existing rule name or an inline expression. The service type of the virtual server should be either C(HTTP) or C(SSL)." }, "sopersistencetimeout": { "type": "string", "description": "Time-out value, in minutes, for spillover persistence.\nMinimum value = C(2)\nMaximum value = C(1440)" }, "casesensitive": { "description": "Consider case in URLs (for policies that use URLs instead of RULES). For example, with the C(on) setting, the URLs /a/1.html and /A/1.HTML are treated differently and can have different targets (set by content switching policies). With the C(off) setting, /a/1.html and /A/1.HTML are switched to the same target.", "$ref": "#/definitions/ansible_truth" }, "range": { "type": "string", "description": "Number of consecutive IP addresses, starting with the address specified by the IP Address parameter, to include in a range of addresses assigned to this virtual server.\nMinimum value = C(1)\nMaximum value = C(254)" }, "somethod": { "type": "string", "description": "Type of spillover used to divert traffic to the backup virtual server when the primary virtual server reaches the spillover threshold. Connection spillover is based on the number of connections. Bandwidth spillover is based on the total Kbps of incoming and outgoing traffic." }, "push": { "type": "string", "description": "Process traffic with the push virtual server that is bound to this content switching virtual server (specified by the Push VServer parameter). The service type of the push virtual server should be either C(HTTP) or C(SSL)." }, "stateupdate": { "type": "string", "description": "Enable state updates for a specific content switching virtual server. By default, the Content Switching virtual server is always UP, regardless of the state of the Load Balancing virtual servers bound to it. This parameter interacts with the global setting as follows:\nGlobal Level | Vserver Level | Result\nenabled enabled enabled\nenabled disabled enabled\ndisabled enabled enabled\ndisabled disabled disabled\nIf you want to enable state updates for only some content switching virtual servers, be sure to disable the state update parameter." }, "dnsprofilename": { "type": "string", "description": "Name of the DNS profile to be associated with the VServer. DNS profile properties will applied to the transactions processed by a VServer. This parameter is valid only for DNS and DNS-TCP VServers.\nMinimum length = 1\nMaximum length = 127" } } }, "netapp_e_amg_role": { "required": [ "ssid", "api_password", "role", "api_username", "api_url" ], "type": "object", "description": "Update a storage array to become the primary or secondary instance in an asynchronous mirror group", "properties": { "force": { "type": "string", "description": "Whether to force the role reversal regardless of the online-state of the primary" }, "ssid": { "type": "string", "description": "The ID of the primary storage array for the async mirror action" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "role": { "type": "string", "description": "Whether the array should be the primary or secondary array for the AMG" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "noSync": { "type": "string", "description": "Whether to avoid synchronization prior to role reversal" }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." } } }, "svr4pkg": { "required": [ "state", "name" ], "type": "object", "description": "Manages SVR4 packages on Solaris 10 and 11.\nThese were the native packages on Solaris <= 10 and are available as a legacy feature in Solaris 11.\nNote that this is a very basic packaging system. It will not enforce dependencies on install or remove.", "properties": { "category": { "type": "string", "description": "Install/Remove category instead of a single package." }, "src": { "type": "string", "description": "Specifies the location to install the package from. Required when C(state=present).\nCan be any path acceptable to the C(pkgadd) command's C(-d) option. e.g.: C(somefile.pkg), C(/dir/with/pkgs), C(http:/server/mypkgs.pkg).\nIf using a file or directory, they must already be accessible by the host. See the M(copy) module for a way to get them there." }, "name": { "type": "string", "description": "Package name, e.g. C(SUNWcsr)" }, "zone": { "type": "string", "description": "Default: all\n\nWhether to install the package only in the current zone, or install it into all zones.\nThe installation into all zones works only if you are working with the global zone." }, "state": { "type": "string", "description": "Whether to install (C(present)), or remove (C(absent)) a package.\nIf the package is to be installed, then I(src) is required.\nThe SVR4 package system doesn't provide an upgrade operation. You need to uninstall the old, then install the new package." }, "proxy": { "type": "string", "description": "HTTP[s] proxy to be used if C(src) is a URL." }, "response_file": { "type": "string", "description": "Specifies the location of a response file to be used if package expects input on install. (added in Ansible 1.4)" } } }, "oneandone_monitoring_policy": { "required": [ "name", "thresholds", "agent", "email", "monitoring_policy", "processes", "auth_token", "ports" ], "type": "object", "description": "Create, remove, update monitoring policies (and add/remove ports, processes, and servers). This module has a dependency on 1and1 >= 1.0", "properties": { "add_ports": { "type": "string", "description": "Ports to add to the monitoring policy." }, "thresholds": { "type": "string", "description": "Monitoring policy thresholds. Each of the suboptions have warning and critical, which both have alert and value suboptions. Warning is used to set limits for warning alerts, critical is used to set critical alerts. alert enables alert, and value is used to advise when the value is exceeded." }, "agent": { "type": "string", "description": "Set true for using agent." }, "add_servers": { "type": "string", "description": "Servers to add to the monitoring policy." }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the _wait_for methods" }, "remove_processes": { "type": "string", "description": "Processes to remove from the monitoring policy." }, "remove_servers": { "type": "string", "description": "Servers to remove from the monitoring policy." }, "state": { "type": "string", "description": "Default: present\n\nDefine a monitoring policy's state to create, remove, update." }, "remove_ports": { "type": "string", "description": "Ports to remove from the monitoring policy." }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1." }, "description": { "type": "string", "description": "Monitoring policy description. maxLength=256" }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "monitoring_policy": { "type": "string", "description": "The identifier (id or name) of the monitoring policy used with update state." }, "update_ports": { "type": "string", "description": "Ports to be updated on the monitoring policy." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" }, "processes": { "type": "string", "description": "Array of processes that will be monitoring." }, "name": { "type": "string", "description": "Monitoring policy name used with present state. Used as identifier (id or name) when used with absent state. maxLength=128" }, "email": { "type": "string", "description": "User's email. maxLength=128" }, "update_processes": { "type": "string", "description": "Processes to be updated on the monitoring policy." }, "add_processes": { "type": "string", "description": "Processes to add to the monitoring policy." }, "ports": { "type": "string", "description": "Array of ports that will be monitoring." } } }, "group": { "required": [ "name" ], "type": "object", "description": "Manage presence of groups on a host.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the group should be present or not on the remote host." }, "gid": { "type": "string", "description": "Optional I(GID) to set for the group." }, "name": { "type": "string", "description": "Name of the group to manage." }, "system": { "type": "string", "description": "Default: no\n\nIf I(yes), indicates that the group created is a system group." } } }, "oneview_fcoe_network": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage FCoE Network resources. Can create, update, or delete.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired state for the FCoE Network resource. C(present) will ensure data properties are compliant with OneView. C(absent) will remove the resource from OneView, if it exists." }, "data": { "type": "array", "description": "List with FCoE Network properties." } } }, "avi_serverautoscalepolicy": { "required": [ "name" ], "type": "object", "description": "This module is used to configure ServerAutoScalePolicy object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "use_predicted_load": { "description": "Use predicted load rather than current load.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "intelligent_autoscale": { "description": "Use avi intelligent autoscale algorithm where autoscale is performed by comparing load on the pool against estimated capacity of all the servers.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "max_scalein_adjustment_step": { "type": "string", "description": "Maximum number of servers to scalein simultaneously.\nThe actual number of servers to scalein is chosen such that target number of servers is always more than or equal to the min_size.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "intelligent_scalein_margin": { "type": "string", "description": "Maximum extra capacity as percentage of load used by the intelligent scheme.\nScalein is triggered when available capacity is more than this margin.\nAllowed values are 1-99.\nDefault value when not specified in API or module is interpreted by Avi Controller as 40." }, "description": { "type": "string", "description": "User defined description for the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "intelligent_scaleout_margin": { "type": "string", "description": "Minimum extra capacity as percentage of load used by the intelligent scheme.\nScaleout is triggered when available capacity is less than this margin.\nAllowed values are 1-99.\nDefault value when not specified in API or module is interpreted by Avi Controller as 20." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "scaleout_alertconfig_refs": { "type": "string", "description": "Trigger scaleout when alerts due to any of these alert configurations are raised.\nIt is a reference to an object of type alertconfig." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "min_size": { "type": "string", "description": "No scale-in happens once number of operationally up servers reach min_servers.\nAllowed values are 0-400." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "scalein_alertconfig_refs": { "type": "string", "description": "Trigger scalein when alerts due to any of these alert configurations are raised.\nIt is a reference to an object of type alertconfig." }, "scalein_cooldown": { "type": "string", "description": "Cooldown period during which no new scalein is triggered to allow previous scalein to successfully complete.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "max_scaleout_adjustment_step": { "type": "string", "description": "Maximum number of servers to scaleout simultaneously.\nThe actual number of servers to scaleout is chosen such that target number of servers is always less than or equal to the max_size.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "scaleout_cooldown": { "type": "string", "description": "Cooldown period during which no new scaleout is triggered to allow previous scaleout to successfully complete.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "max_size": { "type": "string", "description": "Maximum number of servers after scaleout.\nAllowed values are 0-400." }, "name": { "type": "string", "description": "Name of the object." } } }, "mail": { "required": [ "subject" ], "type": "object", "description": "This module is useful for sending emails from playbooks.\nOne may wonder why automate sending emails? In complex environments there are from time to time processes that cannot be automated, either because you lack the authority to make it so, or because not everyone agrees to a common approach.\nIf you cannot automate a specific step, but the step is non-blocking, sending out an email to the responsible party to make him perform his part of the bargain is an elegant way to put the responsibility in someone else's lap.\nOf course sending out a mail can be equally useful as a way to notify one or more people in a team that a specific action has been (successfully) taken.", "properties": { "body": { "type": "string", "description": "Default: $subject\n\nThe body of the email being sent." }, "username": { "type": "string", "description": "If SMTP requires username" }, "from": { "type": "string", "description": "Default: root\n\nThe email-address the mail is sent from. May contain address and phrase." }, "to": { "type": "string", "description": "Default: root\n\nThe email-address(es) the mail is being sent to. This is a comma-separated list, which may contain address and phrase portions." }, "cc": { "type": "string", "description": "The email-address(es) the mail is being copied to. This is a comma-separated list, which may contain address and phrase portions." }, "charset": { "type": "string", "description": "Default: us-ascii\n\nThe character set of email being sent" }, "bcc": { "type": "string", "description": "The email-address(es) the mail is being 'blind' copied to. This is a comma-separated list, which may contain address and phrase portions." }, "port": { "type": "string", "description": "Default: 25\n\nThe mail server port" }, "headers": { "type": "string", "description": "A vertical-bar-separated list of headers which should be added to the message. Each individual header is specified as C(header=value) (see example below)." }, "host": { "type": "string", "description": "Default: localhost\n\nThe mail server" }, "subtype": { "type": "string", "description": "Default: plain\n\nThe minor mime type, can be either text or html. The major type is always text." }, "password": { "type": "string", "description": "If SMTP requires password" }, "attach": { "type": "string", "description": "A space-separated list of pathnames of files to attach to the message. Attached files will have their content-type set to C(application/octet-stream)." }, "subject": { "type": "string", "description": "The subject of the email being sent." } } }, "azure_rm_publicip_facts": { "type": "object", "description": "Get facts for a specific public IP or all public IPs within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific Public IP." }, "resource_group": { "type": "string", "description": "Limit results by resource group. Required when using name parameter." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "ovirt_datacenter_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV datacenters.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search datacenter I(X) use following pattern: I(name=X)" } } }, "pushover": { "required": [ "msg", "user_key", "app_token" ], "type": "object", "description": "Send notifications via pushover, to subscriber list of devices, and email addresses. Requires pushover app on devices.", "properties": { "msg": { "type": "string", "description": "What message you wish to send." }, "user_key": { "type": "string", "description": "Pushover issued authentication key for your user." }, "app_token": { "type": "string", "description": "Pushover issued token identifying your pushover app." }, "pri": { "type": "string", "description": "Message priority (see U(https://pushover.net) for details.)" } } }, "dladm_linkprop": { "allOf": [ { "allOf": [ { "not": { "required": [ "link", "nic", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "link" ], "type": "object" }, { "required": [ "nic" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "property", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "property" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Set / reset link properties on Solaris/illumos systems.", "properties": { "temporary": { "description": "Specifies that lin property configuration is temporary. Temporary link property configuration does not persist across reboots.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Specifies the name of the property we want to manage." }, "nic": { "type": "string", "description": "Link interface name." }, "value": { "type": "string", "description": "Specifies the value we want to set for the link property." }, "state": { "type": "string", "description": "Default: present\n\nSet or reset the property value." }, "link": { "type": "string", "description": "Link interface name." }, "interface": { "type": "string", "description": "Link interface name." }, "property": { "type": "string", "description": "Specifies the name of the property we want to manage." } } }, "azure_rm_dnszone_facts": { "type": "object", "description": "Get facts for a specific DNS zone or all DNS zones within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific zone." }, "resource_group": { "type": "string", "description": "Limit results by resource group. Required when filtering by name." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "cs_instance_nic_secondaryip": { "allOf": [ { "allOf": [ { "not": { "required": [ "vm_guest_ip", "secondary_ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vm", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "vm" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and remove secondary IPs to and from a NIC of an instance.", "properties": { "secondary_ip": { "type": "string", "description": "Secondary IP address to be added to the instance nic.\nIf not set, the API always returns a new IP address and idempotency is not given." }, "vm_guest_ip": { "type": "string", "description": "Secondary IP address to be added to the instance nic.\nIf not set, the API always returns a new IP address and idempotency is not given." }, "account": { "type": "string", "description": "Account the instance is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "network": { "type": "string", "description": "Name of the network.\nRequired to find the NIC if instance has multiple networks assigned." }, "zone": { "type": "string", "description": "Name of the zone in which the instance is deployed in.\nIf not set, default zone is used." }, "domain": { "type": "string", "description": "Domain the instance is related to." }, "vm": { "type": "string", "description": "Name of instance." }, "project": { "type": "string", "description": "Name of the project the instance is deployed in." }, "state": { "type": "string", "description": "Default: present\n\nState of the ipaddress." }, "vpc": { "type": "string", "description": "Name of the VPC the C(vm) is related to." }, "name": { "type": "string", "description": "Name of instance." } } }, "pn_vlan": { "required": [ "pn_vlanid", "state" ], "type": "object", "description": "Execute vlan-create or vlan-delete command.\nVLANs are used to isolate network traffic at Layer 2.The VLAN identifiers 0 and 4095 are reserved and cannot be used per the IEEE 802.1Q standard. The range of configurable VLAN identifiers is 2 through 4092.", "properties": { "pn_scope": { "type": "string", "description": "Specify a scope for the VLAN.\nRequired for vlan-create." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_vlanid": { "type": "string", "description": "Specify a VLAN identifier for the VLAN. This is a value between 2 and 4092." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to create vlan and 'absent' to delete vlan." }, "pn_ports": { "type": "string", "description": "Specifies the switch network data port number, list of ports, or range of ports. Port numbers must ne in the range of 1 to 64." }, "pn_untagged_ports": { "type": "string", "description": "Specifies the ports that should have untagged packets mapped to the VLAN. Untagged packets are packets that do not contain IEEE 802.1Q VLAN tags." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the cli on." }, "pn_stats": { "type": "string", "description": "Specify if you want to collect statistics for a VLAN. Statistic collection is enabled by default." }, "pn_description": { "type": "string", "description": "Specify a description for the VLAN." } } }, "azure_rm_subnet": { "allOf": [ { "allOf": [ { "not": { "required": [ "address_prefix_cidr", "address_prefix" ], "type": "object" } }, { "oneOf": [ { "required": [ "address_prefix_cidr" ], "type": "object" }, { "required": [ "address_prefix" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "virtual_network_name", "virtual_network" ], "type": "object" } }, { "oneOf": [ { "required": [ "virtual_network_name" ], "type": "object" }, { "required": [ "virtual_network" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "security_group_name", "security_group" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update or delete a subnet within a given virtual network. Allows setting and updating the address prefix CIDR, which must be valid within the context of the virtual network. Use the azure_rm_networkinterface module to associate interfaces with the subnet and assign specific IP addresses.", "properties": { "name": { "type": "string", "description": "Name of the subnet." }, "resource_group": { "type": "string", "description": "Name of resource group." }, "virtual_network_name": { "type": "string", "description": "Name of an existing virtual network with which the subnet is or will be associated." }, "security_group_name": { "type": "string", "description": "Name of an existing security group with which to associate the subnet." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the subnet. Use 'present' to create or update a subnet and 'absent' to delete a subnet." }, "address_prefix": { "type": "string", "description": "CIDR defining the IPv4 address space of the subnet. Must be valid within the context of the virtual network." }, "address_prefix_cidr": { "type": "string", "description": "CIDR defining the IPv4 address space of the subnet. Must be valid within the context of the virtual network." }, "security_group": { "type": "string", "description": "Name of an existing security group with which to associate the subnet." }, "virtual_network": { "type": "string", "description": "Name of an existing virtual network with which the subnet is or will be associated." } } }, "pn_vlag": { "required": [ "pn_name", "state" ], "type": "object", "description": "Execute vlag-create/vlag-delete/vlag-modify command.\nA virtual link aggregation group (VLAG) allows links that are physically connected to two different Pluribus Networks devices to appear as a single trunk to a third device. The third device can be a switch, server, or any Ethernet device. A VLAG can provide Layer 2 multipathing, which allows you to create redundancy by increasing bandwidth, enabling multiple parallel paths between nodes and loadbalancing traffic where alternative paths exist.", "properties": { "pn_name": { "type": "string", "description": "The C(pn_name) takes a valid name for vlag configuration." }, "pn_lacp_fallback": { "type": "string", "description": "Specify the LACP fallback mode as bundles or individual." }, "pn_lacp_fallback_timeout": { "type": "string", "description": "Specify the LACP fallback timeout in seconds. The range is between 30 and 60 seconds with a default value of 50 seconds." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_lacp_timeout": { "type": "string", "description": "Specify the LACP timeout as slow(30 seconds) or fast(4 seconds)." }, "pn_failover_action": { "type": "string", "description": "Specify the failover action as move or ignore." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_lacp_mode": { "type": "string", "description": "Specify the LACP mode." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to create vlag, 'absent' to delete vlag and 'update' to modify vlag." }, "pn_peer_port": { "type": "string", "description": "Specify the peer VLAG port.\nRequired for vlag-create." }, "pn_peer_switch": { "type": "string", "description": "Specify the fabric-name of the peer switch." }, "pn_mode": { "type": "string", "description": "Specify the mode for the VLAG. Active-standby indicates one side is active and the other side is in standby mode. Active-active indicates that both sides of the vlag are up by default." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run this command on." }, "pn_port": { "type": "string", "description": "Specify the local VLAG port.\nRequired for vlag-create." } } }, "nxos_ip_interface": { "required": [ "interface" ], "type": "object", "description": "Manages Layer 3 attributes for IPv4 and IPv6 interfaces.", "properties": { "interface": { "type": "string", "description": "Full name of interface, i.e. Ethernet1/1, vlan10." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "mask": { "type": "string", "description": "Subnet mask for IPv4 or IPv6 Address in decimal format." }, "addr": { "type": "string", "description": "IPv4 or IPv6 Address." } } }, "eos_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on Arista EOS network devices.", "properties": { "neighbors": { "type": "string", "description": "Check the operational state of given interface C(name) for LLDP neighbor.\nThe following suboptions are available." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down), I(tx_rate) and I(rx_rate)." }, "name": { "type": "string", "description": "Name of the Interface to be configured on remote device. The name of interface should be in expanded format and not abbreviated." }, "enabled": { "type": "string", "description": "Default: True\n\nInterface link status. If the value is I(True) the interface state will be enabled, else if value is I(False) interface will be in disable (shutdown) state." }, "mtu": { "type": "string", "description": "Set maximum transmission unit size in bytes of transmit packet for the interface given in C(name) option." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps) for the interface given in C(name) option.\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) means present and operationally up and C(down) means present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions. Each of the entry in aggregate list should define name of interface C(name) and other options as required." }, "speed": { "type": "string", "description": "This option configures autoneg and speed/duplex/flowcontrol for the interface given in C(name) option." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps) for the interface given in C(name) option.\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface upto 240 characters." } } }, "name": { "type": "string" }, "ec2_vpc_dhcp_options": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "This module removes, or creates DHCP option sets, and can associate them to a VPC. Optionally, a new DHCP Options set can be created that converges a VPC's existing DHCP option set with values provided. When dhcp_options_id is provided, the module will 1. remove (with state='absent') 2. ensure tags are applied (if state='present' and tags are provided 3. attach it to a VPC (if state='present' and a vpc_id is provided. If any of the optional values are missing, they will either be treated as a no-op (i.e., inherit what already exists for the VPC) To remove existing options while inheriting, supply an empty value (e.g. set ntp_servers to [] if you want to remove them from the VPC's options) Most of the options should be self-explanatory.", "properties": { "dns_servers": { "type": "string", "description": "Default: None\n\nA list of hosts to set the DNS servers for the VPC to. (Should be a list of IP addresses rather than host names.)" }, "tags": { "type": "string", "description": "Default: None\n\nTags to be applied to a VPC options set if a new one is created, or if the resource_id is provided. (options must match)" }, "ntp_servers": { "type": "array", "description": "Default: None\n\nList of hosts to advertise as NTP servers for the VPC." }, "domain_name": { "type": "string", "description": "Default: None\n\nThe domain name to set in the DHCP option sets" }, "delete_old": { "type": "string", "description": "Default: True\n\nWhether to delete the old VPC DHCP option set when associating a new one. This is primarily useful for debugging/development purposes when you want to quickly roll back to the old option set. Note that this setting will be ignored, and the old DHCP option set will be preserved, if it is in use by any other VPC. (Otherwise, AWS will return an error.)" }, "state": { "type": "string", "description": "Default: present\n\ncreate/assign or remove the DHCP options. If state is set to absent, then a DHCP options set matched either by id, or tags and options will be removed if possible." }, "netbios_node_type": { "type": "string", "description": "Default: None\n\nNetBIOS node type to advertise in the DHCP options. The AWS recommendation is to use 2 (when using netbios name services) http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html" }, "vpc_id": { "type": "string", "description": "Default: None\n\nVPC ID to associate with the requested DHCP option set. If no vpc id is provided, and no matching option set is found then a new DHCP option set is created." }, "resource_tags": { "type": "string", "description": "Default: None\n\nTags to be applied to a VPC options set if a new one is created, or if the resource_id is provided. (options must match)" }, "inherit_existing": { "type": "string", "description": "For any DHCP options not specified in these parameters, whether to inherit them from the options set already applied to vpc_id, or to reset them to be empty." }, "dhcp_options_id": { "type": "string", "description": "Default: None\n\nThe resource_id of an existing DHCP options set. If this is specified, then it will override other settings, except tags (which will be updated to match)" }, "netbios_name_servers": { "type": "array", "description": "Default: None\n\nList of hosts to advertise as NetBIOS servers." } } }, "clc_server": { "type": "object", "description": "An Ansible module to Create, Delete, Start and Stop servers in CenturyLink Cloud.", "properties": { "anti_affinity_policy_name": { "type": "string", "description": "Default: None\n\nThe anti-affinity policy to assign to the server. This is mutually exclusive with 'anti_affinity_policy_id'." }, "storage_type": { "type": "string", "description": "Default: standard\n\nThe type of storage to attach to the server." }, "anti_affinity_policy_id": { "type": "string", "description": "Default: None\n\nThe anti-affinity policy to assign to the server. This is mutually exclusive with 'anti_affinity_policy_name'." }, "ttl": { "type": "string", "description": "Default: None\n\nThe time to live for the server in seconds. The server will be deleted when this time expires." }, "count_group": { "type": "string", "description": "Default: None\n\nRequired when exact_count is specified. The Server Group use to determine how many severs to deploy." }, "secondary_dns": { "type": "string", "description": "Default: None\n\nSecondary DNS used by the server." }, "custom_fields": { "type": "string", "description": "The list of custom fields to set on the server." }, "password": { "type": "string", "description": "Default: None\n\nPassword for the administrator / root user" }, "group": { "type": "string", "description": "Default: Default Group\n\nThe Server Group to create servers under." }, "exact_count": { "type": "string", "description": "Default: None\n\nRun in idempotent mode. Will insure that this exact number of servers are running in the provided group, creating and deleting them to reach that count. Requires count_group to be set." }, "state": { "type": "string", "description": "Default: present\n\nThe state to insure that the provided resources are in." }, "cpu_autoscale_policy_id": { "type": "string", "description": "Default: None\n\nThe autoscale policy to assign to the server." }, "template": { "type": "string", "description": "Default: None\n\nThe template to use for server creation. Will search for a template if a partial string is provided. This is required when state is 'present'" }, "memory": { "type": "string", "description": "Default: 1\n\nMemory in GB." }, "server_ids": { "type": "string", "description": "Required for started, stopped, and absent states. A list of server Ids to insure are started, stopped, or absent." }, "type": { "type": "string", "description": "Default: standard\n\nThe type of server to create." }, "managed_os": { "type": "string", "description": "Whether to create the server as 'Managed' or not." }, "location": { "type": "string", "description": "Default: None\n\nThe Datacenter to create servers in." }, "additional_disks": { "type": "string", "description": "The list of additional disks for the server" }, "description": { "type": "string", "description": "Default: None\n\nThe description to set for the server." }, "add_public_ip": { "type": "string", "description": "Whether to add a public ip to the server" }, "alert_policy_id": { "type": "string", "description": "Default: None\n\nThe alert policy to assign to the server. This is mutually exclusive with 'alert_policy_name'." }, "alert_policy_name": { "type": "string", "description": "Default: None\n\nThe alert policy to assign to the server. This is mutually exclusive with 'alert_policy_id'." }, "packages": { "type": "string", "description": "The list of blue print packages to run on the server after its created." }, "ip_address": { "type": "string", "description": "Default: None\n\nThe IP Address for the server. One is assigned if not provided." }, "os_type": { "type": "string", "description": "Default: None\n\nOnly required for bare metal servers. Specifies the OS to provision with the bare metal server." }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the provisioning tasks to finish before returning." }, "count": { "type": "string", "description": "Default: 1\n\nThe number of servers to build (mutually exclusive with exact_count)" }, "name": { "type": "string", "description": "Default: None\n\nA 1 to 6 character identifier to use for the server. This is required when state is 'present'" }, "network_id": { "type": "string", "description": "Default: None\n\nThe network UUID on which to create servers." }, "primary_dns": { "type": "string", "description": "Default: None\n\nPrimary DNS used by the server." }, "alias": { "type": "string", "description": "Default: None\n\nThe account alias to provision the servers under." }, "public_ip_ports": { "type": "string", "description": "A list of ports to allow on the firewall to the servers public ip, if add_public_ip is set to True." }, "source_server_password": { "type": "string", "description": "Default: None\n\nThe password for the source server if a clone is specified." }, "public_ip_protocol": { "type": "string", "description": "Default: TCP\n\nThe protocol to use for the public ip if add_public_ip is set to True." }, "configuration_id": { "type": "string", "description": "Default: None\n\nOnly required for bare metal servers. Specifies the identifier for the specific configuration type of bare metal server to deploy." }, "cpu": { "type": "string", "description": "Default: 1\n\nHow many CPUs to provision on the server" } } }, "aci_aep": { "allOf": [ { "allOf": [ { "not": { "required": [ "aep", "aep_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "aep" ], "type": "object" }, { "required": [ "aep_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "infra_vlan", "infrastructure_vlan" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Connect to external virtual and physical domains by using attachable Access Entity Profiles (AEP) on Cisco ACI fabrics.", "properties": { "aep": { "type": "string", "description": "The name of the Attachable Access Entity Profile." }, "name": { "type": "string", "description": "The name of the Attachable Access Entity Profile." }, "descr": { "type": "string", "description": "Description for the AEP." }, "infra_vlan": { "description": "Default: no\n\nEnable infrastructure VLAN.\nThe hypervisor functions of the AEP.\nC(no) will disable the infrastructure vlan if it is enabled.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "infrastructure_vlan": { "description": "Default: no\n\nEnable infrastructure VLAN.\nThe hypervisor functions of the AEP.\nC(no) will disable the infrastructure vlan if it is enabled.", "$ref": "#/definitions/ansible_truth" }, "aep_name": { "type": "string", "description": "The name of the Attachable Access Entity Profile." }, "description": { "type": "string", "description": "Description for the AEP." } } }, "ec2_vpc_route_table": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "Manage route tables for AWS virtual private clouds", "properties": { "subnets": { "type": "string", "description": "An array of subnets to add to this route table. Subnets may be specified by either subnet ID, Name tag, or by a CIDR such as '10.0.0.0/24'." }, "tags": { "type": "object", "description": "A dictionary of resource tags of the form: { tag1: value1, tag2: value2 }. Tags are used to uniquely identify route tables within a VPC when the route_table_id is not supplied." }, "routes": { "type": "array", "description": "Default: None\n\nList of routes in the route table. Routes are specified as dicts containing the keys 'dest' and one of 'gateway_id', 'instance_id', 'interface_id', or 'vpc_peering_connection_id'. If 'gateway_id' is specified, you can refer to the VPC's IGW by using the value 'igw'. Routes are required for present states." }, "state": { "type": "string", "description": "Default: present\n\nCreate or destroy the VPC route table" }, "lookup": { "type": "string", "description": "Default: tag\n\nLook up route table by either tags or by route table ID. Non-unique tag lookup will fail. If no tags are specifed then no lookup for an existing route table is performed and a new route table will be created. To change tags of a route table, you must look up by id." }, "vpc_id": { "type": "string", "description": "VPC ID of the VPC in which to create the route table." }, "route_table_id": { "type": "string", "description": "The ID of the route table to update or delete." }, "resource_tags": { "type": "object", "description": "A dictionary of resource tags of the form: { tag1: value1, tag2: value2 }. Tags are used to uniquely identify route tables within a VPC when the route_table_id is not supplied." }, "propagating_vgw_ids": { "type": "string", "description": "Default: None\n\nEnable route propagation from virtual gateways specified by ID." } } }, "onyx_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on Mellanox ONYX network devices.", "properties": { "name": { "type": "string", "description": "Name of the L3 interface." }, "purge": { "description": "Purge L3 interfaces not defined in the I(aggregate) parameter.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration." }, "ipv4": { "type": "string", "description": "IPv4 of the L3 interface." }, "ipv6": { "type": "string", "description": "IPv6 of the L3 interface (not supported for now)." }, "aggregate": { "type": "array", "description": "List of L3 interfaces definitions" } } }, "avi_tenant": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Tenant object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "User defined description for the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "created_by": { "type": "string", "description": "Creator of this tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "config_settings": { "type": "string", "description": "Tenantconfiguration settings for tenant." }, "local": { "description": "Boolean flag to set local.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "nios_dns_view": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "view" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "view" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds and/or removes instances of DNS view objects from Infoblox NIOS servers. This module manages NIOS C(view) objects using the Infoblox WAPI interface over REST.", "properties": { "comment": { "type": "string", "description": "Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance." }, "name": { "type": "string", "description": "Specifies the name of the DNS view to add and/or remove from the system configuration based on the setting of the C(state) argument." }, "network_view": { "type": "string", "description": "Default: default\n\nSpecifies the name of the network view to assign the configured DNS view to. The network view must already be configured on the target system." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the intended state of the instance of the object on the NIOS server. When this value is set to C(present), the object is configured on the device and when this value is set to C(absent) the value is removed (if necessary) from the device." }, "extattrs": { "type": "string", "description": "Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration." }, "view": { "type": "string", "description": "Specifies the name of the DNS view to add and/or remove from the system configuration based on the setting of the C(state) argument." } } }, "facter": { "type": "object", "description": "Runs the I(facter) discovery program (U(https://github.com/puppetlabs/facter)) on the remote system, returning JSON data that can be useful for inventory purposes.", "properties": {} }, "nxos_linkagg": { "required": [ "group" ], "type": "object", "description": "This module provides declarative management of link aggregation groups on Cisco NXOS devices.", "properties": { "force": { "type": "string", "description": "When true it forces link aggregation group members to match what is declared in the members param. This can be used to remove members." }, "purge": { "type": "string", "description": "Purge links not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Default: True\n\nMode for the link aggregation group." }, "members": { "type": "array", "description": "List of interfaces that will be managed in the link aggregation group." }, "min_links": { "type": "string", "description": "Minimum number of ports required up before bringing up the link aggregation group." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." }, "group": { "type": "string", "description": "Channel-group number for the port-channel Link aggregation group." } } }, "postgresql_lang": { "required": [ "lang" ], "type": "object", "description": "Adds, removes or changes procedural languages with a PostgreSQL database.\nThis module allows you to add a language, remote a language or change the trust relationship with a PostgreSQL database. The module can be used on the machine where executed or on a remote host.\nWhen removing a language from a database, it is possible that dependencies prevent the database from being removed. In that case, you can specify casade to automatically drop objects that depend on the language (such as functions in the language). In case the language can't be deleted because it is required by the database system, you can specify fail_on_drop=no to ignore the error.\nBe carefull when marking a language as trusted since this could be a potential security breach. Untrusted languages allow only users with the PostgreSQL superuser privilege to use this language to create new functions.", "properties": { "lang": { "type": "string", "description": "name of the procedural language to add, remove or change" }, "cascade": { "type": "string", "description": "when dropping a language, also delete object that depend on this language.\nonly used when C(state=absent)." }, "login_user": { "type": "string", "description": "Default: postgres\n\nUser used to authenticate with PostgreSQL" }, "login_host": { "type": "string", "description": "Default: localhost\n\nHost running PostgreSQL where you want to execute the actions." }, "db": { "type": "string", "description": "name of database where the language will be added, removed or changed" }, "force_trust": { "type": "string", "description": "marks the language as trusted, even if it's marked as untrusted in pg_pltemplate.\nuse with care!" }, "state": { "type": "string", "description": "Default: present\n\nThe state of the language for the selected database" }, "login_password": { "type": "string", "description": "Password used to authenticate with PostgreSQL (must match C(login_user))" }, "trust": { "type": "string", "description": "make this language trusted for the selected db" }, "fail_on_drop": { "type": "string", "description": "Default: yes\n\nif C(yes), fail when removing a language. Otherwise just log and continue\nin some cases, it is not possible to remove a language (used by the db-system). When dependencies block the removal, consider using C(cascade)." }, "port": { "type": "string", "description": "Default: 5432\n\nDatabase port to connect to." } } }, "cs_loadbalancer_rule_member": { "allOf": [ { "allOf": [ { "not": { "required": [ "ip_address", "public_ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vms", "vm" ], "type": "object" } }, { "oneOf": [ { "required": [ "vms" ], "type": "object" }, { "required": [ "vm" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and remove load balancer rule members.", "properties": { "public_ip": { "type": "string", "description": "Public IP address from where the network traffic will be load balanced from.\nOnly needed to find the rule if C(name) is not unique." }, "account": { "type": "string", "description": "Account the rule is related to." }, "name": { "type": "string", "description": "The name of the load balancer rule." }, "zone": { "type": "string", "description": "Name of the zone in which the rule should be located.\nIf not set, default zone is used." }, "domain": { "type": "string", "description": "Domain the rule is related to." }, "vm": { "type": "array", "description": "List of VMs to assign to or remove from the rule." }, "project": { "type": "string", "description": "Name of the project the firewall rule is related to." }, "state": { "type": "string", "description": "Default: present\n\nShould the VMs be present or absent from the rule." }, "ip_address": { "type": "string", "description": "Public IP address from where the network traffic will be load balanced from.\nOnly needed to find the rule if C(name) is not unique." }, "vms": { "type": "array", "description": "List of VMs to assign to or remove from the rule." } } }, "gcp_forwarding_rule": { "required": [ "forwarding_rule_name", "state" ], "type": "object", "description": "Create, Update or Destroy a Forwarding_Rule. See U(https://cloud.google.com/compute/docs/load-balancing/http/target-proxies) for an overview. More details on the Global Forwarding_Rule API can be found at U(https://cloud.google.com/compute/docs/reference/latest/globalForwardingRules) More details on the Forwarding Rules API can be found at U(https://cloud.google.com/compute/docs/reference/latest/forwardingRules)", "properties": { "protocol": { "type": "string", "description": "For global forwarding rules, TCP, UDP, ESP, AH, SCTP or ICMP. Default is TCP." }, "target": { "type": "string", "description": "Target resource for forwarding rule. For global proxy, this is a Global TargetProxy resource. Required for external load balancing (including Global load balancing)" }, "region": { "type": "string", "description": "The region for this forwarding rule. Currently, only 'global' is supported." }, "forwarding_rule_name": { "type": "string", "description": "Name of the Forwarding_Rule." }, "port_range": { "type": "string", "description": "For global forwarding rules, must be set to 80 or 8080 for TargetHttpProxy, and 443 for TargetHttpsProxy or TargetSslProxy." }, "state": { "type": "string", "description": "The state of the Forwarding Rule. 'present' or 'absent'" }, "address": { "type": "string", "description": "IPv4 or named IP address. Must be of the same scope (regional, global). Reserved addresses can (and probably should) be used for global forwarding rules. You may reserve IPs from the console or via the gce_eip module." } } }, "eos_system": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain_search", "domain_list" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of node system attributes on Arista EOS devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "lookup_source": { "type": "string", "description": "Provides one or more source interfaces to use for performing DNS lookups. The interface provided in C(lookup_source) can only exist in a single VRF. This argument accepts either a list of interface names or a list of hashes that configure the interface name and VRF name. See examples." }, "domain_search": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "domain_list": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "domain_name": { "type": "string", "description": "Configure the IP domain name on the remote device to the provided value. Value should be in the dotted name form and will be appended to the C(hostname) to create a fully-qualified domain name." }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "name_servers": { "type": "array", "description": "List of DNS name servers by IP address to use to perform name resolution lookups. This argument accepts either a list of DNS servers or a list of hashes that configure the name server and VRF name. See examples." } } }, "a10_virtual_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "virtual_server_status", "status" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "virtual_server", "vip", "virtual" ], "type": "object" } }, { "oneOf": [ { "required": [ "virtual_server" ], "type": "object" }, { "required": [ "vip" ], "type": "object" }, { "required": [ "virtual" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "virtual_server_ip", "ip", "address" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SLB (Server Load Balancing) virtual server objects on A10 Networks devices via aXAPIv2.", "properties": { "status": { "type": "string", "description": "Default: enable\n\nThe SLB virtual server status, such as enabled or disabled." }, "ip": { "type": "string", "description": "The SLB virtual server IPv4 address." }, "partition": { "type": "string", "description": "set active-partition" }, "virtual_server_ports": { "type": "string", "description": "A list of ports to create for the virtual server. Each list item should be a dictionary which specifies the C(port:) and C(type:), but can also optionally specify the C(service_group:) as well as the C(status:). See the examples below for details. This parameter is required when C(state) is C(present)." }, "vip": { "type": "string", "description": "The SLB (Server Load Balancing) virtual server name." }, "virtual": { "type": "string", "description": "The SLB (Server Load Balancing) virtual server name." }, "state": { "type": "string", "description": "Default: present\n\nIf the specified virtual server should exist." }, "virtual_server_status": { "type": "string", "description": "Default: enable\n\nThe SLB virtual server status, such as enabled or disabled." }, "address": { "type": "string", "description": "The SLB virtual server IPv4 address." }, "virtual_server_ip": { "type": "string", "description": "The SLB virtual server IPv4 address." }, "virtual_server": { "type": "string", "description": "The SLB (Server Load Balancing) virtual server name." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." } } }, "avi_role": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Role object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Name of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "privileges": { "type": "array", "description": "List of permission." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "ec2_vpc_igw": { "required": [ "vpc_id" ], "type": "object", "description": "Manage an AWS VPC Internet gateway", "properties": { "vpc_id": { "type": "string", "description": "The VPC ID for the VPC in which to manage the Internet Gateway." }, "state": { "type": "string", "description": "Default: present\n\nCreate or terminate the IGW" } } }, "ovh_ip_loadbalancing_backend": { "required": [ "endpoint", "name", "application_key", "application_secret", "consumer_key", "backend" ], "type": "object", "description": "Manage OVH (French European hosting provider) LoadBalancing IP backends", "properties": { "endpoint": { "type": "string", "description": "The endpoint to use ( for instance ovh-eu)" }, "name": { "type": "string", "description": "Name of the LoadBalancing internal name (ip-X.X.X.X)" }, "weight": { "type": "string", "description": "Default: 8\n\nDetermines the weight for this backend" }, "probe": { "type": "string", "description": "Default: none\n\nDetermines the type of probe to use for this backend" }, "application_key": { "type": "string", "description": "The applicationKey to use" }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the backend is to be created/modified or deleted" }, "application_secret": { "type": "string", "description": "The application secret to use" }, "timeout": { "type": "string", "description": "Default: 120\n\nThe timeout in seconds used to wait for a task to be completed." }, "consumer_key": { "type": "string", "description": "The consumer key to use" }, "backend": { "type": "string", "description": "The IP address of the backend to update / modify / delete" } } }, "win_path": { "required": [ "elements" ], "type": "object", "description": "Allows element-based ordering, addition, and removal of Windows path environment variables.", "properties": { "scope": { "type": "string", "description": "Default: machine\n\nThe level at which the environment variable specified by C(name) should be managed (either for the current user or global machine scope)." }, "state": { "type": "string", "description": "Whether the path elements specified in C(elements) should be present or absent." }, "elements": { "type": "string", "description": "A single path element, or a list of path elements (ie, directories) to add or remove.\nWhen multiple elements are included in the list (and C(state) is C(present)), the elements are guaranteed to appear in the same relative order in the resultant path value.\nVariable expansions (eg, C(%VARNAME%)) are allowed, and are stored unexpanded in the target path element.\nAny existing path elements not mentioned in C(elements) are always preserved in their current order.\nNew path elements are appended to the path, and existing path elements may be moved closer to the end to satisfy the requested ordering.\nPaths are compared in a case-insensitive fashion, and trailing backslashes are ignored for comparison purposes. However, note that trailing backslashes in YAML require quotes." }, "name": { "type": "string", "description": "Default: PATH\n\nTarget path environment variable name" } } }, "ios_static_route": { "type": "object", "description": "This module provides declarative management of static IP routes on Cisco IOS network devices.", "properties": { "mask": { "type": "string", "description": "Network prefix mask of the static route." }, "prefix": { "type": "string", "description": "Network prefix of the static route." }, "admin_distance": { "type": "string", "description": "Admin distance of the static route." }, "state": { "type": "string", "description": "Default: present\n\nState of the static route configuration." }, "next_hop": { "type": "string", "description": "Next hop IP of the static route." }, "aggregate": { "type": "array", "description": "List of static route definitions." } } }, "dellos9_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running OS9. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "ce_snmp_user": { "type": "object", "description": "Manages SNMP user configurations on CloudEngine switches.", "properties": { "priv_key": { "type": "string", "description": "The encryption password. Password length 8-255 characters." }, "aaa_local_user": { "type": "string", "description": "Unique name to identify the local user." }, "auth_key": { "type": "string", "description": "The authentication password. Password length, 8-255 characters." }, "usm_user_name": { "type": "string", "description": "Unique name to identify the USM user." }, "acl_number": { "type": "string", "description": "Access control list number." }, "auth_protocol": { "type": "string", "description": "Authentication protocol." }, "remote_engine_id": { "type": "string", "description": "Remote engine id of the USM user." }, "priv_protocol": { "type": "string", "description": "Encryption protocol." }, "user_group": { "type": "string", "description": "Name of the group where user belongs to." } } }, "aws_ses_identity": { "required": [ "identity" ], "type": "object", "description": "This module allows the user to manage verified email and domain identity for SES.\nThis covers verifying and removing identities as well as setting up complaint, bounce and delivery notification settings.", "properties": { "bounce_notifications": { "type": "string", "description": "Setup the SNS topic used to report bounce notifications.\nIf omitted, bounce notifications will not be delivered to a SNS topic.\nIf bounce notifications are not delivered to a SNS topic, I(feedback_forwarding) must be enabled." }, "feedback_forwarding": { "description": "Default: True\n\nWhether or not to enable feedback forwarding.\nThis can only be false if both I(bounce_notifications) and I(complaint_notifications) specify SNS topics.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nWhether to create(or update) or delete the identity." }, "delivery_notifications": { "type": "string", "description": "Setup the SNS topic used to report delivery notifications.\nIf omitted, delivery notifications will not be delivered to a SNS topic." }, "complaint_notifications": { "type": "string", "description": "Setup the SNS topic used to report complaint notifications.\nIf omitted, complaint notifications will not be delivered to a SNS topic.\nIf complaint notifications are not delivered to a SNS topic, I(feedback_forwarding) must be enabled." }, "identity": { "type": "string", "description": "This is the email address or domain to verify / delete.\nIf this contains an '@' then it will be considered an email. Otherwise it will be considered a domain." } } }, "ipadm_addr": { "allOf": [ { "allOf": [ { "not": { "required": [ "address", "addr" ], "type": "object" } } ] } ], "type": "object", "description": "Create/delete static/dynamic IP addresses on network interfaces on Solaris/illumos systems.\nUp/down static/dynamic IP addresses on network interfaces on Solaris/illumos systems.\nManage IPv6 link-local addresses on network interfaces on Solaris/illumos systems.", "properties": { "addrtype": { "type": "string", "description": "Default: static\n\nSpecifiies a type of IP address to configure." }, "temporary": { "type": "string", "description": "Specifies that the configured IP address is temporary. Temporary IP addresses do not persist across reboots." }, "addr": { "type": "string", "description": "Specifiies an IP address to configure in CIDR notation." }, "state": { "type": "string", "description": "Default: present\n\nCreate/delete/enable/disable an IP address on the network interface." }, "address": { "type": "string", "description": "Specifiies an IP address to configure in CIDR notation." }, "wait": { "type": "string", "description": "Default: 60\n\nSpecifies the time in seconds we wait for obtaining address via DHCP." }, "addrobj": { "type": "string", "description": "Specifies an unique IP address on the system." } } }, "nxos_vtp_domain": { "required": [ "domain" ], "type": "object", "description": "Manages VTP domain configuration.", "properties": { "domain": { "type": "string", "description": "VTP domain name." } } }, "nxos_reboot": { "type": "object", "description": "Reboot a network device.", "properties": { "confirm": { "type": "string", "description": "Safeguard boolean. Set to true if you're sure you want to reboot." } } }, "dellos10_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "OS10 configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with OS10 configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "backup": { "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "update": { "type": "string", "description": "Default: merge\n\nThe I(update) argument controls how the configuration statements are processed on the remote device. Valid choices for the I(update) argument are I(merge) and I(check). When you set this argument to I(merge), the configuration changes merge with the current device running configuration. When you set this argument to I(check) the configuration updates are determined but not actually configured on the remote device." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "deploy_helper": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" } ] } ] } ], "type": "object", "description": "The Deploy Helper manages some of the steps common in deploying software. It creates a folder structure, manages a symlink for the current release and cleans up old releases.\nRunning it with the C(state=query) or C(state=present) will return the C(deploy_helper) fact. C(project_path), whatever you set in the path parameter, C(current_path), the path to the symlink that points to the active release, C(releases_path), the path to the folder to keep releases in, C(shared_path), the path to the folder to keep shared resources in, C(unfinished_filename), the file to check for to recognize unfinished builds, C(previous_release), the release the 'current' symlink is pointing to, C(previous_release_path), the full path to the 'current' symlink target, C(new_release), either the 'release' parameter or a generated timestamp, C(new_release_path), the path to the new release folder (not created by the module).", "properties": { "unfinished_filename": { "type": "string", "description": "Default: DEPLOY_UNFINISHED\n\nthe name of the file that indicates a deploy has not finished. All folders in the releases_path that contain this file will be deleted on C(state=finalize) with clean=True, or C(state=clean). This file is automatically deleted from the I(new_release_path) during C(state=finalize)." }, "keep_releases": { "type": "string", "description": "Default: 5\n\nthe number of old releases to keep when cleaning. Used in C(finalize) and C(clean). Any unfinished builds will be deleted first, so only correct releases will count. The current version will not count." }, "dest": { "type": "string", "description": "the root path of the project. Alias I(dest). Returned in the C(deploy_helper.project_path) fact." }, "current_path": { "type": "string", "description": "Default: current\n\nthe name of the symlink that is created when the deploy is finalized. Used in C(finalize) and C(clean). Returned in the C(deploy_helper.current_path) fact." }, "state": { "type": "string", "description": "Default: present\n\nthe state of the project. C(query) will only gather facts, C(present) will create the project I(root) folder, and in it the I(releases) and I(shared) folders, C(finalize) will remove the unfinished_filename file, create a symlink to the newly deployed release and optionally clean old releases, C(clean) will remove failed & old releases, C(absent) will remove the project folder (synonymous to the M(file) module with C(state=absent))" }, "shared_path": { "type": "string", "description": "Default: shared\n\nthe name of the folder that will hold the shared resources. This can be relative to C(path) or absolute. If this is set to an empty string, no shared folder will be created. Returned in the C(deploy_helper.shared_path) fact." }, "releases_path": { "type": "string", "description": "Default: releases\n\nthe name of the folder that will hold the releases. This can be relative to C(path) or absolute. Returned in the C(deploy_helper.releases_path) fact." }, "clean": { "type": "string", "description": "Default: True\n\nWhether to run the clean procedure in case of C(state=finalize)." }, "release": { "type": "string", "description": "Default: None\n\nthe release version that is being deployed. Defaults to a timestamp format %Y%m%d%H%M%S (i.e. '20141119223359'). This parameter is optional during C(state=present), but needs to be set explicitly for C(state=finalize). You can use the generated fact C(release={{ deploy_helper.new_release }})." }, "path": { "type": "string", "description": "the root path of the project. Alias I(dest). Returned in the C(deploy_helper.project_path) fact." } } }, "rax_scaling_policy": { "required": [ "name", "scaling_group", "policy_type" ], "type": "object", "description": "Manipulate Rackspace Cloud Autoscale Scaling Policy", "properties": { "is_percent": { "type": "string", "description": "Whether the value in I(change) is a percent value" }, "name": { "type": "string", "description": "Name to give the policy" }, "scaling_group": { "type": "string", "description": "Name of the scaling group that this policy will be added to" }, "cron": { "type": "string", "description": "The time when the policy will be executed, as a cron entry. For example, if this is parameter is set to C(1 0 * * *)" }, "desired_capacity": { "type": "string", "description": "The desired server capacity of the scaling the group; that is, how many servers should be in the scaling group." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "cooldown": { "type": "string", "description": "The period of time, in seconds, that must pass before any scaling can occur after the previous scaling. Must be an integer between 0 and 86400 (24 hrs)." }, "at": { "type": "string", "description": "The UTC time when this policy will be executed. The time must be formatted according to C(yyyy-MM-dd'T'HH:mm:ss.SSS) such as C(2013-05-19T08:07:08Z)" }, "policy_type": { "type": "string", "description": "The type of policy that will be executed for the current release." }, "change": { "type": "string", "description": "The change, either as a number of servers or as a percentage, to make in the scaling group. If this is a percentage, you must set I(is_percent) to C(true) also." } } }, "cs_instance_facts": { "required": [ "name" ], "type": "object", "description": "Gathering facts from the API of an instance.", "properties": { "project": { "type": "string", "description": "Project the instance is related to." }, "account": { "type": "string", "description": "Account the instance is related to." }, "domain": { "type": "string", "description": "Domain the instance is related to." }, "name": { "type": "string", "description": "Name or display name of the instance." } } }, "bigmon_chain": { "required": [ "controller", "name" ], "type": "object", "description": "Create and remove a bigmon inline service chain.", "properties": { "access_token": { "type": "string", "description": "Bigmon access token. If this isn't set, the environment variable C(BIGSWITCH_ACCESS_TOKEN) is used." }, "state": { "type": "string", "description": "Default: present\n\nWhether the service chain should be present or absent." }, "validate_certs": { "type": "string", "description": "Default: True\n\nIf C(false), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "controller": { "type": "string", "description": "The controller IP address." }, "name": { "type": "string", "description": "The name of the chain." } } }, "homebrew_tap": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "tap" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "tap" ], "type": "object" } ] } ] } ], "type": "object", "description": "Tap external Homebrew repositories.", "properties": { "url": { "type": "string", "description": "The optional git URL of the repository to tap. The URL is not assumed to be on GitHub, and the protocol doesn't have to be HTTP. Any location and protocol that git can handle is fine." }, "state": { "type": "string", "description": "Default: present\n\nstate of the repository." }, "tap": { "type": "string", "description": "The GitHub user/organization repository to tap." }, "name": { "type": "string", "description": "The GitHub user/organization repository to tap." } } }, "na_cdot_license": { "type": "object", "description": "Add or remove licenses on NetApp ONTAP.", "properties": { "remove_expired": { "type": "string", "description": "Remove licenses that have expired in the cluster." }, "serial_number": { "type": "string", "description": "Default: None\n\nSerial number of the node associated with the license.\nThis parameter is used primarily when removing license for a specific service.\nIf this parameter is not provided, the cluster serial number is used by default." }, "licenses": { "type": "array", "description": "List of licenses to add or remove.\nPlease note that trying to remove a non-existent license will throw an error." }, "remove_unused": { "type": "string", "description": "Remove licenses that have no controller affiliation in the cluster." } } }, "easy_install": { "required": [ "name" ], "type": "object", "description": "Installs Python libraries, optionally in a I(virtualenv)", "properties": { "virtualenv": { "type": "string", "description": "an optional I(virtualenv) directory path to install into. If the I(virtualenv) does not exist, it is created automatically" }, "virtualenv_command": { "type": "string", "description": "Default: virtualenv\n\nThe command to create the virtual environment with. For example C(pyvenv), C(virtualenv), C(virtualenv2)." }, "name": { "type": "string", "description": "A Python library name" }, "executable": { "type": "string", "description": "The explicit executable or a pathname to the executable to be used to run easy_install for a specific version of Python installed in the system. For example C(easy_install-3.3), if there are both Python 2.7 and 3.3 installations in the system and you want to run easy_install for the Python 3.3 installation." }, "virtualenv_site_packages": { "type": "string", "description": "Default: no\n\nWhether the virtual environment will inherit packages from the global site-packages directory. Note that if this setting is changed on an already existing virtual environment it will not have any effect, the environment must be deleted and newly created." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the library. C(latest) ensures that the latest version is installed." } } }, "yum": { "allOf": [ { "allOf": [ { "not": { "required": [ "update_cache", "expire-cache" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "pkg" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "pkg" ], "type": "object" } ] } ] } ], "type": "object", "description": "Installs, upgrade, downgrades, removes, and lists packages and groups with the I(yum) package manager.\nThis module only works on Python 2. If you require Python 3 support see the M(dnf) module.", "properties": { "expire-cache": { "description": "Default: no\n\nForce yum to check if cache is out of date and redownload if needed. Has an effect only if state is I(present) or I(latest).", "$ref": "#/definitions/ansible_truth" }, "allow_downgrade": { "description": "Default: no\n\nSpecify if the named package and version is allowed to downgrade a maybe already installed higher version of that package. Note that setting allow_downgrade=True can make this module behave in a non-idempotent way. The task could end up with a set of packages that does not match the complete list of specified packages to install (because dependencies between the downgraded package and others can cause changes to the packages which were in the earlier transaction).", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "A package name , or package specifier with version, like C(name-1.0).\nIf a previous version is specified, the task also needs to turn C(allow_downgrade) on. See the C(allow_downgrade) documentation for caveats with downgrading packages.\nWhen using state=latest, this can be '*' which means run C(yum -y update).\nYou can also pass a url or a local path to a rpm file (using state=present). To operate on several packages this can accept a comma separated list of packages or (as of 2.0) a list of packages." }, "enable_plugin": { "type": "string", "description": "I(Plugin) name to enable for the install/update operation. The enabled plugin will not persist beyond the transaction." }, "disable_plugin": { "type": "string", "description": "I(Plugin) name to disable for the install/update operation. The disabled plugins will not persist beyond the transaction." }, "list": { "type": "string", "description": "Package name to run the equivalent of yum list against. In addition to listing packages, use can also list the following: C(installed), C(updates), C(available) and C(repos)." }, "disable_gpg_check": { "description": "Default: no\n\nWhether to disable the GPG checking of signatures of packages being installed. Has an effect only if state is I(present) or I(latest).", "$ref": "#/definitions/ansible_truth" }, "conf_file": { "type": "string", "description": "The remote yum configuration file to use for the transaction." }, "update_only": { "type": "string", "description": "Default: no\n\nWhen using latest, only update installed packages. Do not install packages.\nHas an effect only if state is I(latest)" }, "state": { "type": "string", "description": "Default: present\n\nWhether to install (C(present) or C(installed), C(latest)), or remove (C(absent) or C(removed)) a package." }, "disablerepo": { "type": "string", "description": "I(Repoid) of repositories to disable for the install/update operation. These repos will not persist beyond the transaction. When specifying multiple repos, separate them with a \",\"." }, "update_cache": { "description": "Default: no\n\nForce yum to check if cache is out of date and redownload if needed. Has an effect only if state is I(present) or I(latest).", "$ref": "#/definitions/ansible_truth" }, "pkg": { "type": "string", "description": "A package name , or package specifier with version, like C(name-1.0).\nIf a previous version is specified, the task also needs to turn C(allow_downgrade) on. See the C(allow_downgrade) documentation for caveats with downgrading packages.\nWhen using state=latest, this can be '*' which means run C(yum -y update).\nYou can also pass a url or a local path to a rpm file (using state=present). To operate on several packages this can accept a comma separated list of packages or (as of 2.0) a list of packages." }, "enablerepo": { "type": "string", "description": "I(Repoid) of repositories to enable for the install/update operation. These repos will not persist beyond the transaction. When specifying multiple repos, separate them with a \",\"." }, "exclude": { "type": "string", "description": "Package name(s) to exclude when state=present, or latest" }, "security": { "description": "Default: no\n\nIf set to C(yes), and C(state=latest) then only installs updates that have been marked security related.", "$ref": "#/definitions/ansible_truth" }, "validate_certs": { "description": "Default: yes\n\nThis only applies if using a https url as the source of the rpm. e.g. for localinstall. If set to C(no), the SSL certificates will not be validated.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates as it avoids verifying the source site.\nPrior to 2.1 the code worked as if this was set to C(yes).", "$ref": "#/definitions/ansible_truth" }, "installroot": { "type": "string", "description": "Default: /\n\nSpecifies an alternative installroot, relative to which all packages will be installed." }, "skip_broken": { "description": "Default: no\n\nResolve depsolve problems by removing packages that are causing problems from the trans‐ action.", "$ref": "#/definitions/ansible_truth" } } }, "win_owner": { "required": [ "path", "user" ], "type": "object", "description": "Set owner of files or directories", "properties": { "path": { "type": "string", "description": "Path to be used for changing owner" }, "recurse": { "description": "Default: no\n\nIndicates if the owner should be changed recursively", "$ref": "#/definitions/ansible_truth" }, "user": { "type": "string", "description": "Name to be used for changing owner" } } }, "lambda": { "allOf": [ { "allOf": [ { "not": { "required": [ "zip_file", "src" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "environment_variables", "environment" ], "type": "object" } } ] } ], "type": "object", "description": "Allows for the management of Lambda functions.", "properties": { "src": { "type": "string", "description": "A .zip file containing your deployment package\nIf C(state=present) then either zip_file or s3_bucket must be present." }, "vpc_security_group_ids": { "type": "array", "description": "Default: None\n\nList of VPC security group IDs to associate with the Lambda function. Required when vpc_subnet_ids is used." }, "description": { "type": "string", "description": "A short, user-defined function description. Lambda does not use this value. Assign a meaningful description as you see fit." }, "tags": { "type": "string", "description": "Default: None\n\ntag dict to apply to the function (requires botocore 1.5.40 or above)" }, "s3_key": { "type": "string", "description": "The Amazon S3 object (the deployment package) key name you want to upload\ns3_bucket and s3_key are required together" }, "zip_file": { "type": "string", "description": "A .zip file containing your deployment package\nIf C(state=present) then either zip_file or s3_bucket must be present." }, "s3_object_version": { "type": "string", "description": "The Amazon S3 object (the deployment package) version you want to upload." }, "environment": { "type": "object", "description": "Default: None\n\nA dictionary of environment variables the Lambda function is given." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete Lambda function" }, "handler": { "type": "string", "description": "The function within your code that Lambda calls to begin execution" }, "memory_size": { "type": "string", "description": "Default: 128\n\nThe amount of memory, in MB, your Lambda function is given" }, "timeout": { "type": "string", "description": "Default: 3\n\nThe function execution time at which Lambda should terminate the function." }, "environment_variables": { "type": "object", "description": "Default: None\n\nA dictionary of environment variables the Lambda function is given." }, "role": { "type": "string", "description": "The Amazon Resource Name (ARN) of the IAM role that Lambda assumes when it executes your function to access any other Amazon Web Services (AWS) resources. You may use the bare ARN if the role belongs to the same AWS account.\nRequired when C(state=present)" }, "dead_letter_arn": { "type": "string", "description": "Default: None\n\nThe parent object that contains the target Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic." }, "runtime": { "type": "string", "description": "The runtime environment for the Lambda function you are uploading. Required when creating a function. Use parameters as described in boto3 docs. Current example runtime environments are nodejs, nodejs4.3, java8 or python2.7\nRequired when C(state=present)" }, "s3_bucket": { "type": "string", "description": "Amazon S3 bucket name where the .zip file containing your deployment package is stored\nIf C(state=present) then either zip_file or s3_bucket must be present.\ns3_bucket and s3_key are required together" }, "vpc_subnet_ids": { "type": "array", "description": "Default: None\n\nList of subnet IDs to run Lambda function in. Use this option if you need to access resources in your VPC. Leave empty if you don't want to run the function in a VPC." }, "name": { "type": "string", "description": "The name you want to assign to the function you are uploading. Cannot be changed." } } }, "route53_health_check": { "required": [ "request_interval", "type", "state", "failure_threshold" ], "type": "object", "description": "Creates and deletes DNS Health checks in Amazons Route53 service\nOnly the port, resource_path, string_match and request_interval are considered when updating existing health-checks.", "properties": { "request_interval": { "type": "string", "description": "Default: 30\n\nThe number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request." }, "ip_address": { "type": "string", "description": "IP address of the end-point to check. Either this or `fqdn` has to be provided." }, "fqdn": { "type": "string", "description": "Domain name of the endpoint to check. Either this or `ip_address` has to be provided. When both are given the `fqdn` is used in the `Host:` header of the HTTP request." }, "string_match": { "type": "string", "description": "If the check type is HTTP_STR_MATCH or HTTP_STR_MATCH, the string that you want Amazon Route 53 to search for in the response body from the specified resource. If the string appears in the first 5120 bytes of the response body, Amazon Route 53 considers the resource healthy." }, "state": { "type": "string", "description": "Specifies the action to take." }, "resource_path": { "type": "string", "description": "The path that you want Amazon Route 53 to request when performing health checks. The path can be any value for which your endpoint will return an HTTP status code of 2xx or 3xx when the endpoint is healthy, for example the file /docs/route53-health-check.html.\nRequired for all checks except TCP.\nThe path must begin with a /\nMaximum 255 characters." }, "failure_threshold": { "type": "string", "description": "Default: 3\n\nThe number of consecutive health checks that an endpoint must pass or fail for Amazon Route 53 to change the current status of the endpoint from unhealthy to healthy or vice versa." }, "type": { "type": "string", "description": "The type of health check that you want to create, which indicates how Amazon Route 53 determines whether an endpoint is healthy." }, "port": { "type": "string", "description": "The port on the endpoint on which you want Amazon Route 53 to perform health checks. Required for TCP checks." } } }, "ios_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on Cisco IOS network devices.", "properties": { "neighbors": { "type": "string", "description": "Check the operational state of given interface C(name) for CDP/LLDP neighbor.\nThe following suboptions are available." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down), I(tx_rate) and I(rx_rate)." }, "name": { "type": "string", "description": "Name of the Interface." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status" }, "enabled": { "type": "string", "description": "Interface link status." }, "mtu": { "type": "string", "description": "Maximum size of transmit packet." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) means present and operationally up and C(down) means present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface." } } }, "aci_l3out_route_tag_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "rtp", "name", "rtp_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "rtp" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "rtp_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage route tag policies on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the route tag policy." }, "descr": { "type": "string", "description": "The description for the route tag policy." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "tag": { "type": "string", "description": "Default: 4294967295\n\nThe value of the route tag (range 0-4294967295)." }, "rtp_name": { "type": "string", "description": "The name of the route tag policy." }, "rtp": { "type": "string", "description": "The name of the route tag policy." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "The description for the route tag policy." } } }, "vyos_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running VyOS. This module prepends all of the base network fact keys with U(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "oneview_fcoe_network_facts": { "type": "object", "description": "Retrieve the facts about one or more of the FCoE Networks from OneView.", "properties": { "name": { "type": "string", "description": "FCoE Network name." } } }, "iam": { "required": [ "name", "iam_type", "state" ], "type": "object", "description": "Allows for the management of IAM users, user API keys, groups, roles.", "properties": { "new_name": { "type": "string", "description": "When state is update, will replace name with new_name on IAM resource" }, "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users." }, "new_path": { "type": "string", "description": "When state is update, will replace the path with new_path on the IAM resource" }, "name": { "type": "string", "description": "Name of IAM resource to create or identify" }, "key_count": { "type": "string", "description": "Default: 1\n\nWhen access_key_state is create it will ensure this quantity of keys are present. Defaults to 1." }, "access_key_state": { "type": "string", "description": "When type is user, it creates, removes, deactivates or activates a user's access key(s). Note that actions apply only to keys specified." }, "iam_type": { "type": "string", "description": "Type of IAM resource" }, "state": { "type": "string", "description": "Whether to create, delete or update the IAM resource. Note, roles cannot be updated." }, "access_key_ids": { "type": "string", "description": "A list of the keys that you want impacted by the access_key_state parameter." }, "groups": { "type": "string", "description": "A list of groups the user should belong to. When update, will gracefully remove groups not listed." }, "trust_policy": { "type": "string", "description": "The inline (JSON or YAML) trust policy document that grants an entity permission to assume the role. Mutually exclusive with C(trust_policy_filepath)." }, "path": { "type": "string", "description": "Default: /\n\nWhen creating or updating, specify the desired path of the resource. If state is present, it will replace the current path to match what is passed in when they do not match." }, "password": { "type": "string", "description": "When type is user and state is present, define the users login password. Also works with update. Note that always returns changed." }, "trust_policy_filepath": { "type": "string", "description": "The path to the trust policy document that grants an entity permission to assume the role. Mutually exclusive with C(trust_policy)." } } }, "os_client_config": { "type": "object", "description": "Get I(openstack) client config data from clouds.yaml or environment", "properties": { "clouds": { "type": "array", "description": "List of clouds to limit the return list to. No value means return information on all configured clouds" } } }, "ios_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both login and motd banners on remote devices running Cisco IOS. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string, with no empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner should be configured on the remote device. In Ansible 2.4 and earlier only I(login) and I(motd) were supported." } } }, "azure_rm_availabilityset": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete Azure availability set. An availability set cannot be updated, you will have to recreate one instead. The only update operation will be for the tags.", "properties": { "sku": { "type": "string", "description": "Default: Classic\n\nDefine if the availability set supports managed disks." }, "name": { "type": "string", "description": "Name of the availability set." }, "resource_group": { "type": "string", "description": "Name of a resource group where the availability set exists or will be created." }, "platform_update_domain_count": { "type": "string", "description": "Default: 5\n\nUpdate domains indicate groups of virtual machines and underlying physical hardware that can be rebooted at the same time. Default is 5." }, "platform_fault_domain_count": { "type": "string", "description": "Default: 3\n\nFault domains define the group of virtual machines that share a common power source and network switch. Should be between 1 and 3. Default is 3" }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the availability set. Use 'present' to create or update a availability set and 'absent' to delete a availability set." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." } } }, "dellos9_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Dell OS9 configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with Dell OS9 configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root dir. This argument is mutually exclusive with I(lines)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "update": { "type": "string", "description": "Default: merge\n\nThe I(update) argument controls how the configuration statements are processed on the remote device. Valid choices for the I(update) argument are I(merge) and I(check). When the argument is set to I(merge), the configuration changes are merged with the current device running configuration. When the argument is set to I(check) the configuration updates are determined but not actually configured on the remote device." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "oneview_network_set_facts": { "type": "object", "description": "Retrieve facts about the Network Sets from OneView.", "properties": { "name": { "type": "string", "description": "Network Set name." }, "options": { "type": "array", "description": "List with options to gather facts about Network Set. Option allowed: C(withoutEthernet). The option C(withoutEthernet) retrieves the list of network_sets excluding Ethernet networks." } } }, "ec2_ami_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "image_ids", "image_id" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "owners", "owner" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "executable_users", "executable_user" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about ec2 AMIs", "properties": { "owners": { "type": "string", "description": "Filter the images by the owner. Valid options are an AWS account ID, self,\nor an AWS owner alias ( amazon | aws-marketplace | microsoft )." }, "executable_users": { "type": "string", "description": "Filter images by users with explicit launch permissions. Valid options are an AWS account ID, self, or all (public AMIs)." }, "image_id": { "type": "string", "description": "One or more image IDs." }, "executable_user": { "type": "string", "description": "Filter images by users with explicit launch permissions. Valid options are an AWS account ID, self, or all (public AMIs)." }, "image_ids": { "type": "string", "description": "One or more image IDs." }, "describe_image_attributes": { "type": "string", "description": "Describe attributes (like launchPermission) of the images found." }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value.\nSee U(https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html) for possible filters.\nFilter names and values are case sensitive." }, "owner": { "type": "string", "description": "Filter the images by the owner. Valid options are an AWS account ID, self,\nor an AWS owner alias ( amazon | aws-marketplace | microsoft )." } } }, "ce_mlag_config": { "type": "object", "description": "Manages MLAG configuration on HUAWEI CloudEngine switches.", "properties": { "eth_trunk_id": { "type": "string", "description": "Name of the peer-link interface. The value is in the range from 0 to 511." }, "pseudo_priority": { "type": "string", "description": "The priority of a pseudo nickname. The value is an integer that ranges from 128 to 255. The default value is 192. A larger value indicates a higher priority." }, "nickname": { "type": "string", "description": "The nickname bound to a DFS group. The value is an integer that ranges from 1 to 65471." }, "priority_id": { "type": "string", "description": "Priority of a DFS group. The value is an integer that ranges from 1 to 254. The default value is 100." }, "vpn_instance_name": { "type": "string", "description": "Name of the VPN instance bound to the DFS group. The value is a string of 1 to 31 case-sensitive characters without spaces. If the character string is quoted by double quotation marks, the character string can contain spaces. The value _public_ is reserved and cannot be used as the VPN instance name." }, "peer_link_id": { "type": "string", "description": "Number of the peer-link interface. The value is 1." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "dfs_group_id": { "type": "string", "description": "Default: present\n\nID of a DFS group. The value is 1." }, "ip_address": { "type": "string", "description": "IP address bound to the DFS group. The value is in dotted decimal notation." }, "pseudo_nickname": { "type": "string", "description": "A pseudo nickname of a DFS group. The value is an integer that ranges from 1 to 65471." } } }, "netapp_e_volume": { "required": [ "name", "state", "storage_pool_name", "thin_volume_repo_size", "size" ], "type": "object", "description": "Create or remove volumes (standard and thin) for NetApp E/EF-series storage arrays.", "properties": { "segment_size_kb": { "type": "string", "description": "Default: 512\n\nThe segment size of the new volume" }, "ssd_cache_enabled": { "type": "string", "description": "Default: None (ignores existing SSD cache setting)\n\nWhether an existing SSD cache should be enabled on the volume (fails if no SSD cache defined)" }, "name": { "type": "string", "description": "The name of the volume to manage" }, "data_assurance_enabled": { "type": "string", "description": "If data assurance should be enabled for the volume" }, "thin_provision": { "type": "string", "description": "Whether the volume should be thin provisioned. Thin volumes can only be created on disk pools (raidDiskPool)." }, "size_unit": { "type": "string", "description": "Default: gb\n\nThe unit used to interpret the size parameter" }, "state": { "type": "string", "description": "Whether the specified volume should exist or not." }, "storage_pool_name": { "type": "string", "description": "Required only when requested state is 'present'. The name of the storage pool the volume should exist on." }, "thin_volume_max_repo_size": { "type": "string", "description": "Default: same as size (in size_unit)\n\nMaximum size that the thin volume repository volume will automatically expand to" }, "thin_volume_repo_size": { "type": "string", "description": "Initial size of the thin volume repository volume (in size_unit)" }, "size": { "type": "string", "description": "Required only when state = 'present'. The size of the volume in (size_unit)." } } }, "nxos_ntp_options": { "type": "object", "description": "Manages NTP options, e.g. authoritative server and logging.", "properties": { "logging": { "type": "string", "description": "Sets whether NTP logging is enabled on the device." }, "stratrum": { "type": "string", "description": "If C(master=true), an optional stratum can be supplied (1-15). The device default is 8." }, "master": { "type": "string", "description": "Sets whether the device is an authoritative NTP server." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." } } }, "win_product_facts": { "type": "object", "description": "Provides Windows product information.", "properties": {} }, "nova_keypair": { "required": [ "login_tenant_name", "login_password", "login_username", "name" ], "type": "object", "description": "Add or Remove key pair from nova .", "properties": { "public_key": { "type": "string", "description": "Default: None\n\nThe public key that would be uploaded to nova and injected to vm's upon creation" }, "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the key pair" } } }, "netconf_config": { "required": [ "username", "xml", "host", "password" ], "type": "object", "description": "Netconf is a network management protocol developed and standardized by the IETF. It is documented in RFC 6241.\nThis module allows the user to send a configuration XML file to a netconf device, and detects if there was a configuration change.", "properties": { "username": { "type": "string", "description": "the username to authenticate with" }, "xml": { "type": "string", "description": "the XML content to send to the device" }, "host": { "type": "string", "description": "the hostname or ip address of the netconf device" }, "hostkey_verify": { "type": "string", "description": "Default: True\n\nif true, the ssh host key of the device must match a ssh key present on the host\nif false, the ssh host key of the device is not checked" }, "password": { "type": "string", "description": "password of the user to authenticate with" }, "port": { "type": "string", "description": "Default: 830\n\nthe netconf port" } } }, "copy": { "allOf": [ { "allOf": [ { "not": { "required": [ "force", "thirsty" ], "type": "object" } } ] } ], "type": "object", "description": "The C(copy) module copies a file from the local or remote machine to a location on the remote machine. Use the M(fetch) module to copy files from remote locations to the local box. If you need variable interpolation in copied files, use the M(template) module.\nFor Windows targets, use the M(win_copy) module instead.", "properties": { "src": { "type": "string", "description": "Local path to a file to copy to the remote server; can be absolute or relative. If path is a directory, it is copied recursively. In this case, if path ends with \"/\", only inside contents of that directory are copied to destination. Otherwise, if it does not end with \"/\", the directory itself with all contents is copied. This behavior is similar to Rsync." }, "directory_mode": { "type": "string", "description": "When doing a recursive copy set the mode for the directories. If this is not set we will use the system defaults. The mode is only set on directories which are newly created, and will not affect those that already existed." }, "force": { "description": "Default: yes\n\nthe default is C(yes), which will replace the remote file when contents are different than the source. If C(no), the file will only be transferred if the destination does not exist.", "$ref": "#/definitions/ansible_truth" }, "thirsty": { "description": "Default: yes\n\nthe default is C(yes), which will replace the remote file when contents are different than the source. If C(no), the file will only be transferred if the destination does not exist.", "$ref": "#/definitions/ansible_truth" }, "remote_src": { "description": "Default: no\n\nIf C(no), it will search for I(src) at originating/master machine.\nIf C(yes) it will go to the remote/target machine for the I(src). Default is C(no).\nCurrently I(remote_src) does not support recursive copying.", "$ref": "#/definitions/ansible_truth" }, "dest": { "type": "string", "description": "Remote absolute path where the file should be copied to. If I(src) is a directory, this must be a directory too. If I(dest) is a nonexistent path and if either I(dest) ends with \"/\" or I(src) is a directory, I(dest) is created. If I(src) and I(dest) are files, the parent directory of I(dest) isn't created: the task fails if it doesn't already exist." }, "checksum": { "type": "string", "description": "SHA1 checksum of the file being transferred. Used to valdiate that the copy of the file was successful.\nIf this is not provided, ansible will use the local calculated checksum of the src file." }, "content": { "type": "string", "description": "When used instead of I(src), sets the contents of a file directly to the specified value. For anything advanced or with formatting also look at the template module." }, "follow": { "description": "Default: no\n\nThis flag indicates that filesystem links in the destination, if they exist, should be followed.", "$ref": "#/definitions/ansible_truth" }, "backup": { "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.", "$ref": "#/definitions/ansible_truth" }, "local_follow": { "description": "Default: yes\n\nThis flag indicates that filesystem links in the source tree, if they exist, should be followed.", "$ref": "#/definitions/ansible_truth" } } }, "pam_limits": { "required": [ "domain", "value", "limit_item", "limit_type" ], "type": "object", "description": "The M(pam_limits) module modify PAM limits, default in /etc/security/limits.conf. For the full documentation, see man limits.conf(5).", "properties": { "comment": { "type": "string", "description": "Comment associated with the limit." }, "use_max": { "type": "string", "description": "Default: no\n\nIf set to C(yes), the maximal value will be used or conserved. If the specified value is superior to the value in the file, file content is replaced with the new value, else content is not modified." }, "domain": { "type": "string", "description": "A username, @groupname, wildcard, uid/gid range." }, "dest": { "type": "string", "description": "Default: /etc/security/limits.conf\n\nModify the limits.conf path." }, "value": { "type": "string", "description": "The value of the limit." }, "use_min": { "type": "string", "description": "Default: no\n\nIf set to C(yes), the minimal value will be used or conserved. If the specified value is inferior to the value in the file, file content is replaced with the new value, else content is not modified." }, "limit_item": { "type": "string", "description": "The limit to be set" }, "limit_type": { "type": "string", "description": "Limit type, see C(man limits) for an explanation" }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." } } }, "win_template": { "required": [ "src", "dest" ], "type": "object", "description": "Templates are processed by the Jinja2 templating language (U(http://jinja.pocoo.org/docs/)) - documentation on the template formatting can be found in the Template Designer Documentation (U(http://jinja.pocoo.org/docs/templates/)).\nSix additional variables can be used in templates: C(ansible_managed) (configurable via the C(defaults) section of C(ansible.cfg)) contains a string which can be used to describe the template name, host, modification time of the template file and the owner uid, C(template_host) contains the node name of the template's machine, C(template_uid) the owner, C(template_path) the absolute path of the template, C(template_fullpath) is the absolute path of the template, and C(template_run_date) is the date that the template was rendered. Note that including a string that uses a date in the template will result in the template being marked 'changed' each time.", "properties": { "src": { "type": "string", "description": "Path of a Jinja2 formatted template on the local server. This can be a relative or absolute path." }, "force": { "type": "string", "description": "Default: yes\n\nthe default is C(yes), which will replace the remote file when contents are different than the source. If C(no), the file will only be transferred if the destination does not exist." }, "trim_blocks": { "type": "string", "description": "Default: no\n\nIf this is set to True the first newline after a block is removed (block, not variable tag!)." }, "dest": { "type": "string", "description": "Location to render the template to on the remote machine." }, "block_end_string": { "type": "string", "description": "Default: %}\n\nThe string marking the end of a block." }, "variable_start_string": { "type": "string", "description": "Default: {{\n\nThe string marking the beginning of a print statement." }, "newline_sequence": { "type": "string", "description": "Default: \\r\\n\n\nSpecify the newline sequence to use for templating files." }, "variable_end_string": { "type": "string", "description": "Default: }}\n\nThe string marking the end of a print statement." }, "block_start_string": { "type": "string", "description": "Default: {%\n\nThe string marking the beginning of a block." } } }, "cs_configuration": { "required": [ "name", "value" ], "type": "object", "description": "Manages global, zone, account, storage and cluster configurations.", "properties": { "account": { "type": "string", "description": "Ensure the value for corresponding account." }, "name": { "type": "string", "description": "Name of the configuration." }, "zone": { "type": "string", "description": "Ensure the value for corresponding zone." }, "storage": { "type": "string", "description": "Ensure the value for corresponding storage pool." }, "domain": { "type": "string", "description": "Default: ROOT\n\nDomain the account is related to.\nOnly considered if C(account) is used." }, "value": { "type": "string", "description": "Value of the configuration." }, "cluster": { "type": "string", "description": "Ensure the value for corresponding cluster." } } }, "ec2_scaling_policy": { "required": [ "state", "name", "asg_name" ], "type": "object", "description": "Can create or delete scaling policies for autoscaling groups\nReferenced autoscaling groups must already exist", "properties": { "name": { "type": "string", "description": "Unique name for the scaling policy" }, "asg_name": { "type": "string", "description": "Name of the associated autoscaling group" }, "adjustment_type": { "type": "string", "description": "The type of change in capacity of the autoscaling group" }, "min_adjustment_step": { "type": "string", "description": "Minimum amount of adjustment when policy is triggered" }, "scaling_adjustment": { "type": "string", "description": "The amount by which the autoscaling group is adjusted by the policy" }, "state": { "type": "string", "description": "register or deregister the policy" }, "cooldown": { "type": "string", "description": "The minimum period of time between which autoscaling actions can take place" } } }, "aos_logical_device_map": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Logical Device Map module let you manage your Logical Device Map easily. You can create create and delete Logical Device Map by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "content": { "type": "string", "description": "Datastructure of the Logical Device Map to manage. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value). Only one of I(name), I(id) or I(content) can be set." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Logical Device Map (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "name": { "type": "string", "description": "Name of the Logical Device Map to manage. Only one of I(name), I(id) or I(content) can be set." }, "id": { "type": "string", "description": "AOS Id of the Logical Device Map to manage (can't be used to create a new Logical Device Map), Only one of I(name), I(id) or I(content) can be set." } } }, "rax_clb": { "type": "object", "description": "creates / deletes a Rackspace Public Cloud load balancer.", "properties": { "protocol": { "type": "string", "description": "Default: HTTP\n\nProtocol for the balancer being created" }, "name": { "type": "string", "description": "Name to give the load balancer" }, "algorithm": { "type": "string", "description": "Default: LEAST_CONNECTIONS\n\nalgorithm for the balancer being created" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "meta": { "type": "string", "description": "A hash of metadata to associate with the instance" }, "timeout": { "type": "string", "description": "Default: 30\n\ntimeout for communication between the balancer and the node" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the balancer to be in state 'running' before returning" }, "type": { "type": "string", "description": "Default: PUBLIC\n\ntype of interface for the balancer being created" }, "port": { "type": "string", "description": "Default: 80\n\nPort for the balancer being created" }, "vip_id": { "type": "string", "description": "Virtual IP ID to use when creating the load balancer for purposes of sharing an IP with another load balancer of another protocol" } } }, "influxdb_database": { "required": [ "database_name", "hostname" ], "type": "object", "description": "Manage InfluxDB databases", "properties": { "username": { "type": "string", "description": "Default: root\n\nUsername that will be used to authenticate against InfluxDB server" }, "database_name": { "type": "string", "description": "Name of the database that will be created/destroyed" }, "hostname": { "type": "string", "description": "The hostname or IP address on which InfluxDB server is listening" }, "state": { "type": "string", "description": "Default: present\n\nDetermines if the database should be created or destroyed" }, "password": { "type": "string", "description": "Default: root\n\nPassword that will be used to authenticate against InfluxDB server" }, "port": { "type": "string", "description": "Default: 8086\n\nThe port on which InfluxDB server is listening" } } }, "elb_classic_lb_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "names", "elb_ids", "ec2_elbs" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about EC2 Elastic Load Balancers in AWS", "properties": { "elb_ids": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." }, "names": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." }, "ec2_elbs": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." } } }, "cs_staticnat": { "required": [ "ip_address" ], "type": "object", "description": "Create, update and remove static NATs.", "properties": { "vm_guest_ip": { "type": "string", "description": "VM guest NIC secondary IP address for the static NAT." }, "domain": { "type": "string", "description": "Domain the static NAT is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "network": { "type": "string", "description": "Network the IP address is related to." }, "zone": { "type": "string", "description": "Name of the zone in which the virtual machine is in.\nIf not set, default zone is used." }, "vm": { "type": "string", "description": "Name of virtual machine which we make the static NAT for.\nRequired if C(state=present)." }, "project": { "type": "string", "description": "Name of the project the static NAT is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the static NAT." }, "vpc": { "type": "string", "description": "VPC the network related to." }, "account": { "type": "string", "description": "Account the static NAT is related to." }, "ip_address": { "type": "string", "description": "Public IP address the static NAT is assigned to." } } }, "oneandone_load_balancer": { "required": [ "load_balancer", "rules", "auth_token", "health_check_test", "persistence_time", "health_check_interval", "name", "method", "persistence" ], "type": "object", "description": "Create, remove, update load balancers. This module has a dependency on 1and1 >= 1.0", "properties": { "add_rules": { "type": "string", "description": "A list of rules that will be added to an existing load balancer. It is syntax is the same as the one used for rules parameter. Used in combination with update state." }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1." }, "add_server_ips": { "type": "string", "description": "A list of server identifiers (id or name) to be assigned to a load balancer. Used in combination with update state." }, "health_check_path": { "type": "string", "description": "Url to call for cheking. Required for HTTP health check. maxLength=1000" }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the _wait_for methods" }, "state": { "type": "string", "description": "Default: present\n\nDefine a load balancer state to create, remove, or update." }, "method": { "type": "string", "description": "Balancing procedure." }, "persistence": { "type": "string", "description": "Persistence." }, "load_balancer": { "type": "string", "description": "The identifier (id or name) of the load balancer used with update state." }, "health_check_parse": { "type": "string", "description": "Regular expression to check. Required for HTTP health check. maxLength=64" }, "description": { "type": "string", "description": "Description of the load balancer. maxLength=256" }, "rules": { "type": "string", "description": "A list of rule objects that will be set for the load balancer. Each rule must contain protocol, port_balancer, and port_server parameters, in addition to source parameter, which is optional." }, "health_check_test": { "type": "string", "description": "Type of the health check. At the moment, HTTP is not allowed." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" }, "datacenter": { "type": "string", "description": "Default: US\n\nID or country code of the datacenter where the load balancer will be created." }, "persistence_time": { "type": "string", "description": "Persistence time in seconds. Required if persistence is enabled. minimum=30, maximum=1200, multipleOf=1" }, "health_check_interval": { "type": "string", "description": "Health check period in seconds. minimum=5, maximum=300, multipleOf=1" }, "name": { "type": "string", "description": "Load balancer name used with present state. Used as identifier (id or name) when used with absent state. maxLength=128" }, "remove_server_ips": { "type": "string", "description": "A list of server IP ids to be unassigned from a load balancer. Used in combination with update state." }, "remove_rules": { "type": "string", "description": "A list of rule ids that will be removed from an existing load balancer. Used in combination with update state." } } }, "vmware_host_package_facts": { "type": "object", "description": "This module can be used to gather facts about available packages and their status on an ESXi host.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nPackage facts about each ESXi server will be returned for given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nPackage facts about this ESXi server will be returned.\nIf C(cluster_name) is not given, this parameter is required." } } }, "dellos6_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running OS6. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "say": { "required": [ "msg" ], "type": "object", "description": "makes a computer speak! Amuse your friends, annoy your coworkers!", "properties": { "msg": { "type": "string", "description": "What to say" }, "voice": { "type": "string", "description": "What voice to use" } } }, "dconf": { "required": [ "key" ], "type": "object", "description": "This module allows modifications and reading of dconf database. The module is implemented as a wrapper around dconf tool. Please see the dconf(1) man page for more details.\nSince C(dconf) requires a running D-Bus session to change values, the module will try to detect an existing session and reuse it, or run the tool via C(dbus-run-session).", "properties": { "state": { "type": "string", "description": "Default: present\n\nThe action to take upon the key/value." }, "value": { "type": "string", "description": "Value to set for the specified dconf key. Value should be specified in GVariant format. Due to complexity of this format, it is best to have a look at existing values in the dconf database. Required for C(state=present)." }, "key": { "type": "string", "description": "A dconf key to modify or read from the dconf database." } } }, "docker_image": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "build_path" ], "type": "object" } } ] } ], "type": "object", "description": "Build, load or pull an image, making the image available for creating containers. Also supports tagging an image into a repository and archiving an image to a .tar file.", "properties": { "archive_path": { "type": "string", "description": "Use with state C(present) to archive an image to a .tar file." }, "build_path": { "type": "string", "description": "Use with state 'present' to build an image. Will be the path to a directory containing the context and Dockerfile for building an image." }, "force": { "description": "Use with state I(absent) to un-tag and remove all images matching the specified name. Use with state C(present) to build, load or pull an image when the image already exists.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Image name. Name format will be one of: name, repository/name, registry_server:port/name. When pushing or pulling an image the name can optionally include the tag by appending ':tag_name'." }, "repository": { "type": "string", "description": "Full path to a repository. Use with state C(present) to tag the image into the repository. Expects format I(repository:tag). If no tag is provided, will use the value of the C(tag) parameter or I(latest)." }, "pull": { "description": "Default: True\n\nWhen building an image downloads any updates to the FROM image in Dockerfile.", "$ref": "#/definitions/ansible_truth" }, "container_limits": { "type": "object", "description": "A dictionary of limits applied to each container created by the build process." }, "dockerfile": { "type": "string", "description": "Default: Dockerfile\n\nUse with state C(present) to provide an alternate name for the Dockerfile to use when building an image." }, "nocache": { "description": "Do not use cache when building an image.", "$ref": "#/definitions/ansible_truth" }, "load_path": { "type": "string", "description": "Use with state C(present) to load an image from a .tar file." }, "use_tls": { "type": "string", "description": "DEPRECATED. Whether to use tls to connect to the docker server. Set to C(no) when TLS will not be used. Set to C(encrypt) to use TLS. And set to C(verify) to use TLS and verify that the server's certificate is valid for the server. NOTE: If you specify this option, it will set the value of the tls or tls_verify parameters." }, "state": { "type": "string", "description": "Default: present\n\nMake assertions about the state of an image.\nWhen C(absent) an image will be removed. Use the force option to un-tag and remove all images matching the provided name.\nWhen C(present) check if an image exists using the provided name and tag. If the image is not found or the force option is used, the image will either be pulled, built or loaded. By default the image will be pulled from Docker Hub. To build the image, provide a path value set to a directory containing a context and Dockerfile. To load an image, specify load_path to provide a path to an archive file. To tag an image to a repository, provide a repository path. If the name contains a repository path, it will be pushed.\nNOTE: C(build) is DEPRECATED and will be removed in release 2.3. Specifying C(build) will behave the same as C(present)." }, "tag": { "type": "string", "description": "Default: latest\n\nUsed to select an image when pulling. Will be added to the image when pushing, tagging or building. Defaults to I(latest).\nIf C(name) parameter format is I(name:tag), then tag value from C(name) will take precedence." }, "buildargs": { "type": "string", "description": "Provide a dictionary of C(key:value) build arguments that map to Dockerfile ARG directive.\nDocker expects the value to be a string. For convenience any non-string values will be converted to strings.\nRequires Docker API >= 1.21 and docker-py >= 1.7.0." }, "rm": { "description": "Default: True\n\nRemove intermediate containers after build.", "$ref": "#/definitions/ansible_truth" }, "push": { "description": "Push the image to the registry. Specify the registry as part of the I(name) or I(repository) parameter.", "$ref": "#/definitions/ansible_truth" }, "path": { "type": "string", "description": "Use with state 'present' to build an image. Will be the path to a directory containing the context and Dockerfile for building an image." }, "http_timeout": { "type": "string", "description": "Timeout for HTTP requests during the image build operation. Provide a positive integer value for the number of seconds." } } }, "aci_epg": { "allOf": [ { "allOf": [ { "not": { "required": [ "bd", "bd_name", "bridge_domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "bd" ], "type": "object" }, { "required": [ "bd_name" ], "type": "object" }, { "required": [ "bridge_domain" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ap", "app_profile", "app_profile_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "ap" ], "type": "object" }, { "required": [ "app_profile" ], "type": "object" }, { "required": [ "app_profile_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "epg", "epg_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "epg" ], "type": "object" }, { "required": [ "epg_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage End Point Groups (EPG) on Cisco ACI fabrics.", "properties": { "bd": { "type": "string", "description": "Name of the bridge domain being associated with the EPG." }, "epg_name": { "type": "string", "description": "Name of the end point group." }, "description": { "type": "string", "description": "Description for the EPG." }, "descr": { "type": "string", "description": "Description for the EPG." }, "app_profile": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "tenant_name": { "type": "string", "description": "Name of an existing tenant." }, "fwd_control": { "type": "string", "description": "Default: none\n\nThe forwarding control used by the EPG.\nThe APIC defaults new EPGs to C(none)." }, "priority": { "type": "string", "description": "Default: unspecified\n\nQoS class." }, "ap": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "app_profile_name": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "preferred_group": { "description": "Default: no\n\nWhether ot not the EPG is part of the Preferred Group and can communicate without contracts.\nThis is very convenient for migration scenarios, or when ACI is used for network automation but not for policy.", "$ref": "#/definitions/ansible_truth" }, "bd_name": { "type": "string", "description": "Name of the bridge domain being associated with the EPG." }, "epg": { "type": "string", "description": "Name of the end point group." }, "bridge_domain": { "type": "string", "description": "Name of the bridge domain being associated with the EPG." }, "intra_epg_isolation": { "type": "string", "description": "Default: unenforced\n\nIntra EPG Isolation." }, "tenant": { "type": "string", "description": "Name of an existing tenant." }, "name": { "type": "string", "description": "Name of the end point group." } } }, "ec2_vpc_dhcp_options_facts": { "type": "object", "description": "Gather facts about dhcp options sets in AWS", "properties": { "DhcpOptionsIds": { "type": "string", "description": "Default: None\n\nGet details of specific DHCP Option ID\nProvide this value as a list" }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) for possible filters." } } }, "vmadm": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "alias" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SmartOS virtual machines through vmadm(1M).", "properties": { "customer_metadata": { "type": "string", "description": "Metadata to be set and associated with this VM, this contain customer modifiable keys." }, "disk_driver": { "type": "string", "description": "Default value for a virtual disk model for KVM guests." }, "force": { "type": "string", "description": "Force a particular action (i.e. stop or delete a VM)." }, "zfs_root_compression": { "type": "string", "description": "Specifies compression algorithm used for this VMs root dataset. This option only has effect on the zoneroot dataset." }, "virtio_txtimer": { "type": "string", "description": "Timeout (in nanoseconds) for the TX timer of virtio NICs." }, "spice_password": { "type": "string", "description": "Password required to connect to SPICE. By default no password is set. Please note this can be read from the Global Zone." }, "zfs_io_priority": { "type": "string", "description": "IO throttle priority value relative to other VMs." }, "ram": { "type": "string", "description": "Amount of virtual RAM for a KVM guest (in MiBs)." }, "dns_domain": { "type": "string", "description": "Domain value for C(/etc/hosts)." }, "max_physical_memory": { "type": "string", "description": "Maximum amount of memory (in MiBs) on the host that the VM is allowed to use." }, "nic_driver": { "type": "string", "description": "Default value for a virtual NIC model for KVM guests." }, "zfs_data_compression": { "type": "string", "description": "Specifies compression algorithm used for this VMs data dataset. This option only has effect on delegated datasets." }, "image_uuid": { "type": "string", "description": "Image UUID." }, "spice_opts": { "type": "string", "description": "Addition options for SPICE-enabled KVM VMs." }, "fs_allowed": { "type": "string", "description": "Comma separated list of filesystem types this zone is allowed to mount." }, "qemu_opts": { "type": "string", "description": "Additional qemu arguments for KVM guests. This overwrites the default arguments provided by vmadm(1M) and should only be used for debugging." }, "virtio_txburst": { "type": "string", "description": "Number of packets that can be sent in a single flush of the tx queue of virtio NICs." }, "firewall_enabled": { "type": "string", "description": "Enables the firewall, allowing fwadm(1M) rules to be applied." }, "mdata_exec_timeout": { "type": "string", "description": "Timeout in seconds (or 0 to disable) for the C(svc:/smartdc/mdata:execute) service that runs user-scripts in the zone." }, "alias": { "type": "string", "description": "Name of the VM. vmadm(1M) uses this as an optional name." }, "nics": { "type": "string", "description": "A list of nics to add, valid properties are documented in vmadm(1M)." }, "hostname": { "type": "string", "description": "Zone/VM hostname." }, "boot": { "type": "string", "description": "Set the boot order for KVM VMs." }, "vga": { "type": "string", "description": "Specify VGA emulation used by KVM VMs." }, "name": { "type": "string", "description": "Name of the VM. vmadm(1M) uses this as an optional name." }, "zfs_snapshot_limit": { "type": "string", "description": "Number of snapshots the VM can have." }, "state": { "type": "string", "description": "States for the VM to be in. Please note that C(present), C(stopped) and C(restarted) operate on a VM that is currently provisioned. C(present) means that the VM will be created if it was absent, and that it will be in a running state. C(absent) will shutdown the zone before removing it. C(stopped) means the zone will be created if it doesn't exist already, before shutting it down." }, "limit_priv": { "type": "string", "description": "Set (comma separated) list of privileges the zone is allowed to use." }, "cpu_cap": { "type": "string", "description": "Sets a limit on the amount of CPU time that can be used by a VM. Use C(0) for no cap." }, "maintain_resolvers": { "type": "string", "description": "Resolvers in C(/etc/resolv.conf) will be updated when updating the I(resolvers) property." }, "zfs_data_recsize": { "type": "string", "description": "Suggested block size (power of 2) for files in the delegated dataset's filesystem." }, "qemu_extra_opts": { "type": "string", "description": "Additional qemu cmdline arguments for KVM guests." }, "vnc_password": { "type": "string", "description": "Password required to connect to VNC. By default no password is set. Please note this can be read from the Global Zone." }, "max_swap": { "type": "string", "description": "Maximum amount of virtual memory (in MiBs) the VM is allowed to use." }, "zfs_root_recsize": { "type": "string", "description": "Suggested block size (power of 2) for files in the zoneroot dataset's filesystem." }, "brand": { "type": "string", "description": "Default: joyent\n\nType of virtual machine." }, "zfs_filesystem_limit": { "type": "string", "description": "Maximum number of filesystems the VM can have." }, "quota": { "type": "string", "description": "Quota on zone filesystems (in MiBs)." }, "filesystems": { "type": "string", "description": "Mount additional filesystems into an OS VM." }, "autoboot": { "type": "string", "description": "Whether or not a VM is booted when the system is rebooted." }, "tmpfs": { "type": "string", "description": "Amount of memory (in MiBs) that will be available in the VM for the C(/tmp) filesystem." }, "indestructible_zoneroot": { "type": "string", "description": "Adds an C(@indestructible) snapshot to zoneroot." }, "resolvers": { "type": "array", "description": "List of resolvers to be put into C(/etc/resolv.conf)." }, "max_lwps": { "type": "string", "description": "Maximum number of lightweight processes this VM is allowed to have running." }, "nowait": { "type": "string", "description": "Consider the provisioning complete when the VM first starts, rather than when the VM has rebooted." }, "indestructible_delegated": { "type": "string", "description": "Adds an C(@indestructible) snapshot to delegated datasets." }, "kernel_version": { "type": "string", "description": "Kernel version to emulate for LX VMs." }, "max_locked_memory": { "type": "string", "description": "Total amount of memory (in MiBs) on the host that can be locked by this VM." }, "disks": { "type": "string", "description": "A list of disks to add, valid properties are documented in vmadm(1M)." }, "uuid": { "type": "string", "description": "UUID of the VM. Can either be a full UUID or C(*) for all VMs." }, "internal_metadata_namespace": { "type": "array", "description": "List of namespaces to be set as I(internal_metadata-only); these namespaces will come from I(internal_metadata) rather than I(customer_metadata)." }, "delegate_dataset": { "type": "string", "description": "Whether to delegate a ZFS dataset to an OS VM." }, "archive_on_delete": { "type": "string", "description": "When enabled, the zone dataset will be mounted on C(/zones/archive) upon removal." }, "vcpus": { "type": "string", "description": "Number of virtual CPUs for a KVM guest." }, "internal_metadata": { "type": "string", "description": "Metadata to be set and associated with this VM, this contains operator generated keys." }, "cpu_type": { "type": "string", "description": "Default: qemu64\n\nControl the type of virtual CPU exposed to KVM VMs." }, "routes": { "type": "object", "description": "Dictionary that maps destinations to gateways, these will be set as static routes in the VM." }, "zpool": { "type": "string", "description": "ZFS pool the VM's zone dataset will be created in." }, "docker": { "type": "string", "description": "Docker images need this flag enabled along with the I(brand) set to C(lx)." }, "cpu_shares": { "type": "string", "description": "Sets a limit on the number of fair share scheduler (FSS) CPU shares for a VM. This limit is relative to all other VMs on the system." }, "vnc_port": { "type": "string", "description": "TCP port to listen of the VNC server. Or set C(0) for random, or C(-1) to disable." } } }, "ec2_vpc_net": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "Create, modify, and terminate AWS virtual private clouds.", "properties": { "purge_cidrs": { "type": "string", "description": "Remove CIDRs that are associated with the VPC and are not specified in C(cidr_block)." }, "name": { "type": "string", "description": "The name to give your VPC. This is used in combination with C(cidr_block) to determine if a VPC already exists." }, "dns_support": { "type": "string", "description": "Default: True\n\nWhether to enable AWS DNS support." }, "tags": { "type": "string", "description": "The tags you want attached to the VPC. This is independent of the name value, note if you pass a 'Name' key it would override the Name of the VPC if it's different." }, "multi_ok": { "type": "string", "description": "By default the module will not create another VPC if there is another VPC with the same name and CIDR block. Specify this as true if you want duplicate VPCs created." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the VPC. Either absent or present." }, "tenancy": { "type": "string", "description": "Default: default\n\nWhether to be default or dedicated tenancy. This cannot be changed after the VPC has been created." }, "dns_hostnames": { "type": "string", "description": "Default: True\n\nWhether to enable AWS hostname support." }, "resource_tags": { "type": "string", "description": "The tags you want attached to the VPC. This is independent of the name value, note if you pass a 'Name' key it would override the Name of the VPC if it's different." }, "cidr_block": { "type": "string", "description": "The primary CIDR of the VPC. After 2.5 a list of CIDRs can be provided. The first in the list will be used as the primary CIDR and is used in conjunction with the C(name) to ensure idempotence." }, "dhcp_opts_id": { "type": "string", "description": "the id of the DHCP options to use for this vpc" } } }, "rax_keypair": { "required": [ "name" ], "type": "object", "description": "Create a keypair for use with Rackspace Cloud Servers", "properties": { "public_key": { "type": "string", "description": "Public Key string to upload. Can be a file path or string" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "name": { "type": "string", "description": "Name of keypair" } } }, "aci_epg_to_domain": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain", "domain_name", "domain_profile" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ap", "app_profile", "app_profile_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "domain_type", "type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "epg", "epg_name", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind EPGs to Physical and Virtual Domains on Cisco ACI fabrics.", "properties": { "domain": { "type": "string", "description": "Name of the physical or virtual domain being associated with the EPG." }, "allow_useg": { "type": "string", "description": "Default: encap\n\nAllows micro-segmentation.\nThe APIC defaults new EPG to Domain bindings to use C(encap)." }, "tenant_name": { "type": "string", "description": "Name of an existing tenant." }, "ap": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "vm_provider": { "type": "string", "description": "The VM platform for VMM Domains.\nSupport for Kubernetes was added in ACI v3.0.\nSupport for CloudFoundry, OpenShift and Red Hat was added in ACI v3.1." }, "epg_name": { "type": "string", "description": "Name of the end point group." }, "domain_name": { "type": "string", "description": "Name of the physical or virtual domain being associated with the EPG." }, "primary_encap": { "type": "string", "description": "Determines the primary VLAN ID when using useg." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "app_profile_name": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "encap": { "type": "string", "description": "The VLAN encapsulation for the EPG when binding a VMM Domain with static encap_mode.\nThis acts as the secondary encap when using useg." }, "type": { "type": "string", "description": "Determines if the Domain is physical (phys) or virtual (vmm)." }, "app_profile": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "domain_type": { "type": "string", "description": "Determines if the Domain is physical (phys) or virtual (vmm)." }, "encap_mode": { "type": "string", "description": "Default: auto\n\nThe ecapsulataion method to be used.\nThe APIC defaults new EPG to Domain bindings to C(auto)." }, "netflow": { "description": "Default: no\n\nDetermines if netflow should be enabled.\nThe APIC defaults new EPG to Domain binings to C(no).", "$ref": "#/definitions/ansible_truth" }, "resolution_immediacy": { "type": "string", "description": "Default: lazy\n\nDetermines when the policies should be resolved and available.\nThe APIC defaults new EPG to Domain bindings to C(lazy)." }, "tenant": { "type": "string", "description": "Name of an existing tenant." }, "domain_profile": { "type": "string", "description": "Name of the physical or virtual domain being associated with the EPG." }, "name": { "type": "string", "description": "Name of the end point group." }, "deploy_immediacy": { "type": "string", "description": "Default: lazy\n\nDetermines when the policy is pushed to hardware Policy CAM.\nThe APIC defaults new EPG to Domain bindings to C(lazy)." }, "epg": { "type": "string", "description": "Name of the end point group." } } }, "aws_kms": { "required": [ "mode" ], "type": "object", "description": "Manage role/user access to a KMS key. Not designed for encrypting/decrypting.", "properties": { "role_arn": { "type": "string", "description": "ARN of role to allow/deny access. One of C(role_name) or C(role_arn) are required." }, "grant_types": { "type": "array", "description": "List of grants to give to user/role. Likely \"role,role grant\" or \"role,role grant,admin\". Required when C(mode=grant)." }, "role_name": { "type": "string", "description": "Role to allow/deny access. One of C(role_name) or C(role_arn) are required." }, "mode": { "type": "string", "description": "Default: grant\n\nGrant or deny access." }, "key_arn": { "type": "string", "description": "Full ARN to the key. One of C(key_alias) or C(key_arn) are required." }, "clean_invalid_entries": { "description": "Default: True\n\nIf adding/removing a role and invalid grantees are found, remove them. These entries will cause an update to fail in all known cases.\nOnly cleans if changes are being made.", "$ref": "#/definitions/ansible_truth" }, "key_alias": { "type": "string", "description": "Alias label to the key. One of C(key_alias) or C(key_arn) are required." } } }, "nxos_snmp_traps": { "required": [ "group" ], "type": "object", "description": "Manages SNMP traps configurations.", "properties": { "state": { "type": "string", "description": "Default: enabled\n\nManage the state of the resource." }, "group": { "type": "string", "description": "Case sensitive group." } } }, "win_timezone": { "required": [ "timezone" ], "type": "object", "description": "Sets machine time to the specified timezone, the module will check if the provided timezone is supported on the machine.", "properties": { "timezone": { "type": "string", "description": "Timezone to set to. Example Central Standard Time" } } }, "bigip_device_ntp": { "type": "object", "description": "Manage NTP servers on a BIG-IP.", "properties": { "ntp_servers": { "type": "string", "description": "A list of NTP servers to set on the device. At least one of C(ntp_servers) or C(timezone) is required." }, "timezone": { "type": "string", "description": "Default: UTC\n\nThe timezone to set for NTP lookups. At least one of C(ntp_servers) or C(timezone) is required." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the NTP servers on the system. When C(present), guarantees that the NTP servers are set on the system. When C(absent), removes the specified NTP servers from the device configuration." } } }, "ec2_eni": { "type": "object", "description": "Create and optionally attach an Elastic Network Interface (ENI) to an instance. If an ENI ID or private_ip is provided, the existing ENI (if any) will be modified. The 'attached' parameter controls the attachment status of the network interface.", "properties": { "secondary_private_ip_addresses": { "type": "string", "description": "A list of IP addresses to assign as secondary IP addresses to the network interface. This option is mutually exclusive of secondary_private_ip_address_count" }, "description": { "type": "string", "description": "Optional description of the ENI." }, "subnet_id": { "type": "string", "description": "ID of subnet in which to create the ENI." }, "device_index": { "type": "string", "description": "The index of the device for the network interface attachment on the instance." }, "attached": { "type": "string", "description": "Default: True\n\nSpecifies if network interface should be attached or detached from instance. If ommited, attachment status won't change" }, "force_detach": { "type": "string", "description": "Force detachment of the interface. This applies either when explicitly detaching the interface by setting instance_id to None or when deleting an interface with state=absent." }, "instance_id": { "type": "string", "description": "Instance ID that you wish to attach ENI to. Since version 2.2, use the 'attached' parameter to attach or detach an ENI. Prior to 2.2, to detach an ENI from an instance, use 'None'." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete ENI" }, "source_dest_check": { "type": "string", "description": "By default, interfaces perform source/destination checks. NAT instances however need this check to be disabled. You can only specify this flag when the interface is being modified, not on creation." }, "private_ip_address": { "type": "string", "description": "Private IP address." }, "secondary_private_ip_address_count": { "type": "string", "description": "The number of secondary IP addresses to assign to the network interface. This option is mutually exclusive of secondary_private_ip_addresses" }, "purge_secondary_private_ip_addresses": { "type": "string", "description": "To be used with I(secondary_private_ip_addresses) to determine whether or not to remove any secondary IP addresses other than those specified. Set secondary_private_ip_addresses to an empty list to purge all secondary addresses." }, "eni_id": { "type": "string", "description": "The ID of the ENI (to modify); if null and state is present, a new eni will be created." }, "delete_on_termination": { "type": "string", "description": "Delete the interface when the instance it is attached to is terminated. You can only specify this flag when the interface is being modified, not on creation." }, "security_groups": { "type": "array", "description": "List of security groups associated with the interface. Only used when state=present. Since version 2.2, you can specify security groups by ID or by name or a combination of both. Prior to 2.2, you can specify only by ID." } } }, "cisco_spark": { "allOf": [ { "allOf": [ { "not": { "required": [ "personal_token", "token" ], "type": "object" } }, { "oneOf": [ { "required": [ "personal_token" ], "type": "object" }, { "required": [ "token" ], "type": "object" } ] } ] } ], "type": "object", "description": "Send a message to a Cisco Spark Room or Individual with options to control the formatting.", "properties": { "personal_token": { "type": "string", "description": "Your personal access token required to validate the Spark API." }, "token": { "type": "string", "description": "Your personal access token required to validate the Spark API." }, "recipient_id": { "type": "string", "description": "The unique identifier associated with the supplied C(recipient_type)." }, "recipient_type": { "type": "string", "description": "The request parameter you would like to send the message to.\nMessages can be sent to either a room or individual (by ID or E-Mail)." }, "message": { "type": "string", "description": "The message you would like to send." }, "message_type": { "type": "string", "description": "Default: text\n\nSpecifies how you would like the message formatted." } } }, "ce_info_center_debug": { "type": "object", "description": "Manages information center debug configurations on HUAWEI CloudEngine switches.", "properties": { "debug_enable": { "type": "string", "description": "Default: no_use\n\nWhether a device is enabled to output debugging information." }, "debug_level": { "type": "string", "description": "Debug level permitted to output." }, "debug_time_stamp": { "type": "string", "description": "Timestamp type of debugging information." }, "channel_id": { "type": "string", "description": "Number of a channel. The value is an integer ranging from 0 to 9. The default value is 0." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "module_name": { "type": "string", "description": "Module name of the rule. The value is a string of 1 to 31 case-insensitive characters. The default value is default. Please use lower-case letter, such as [aaa, acl, arp, bfd]." } } }, "ec2_snapshot_facts": { "type": "object", "description": "Gather facts about ec2 volume snapshots in AWS", "properties": { "restorable_by_user_ids": { "type": "string", "description": "If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned." }, "snapshot_ids": { "type": "string", "description": "If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned." }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSnapshots.html) for possible filters. Filter names and values are case sensitive." }, "owner_ids": { "type": "string", "description": "If you specify one or more snapshot owners, only snapshots from the specified owners and for which you have access are returned." } } }, "aws_acm_facts": { "type": "object", "description": "Retrieve facts for ACM certificates", "properties": { "status": { "type": "string", "description": "Status to filter the certificate results" }, "name": { "type": "string", "description": "The name of an ACM certificate" } } }, "ipmi_power": { "required": [ "state", "name", "password", "user" ], "type": "object", "description": "Use this module for power management", "properties": { "name": { "type": "string", "description": "Hostname or ip address of the BMC." }, "state": { "type": "string", "description": "Whether to ensure that the machine in desired state." }, "user": { "type": "string", "description": "Username to use to connect to the BMC." }, "timeout": { "type": "string", "description": "Default: 300\n\nMaximum number of seconds before interrupt request." }, "password": { "type": "string", "description": "Password to connect to the BMC." }, "port": { "type": "string", "description": "Default: 623\n\nRemote RMCP port." } } }, "cs_loadbalancer_rule": { "allOf": [ { "allOf": [ { "not": { "required": [ "ip_address", "public_ip" ], "type": "object" } }, { "oneOf": [ { "required": [ "ip_address" ], "type": "object" }, { "required": [ "public_ip" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, update and remove load balancer rules.", "properties": { "public_ip": { "type": "string", "description": "Public IP address from where the network traffic will be load balanced from." }, "domain": { "type": "string", "description": "Domain the rule is related to." }, "protocol": { "type": "string", "description": "The protocol to be used on the load balancer" }, "name": { "type": "string", "description": "The name of the load balancer rule." }, "open_firewall": { "type": "string", "description": "Whether the firewall rule for public port should be created, while creating the new rule.\nUse M(cs_firewall) for managing firewall rules." }, "public_port": { "type": "string", "description": "The public port from where the network traffic will be load balanced from.\nRequired when using C(state=present).\nCan not be changed once the rule exists due API limitation." }, "account": { "type": "string", "description": "Account the rule is related to." }, "project": { "type": "string", "description": "Name of the project the load balancer IP address is related to." }, "private_port": { "type": "string", "description": "The private port of the private ip address/virtual machine where the network traffic will be load balanced to.\nRequired when using C(state=present).\nCan not be changed once the rule exists due API limitation." }, "state": { "type": "string", "description": "Default: present\n\nState of the rule." }, "algorithm": { "type": "string", "description": "Default: source\n\nLoad balancer algorithm\nRequired when using C(state=present)." }, "cidr": { "type": "string", "description": "CIDR (full notation) to be used for firewall rule if required." }, "zone": { "type": "string", "description": "Name of the zone in which the rule should be created.\nIf not set, default zone is used." }, "ip_address": { "type": "string", "description": "Public IP address from where the network traffic will be load balanced from." }, "description": { "type": "string", "description": "The description of the load balancer rule." } } }, "vmware_dvswitch": { "required": [ "datacenter_name", "uplink_quantity", "mtu", "switch_name", "discovery_proto" ], "type": "object", "description": "Create or remove a distributed vSwitch", "properties": { "datacenter_name": { "type": "string", "description": "The name of the datacenter that will contain the dvSwitch" }, "discovery_proto": { "type": "string", "description": "Link discovery protocol between Cisco and Link Layer discovery" }, "mtu": { "type": "string", "description": "The switch maximum transmission unit" }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove dvSwitch" }, "discovery_operation": { "type": "string", "description": "Select the discovery operation" }, "switch_name": { "type": "string", "description": "The name of the switch to create or remove" }, "uplink_quantity": { "type": "string", "description": "Quantity of uplink per ESXi host added to the switch" } } }, "digital_ocean_floating_ip_facts": { "required": [ "oauth_token" ], "type": "object", "description": "Fetch DigitalOcean Floating IPs facts.", "properties": { "oauth_token": { "type": "string", "description": "DigitalOcean OAuth token." }, "timeout": { "type": "string", "description": "Default: 30\n\nThe timeout in seconds used for polling DigitalOcean's API." } } }, "ec2_vpc_subnet": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "Manage subnets in AWS virtual private clouds", "properties": { "assign_instances_ipv6": { "type": "string", "description": "Specify true to indicate that instances launched into the subnet should be automatically assigned an IPv6 address." }, "ipv6_cidr": { "type": "string", "description": "The IPv6 CIDR block for the subnet. The VPC must have a /56 block assigned and this value must be a valid IPv6 /64 that falls in the VPC range.\nRequired if I(assign_instances_ipv6=true)" }, "tags": { "type": "string", "description": "A dict of tags to apply to the subnet. Any tags currently applied to the subnet and not present here will be removed." }, "purge_tags": { "type": "string", "description": "Default: True\n\nWhether or not to remove tags that do not appear in the I(tags) list. Defaults to true." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove the subnet" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nNumber of seconds to wait for subnet to become available I(wait=True)." }, "vpc_id": { "type": "string", "description": "VPC ID of the VPC in which to create or delete the subnet." }, "map_public": { "type": "string", "description": "Specify true to indicate that instances launched into the subnet should be assigned public IP address by default." }, "resource_tags": { "type": "string", "description": "A dict of tags to apply to the subnet. Any tags currently applied to the subnet and not present here will be removed." }, "cidr": { "type": "string", "description": "The CIDR block for the subnet. E.g. 192.0.2.0/24." }, "az": { "type": "string", "description": "The availability zone for the subnet." }, "wait": { "type": "string", "description": "Default: True\n\nWhen specified,I(state=present) module will wait for subnet to be in available state before continuing." } } }, "rax_clb_nodes": { "required": [ "load_balancer_id" ], "type": "object", "description": "Adds, modifies and removes nodes from a Rackspace Cloud Load Balancer", "properties": { "node_id": { "type": "string", "description": "Node id" }, "weight": { "type": "string", "description": "Weight of node" }, "load_balancer_id": { "type": "string", "description": "Load balancer id" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the node" }, "wait_timeout": { "type": "string", "description": "Default: 30\n\nHow long to wait before giving up and returning an error" }, "address": { "type": "string", "description": "IP address or domain name of the node" }, "type": { "type": "string", "description": "Type of node" }, "port": { "type": "string", "description": "Port number of the load balanced service on the node" }, "condition": { "type": "string", "description": "Condition for the node, which determines its role within the load balancer" }, "wait": { "type": "string", "description": "Default: no\n\nWait for the load balancer to become active before returning" } } }, "avi_httppolicyset": { "required": [ "name" ], "type": "object", "description": "This module is used to configure HTTPPolicySet object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the http policy set." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name." }, "name": { "type": "string", "description": "Name of the http policy set." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "cloud_config_cksum": { "type": "string", "description": "Checksum of cloud configuration for pool.\nInternally set by cloud connector." }, "http_security_policy": { "type": "string", "description": "Http security policy for the virtual service." }, "http_request_policy": { "type": "string", "description": "Http request policy for the virtual service." }, "http_response_policy": { "type": "string", "description": "Http response policy for the virtual service." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "is_internal_policy": { "description": "Boolean flag to set is_internal_policy.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" } } }, "mysql_db": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "db" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "db" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add or remove MySQL databases from a remote host.", "properties": { "target": { "type": "string", "description": "Location, on the remote host, of the dump file to read from or write to. Uncompressed SQL files (C(.sql)) as well as bzip2 (C(.bz2)), gzip (C(.gz)) and xz (Added in 2.0) compressed files are supported." }, "encoding": { "type": "string", "description": "Encoding mode to use, examples include C(utf8) or C(latin1_swedish_ci)" }, "db": { "type": "string", "description": "name of the database to add or remove\nname=all May only be provided if I(state) is C(dump) or C(import).\nif name=all Works like --all-databases option for mysqldump (Added in 2.0)" }, "name": { "type": "string", "description": "name of the database to add or remove\nname=all May only be provided if I(state) is C(dump) or C(import).\nif name=all Works like --all-databases option for mysqldump (Added in 2.0)" }, "quick": { "type": "string", "description": "Default: True\n\nOption used for dumping large tables" }, "state": { "type": "string", "description": "Default: present\n\nThe database state" }, "collation": { "type": "string", "description": "Collation mode (sorting). This only applies to new table/databases and does not update existing ones, this is a limitation of MySQL." }, "single_transaction": { "type": "string", "description": "Execute the dump in a single transaction" } } }, "ovirt_snapshots_facts": { "required": [ "vm" ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV virtual machine snapshots.", "properties": { "snapshot_id": { "type": "string", "description": "Id of the snaphost we want to retrieve facts about." }, "description": { "type": "string", "description": "Description of the snapshot, can be used as glob expression." }, "vm": { "type": "string", "description": "Name of the VM with snapshot." } } }, "bigip_monitor_http": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM http monitors.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/http\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(http) parent on the C(Common) partition." }, "receive": { "type": "string", "description": "The receive string for the monitor call." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "send": { "type": "string", "description": "The send string for the monitor call. When creating a new monitor, if this value is not provided, the default C(GET /\\r\\n) will be used." }, "target_username": { "type": "string", "description": "Specifies the user name, if the monitored target requires authentication." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." }, "target_password": { "type": "string", "description": "Specifies the password, if the monitored target requires authentication." }, "port": { "type": "string", "description": "Port address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'. Note that if specifying an IP address, a value between 1 and 65535 must be specified." }, "receive_disable": { "type": "string", "description": "This setting works like C(receive), except that the system marks the node or pool member disabled when its response matches the C(receive_disable) string but not C(receive). To use this setting, you must specify both C(receive_disable) and C(receive)." } } }, "gce_mig": { "required": [ "name", "zone" ], "type": "object", "description": "Create, Update or Destroy a Managed Instance Group (MIG). See U(https://cloud.google.com/compute/docs/instance-groups) for an overview. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "name": { "type": "string", "description": "Name of the Managed Instance Group." }, "zone": { "type": "string", "description": "The GCE zone to use for this Managed Instance Group." }, "service_account_email": { "type": "string", "description": "service account email" }, "autoscaling": { "type": "object", "description": "A dictionary of configuration for the autoscaler. 'enabled (bool)', 'name (str)' and policy.max_instances (int) are required fields if autoscaling is used. See U(https://cloud.google.com/compute/docs/reference/beta/autoscalers) for more information on Autoscaling." }, "named_ports": { "type": "string", "description": "Define named ports that backend services can forward data to. Format is a a list of name:port dictionaries." }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the resource" }, "template": { "type": "string", "description": "Instance Template to be used in creating the VMs. See U(https://cloud.google.com/compute/docs/instance-templates) to learn more about Instance Templates. Required for creating MIGs." }, "credentials_file": { "type": "string", "description": "Path to the JSON file associated with the service account email" }, "project_id": { "type": "string", "description": "GCE project ID" }, "size": { "type": "string", "description": "Size of Managed Instance Group. If MIG already exists, it will be resized to the number provided here. Required for creating MIGs." } } }, "ios_l2_interface": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module provides declarative management of Layer-2 interface on Cisco IOS devices.", "properties": { "native_vlan": { "type": "string", "description": "Native VLAN to be configured in trunk port. If C(mode=trunk), used as the trunk native VLAN ID." }, "access_vlan": { "type": "string", "description": "Configure given VLAN in access port. If C(mode=access), used as the access VLAN ID." }, "name": { "type": "string", "description": "Full name of the interface excluding any logical unit number, i.e. GigabitEthernet0/1." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the Layer-2 Interface configuration." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." }, "trunk_vlans": { "type": "array", "description": "List of VLANs to be configured in trunk port. If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk." }, "trunk_allowed_vlans": { "type": "array", "description": "List of allowed VLANs in a given trunk port. If C(mode=trunk), these are the only VLANs that will be configured on the trunk, i.e. \"2-10,15\"." }, "mode": { "type": "string", "description": "Default: access\n\nMode in which interface needs to be configured." }, "interface": { "type": "string", "description": "Full name of the interface excluding any logical unit number, i.e. GigabitEthernet0/1." } } }, "avi_serviceenginegroup": { "required": [ "name" ], "type": "object", "description": "This module is used to configure ServiceEngineGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "disable_tso": { "description": "Disable tcp segmentation offload (tso) in dpdk poll-mode driver packet transmit path.\nTso is on by default on nics that support it.\nField introduced in 17.2.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "host_attribute_value": { "type": "string", "description": "Value of a (key, value) pair identifying a label for a set of nodes usually in container clouds.\nNeeds to be specified together with host_attribute_key." }, "async_ssl": { "description": "Ssl handshakes will be handled by dedicated ssl threads.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "instance_flavor": { "type": "string", "description": "Instance/flavor type for se instance." }, "auto_redistribute_active_standby_load": { "description": "Redistribution of virtual services from the takeover se to the replacement se can cause momentary traffic loss.\nIf the auto-redistribute load option is left in its default off state, any desired rebalancing requires calls to rest api.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "vs_scalein_timeout": { "type": "string", "description": "Time to wait for the scaled in se to drain existing flows before marking the scalein done.\nDefault value when not specified in API or module is interpreted by Avi Controller as 30.\nUnits(SEC)." }, "se_udp_encap_ipc": { "type": "string", "description": "Determines if se-se ipc messages are encapsulated in an udp header 0 automatically determine based on hypervisor type.\n1 use udp encap unconditionally.\n~[0,1] don't use udp encap.\nField introduced in 17.1.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "min_cpu_usage": { "type": "string", "description": "When cpu usage on an se falls below the minimum threshold, virtual services hosted on the se may be consolidated onto other underutilized ses.\nAfter consolidation, unused service engines may then be eligible for deletion.\nAllowed values are 20-60.\nDefault value when not specified in API or module is interpreted by Avi Controller as 30.\nUnits(PERCENT)." }, "custom_securitygroups_data": { "type": "string", "description": "Custom security groups to be associated with data vnics for se instances in openstack and aws clouds.\nField introduced in 17.1.3." }, "vcenter_clusters": { "type": "string", "description": "Vcenterclusters settings for serviceenginegroup." }, "iptables": { "type": "string", "description": "Iptable rules." }, "connection_memory_percentage": { "type": "string", "description": "Percentage of memory for connection state.\nThis will come at the expense of memory used for http in-memory cache.\nAllowed values are 10-90.\nDefault value when not specified in API or module is interpreted by Avi Controller as 50.\nUnits(PERCENT)." }, "service_ip_subnets": { "type": "string", "description": "Subnets assigned to the se group.\nRequired for vs group placement.\nField introduced in 17.1.1." }, "placement_mode": { "type": "string", "description": "If placement mode is 'auto', virtual services are automatically placed on service engines.\nEnum options - PLACEMENT_MODE_AUTO.\nDefault value when not specified in API or module is interpreted by Avi Controller as PLACEMENT_MODE_AUTO." }, "max_scaleout_per_vs": { "type": "string", "description": "Maximum number of active service engines for the virtual service.\nAllowed values are 1-64.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "enable_routing": { "description": "Enable routing for this serviceenginegroup .\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "waf_mempool": { "description": "Enable memory pool for waf.\nField introduced in 17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "per_app": { "description": "Per-app se mode is designed for deploying dedicated load balancers per app (vs).\nIn this mode, each se is limited to a max of 2 vss.\nVcpus in per-app ses count towards licensing usage at 25% rate.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vcenter_datastores_include": { "description": "Boolean flag to set vcenter_datastores_include.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "se_name_prefix": { "type": "string", "description": "Prefix to use for virtual machine name of service engines.\nDefault value when not specified in API or module is interpreted by Avi Controller as Avi." }, "name": { "type": "string", "description": "Name of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "max_se": { "type": "string", "description": "Maximum number of services engines in this group.\nAllowed values are 0-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10." }, "license_type": { "type": "string", "description": "If no license type is specified then default license enforcement for the cloud type is chosen.\nEnum options - LIC_BACKEND_SERVERS, LIC_SOCKETS, LIC_CORES, LIC_HOSTS, LIC_SE_BANDWIDTH.\nField introduced in 17.2.5." }, "se_dos_profile": { "type": "string", "description": "Dosthresholdprofile settings for serviceenginegroup." }, "udf_log_throttle": { "type": "string", "description": "This setting limits the number of udf logs generated per second per core on this se.\nUdf logs are generated due to the configured client log filters or the rules with logging enabled.\nDefault is 100 logs per second.\nSet it to zero (0) to disable throttling.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100.\nUnits(PER_SECOND)." }, "vcenter_hosts": { "type": "string", "description": "Vcenterhosts settings for serviceenginegroup." }, "vcpus_per_se": { "type": "string", "description": "Number of vcpus for each of the service engine virtual machines.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "cpu_socket_affinity": { "description": "Allocate all the cpu cores for the service engine virtual machines on the same cpu socket.\nApplicable only for vcenter cloud.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "realtime_se_metrics": { "type": "string", "description": "Enable or disable real time se metrics." }, "custom_tag": { "type": "string", "description": "Custom tag will be used to create the tags for se instance in aws.\nNote this is not the same as the prefix for se name." }, "non_significant_log_throttle": { "type": "string", "description": "This setting limits the number of non-significant logs generated per second per core on this se.\nDefault is 100 logs per second.\nSet it to zero (0) to disable throttling.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100.\nUnits(PER_SECOND)." }, "extra_shared_config_memory": { "type": "string", "description": "Extra config memory to support large geo db configuration.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.\nUnits(MB)." }, "vcenter_datastores": { "type": "array", "description": "List of vcenterdatastore." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "se_sb_threads": { "type": "string", "description": "Number of sideband threads per se.\nAllowed values are 1-128.\nField introduced in 16.5.2, 17.1.9, 17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "active_standby": { "description": "Service engines in active/standby mode for ha failover.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "auto_rebalance_capacity_per_se": { "type": "string", "description": "Capacities of se for auto rebalance for each criteria.\nField introduced in 17.2.4." }, "se_probe_port": { "type": "string", "description": "Tcp port on se where echo service will be run.\nField introduced in 17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 7." }, "extra_config_multiplier": { "type": "string", "description": "Multiplier for extra config to support large vs/pool config.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.0." }, "async_ssl_threads": { "type": "string", "description": "Number of async ssl threads per se_dp.\nAllowed values are 1-16.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "vcenter_folder": { "type": "string", "description": "Folder to place all the service engine virtual machines in vcenter.\nDefault value when not specified in API or module is interpreted by Avi Controller as AviSeFolder." }, "floating_intf_ip": { "type": "string", "description": "If serviceenginegroup is configured for legacy 1+1 active standby ha mode, floating ip's will be advertised only by the active se in the pair.\nVirtual services in this group must be disabled/enabled for any changes to the floating ip's to take effect.\nOnly active se hosting vs tagged with active standby se 1 tag will advertise this floating ip when manual load distribution is enabled." }, "advertise_backend_networks": { "description": "Advertise reach-ability of backend server networks via adc through bgp for default gateway feature.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "max_cpu_usage": { "type": "string", "description": "When cpu usage on an se exceeds this threshold, virtual services hosted on this se may be rebalanced to other ses to reduce load.\nA new se may be created as part of this process.\nAllowed values are 40-90.\nDefault value when not specified in API or module is interpreted by Avi Controller as 80.\nUnits(PERCENT)." }, "min_scaleout_per_vs": { "type": "string", "description": "Minimum number of active service engines for the virtual service.\nAllowed values are 1-64.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "vss_placement": { "type": "string", "description": "If set, virtual services will be placed on only a subset of the cores of an se.\nField introduced in 17.2.5." }, "buffer_se": { "type": "string", "description": "Excess service engine capacity provisioned for ha failover.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "mem_reserve": { "description": "Boolean flag to set mem_reserve.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "vcenter_datastore_mode": { "type": "string", "description": "Enum options - vcenter_datastore_any, vcenter_datastore_local, vcenter_datastore_shared.\nDefault value when not specified in API or module is interpreted by Avi Controller as VCENTER_DATASTORE_ANY." }, "auto_rebalance_criteria": { "type": "string", "description": "Set of criteria for se auto rebalance.\nEnum options - SE_AUTO_REBALANCE_CPU, SE_AUTO_REBALANCE_PPS, SE_AUTO_REBALANCE_MBPS, SE_AUTO_REBALANCE_OPEN_CONNS, SE_AUTO_REBALANCE_CPS.\nField introduced in 17.2.3." }, "least_load_core_selection": { "description": "Select core with least load for new flow.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "allow_burst": { "description": "Allow ses to be created using burst license.\nField introduced in 17.2.5.", "$ref": "#/definitions/ansible_truth" }, "algo": { "type": "string", "description": "In compact placement, virtual services are placed on existing ses until max_vs_per_se limit is reached.\nEnum options - PLACEMENT_ALGO_PACKED, PLACEMENT_ALGO_DISTRIBUTED.\nDefault value when not specified in API or module is interpreted by Avi Controller as PLACEMENT_ALGO_PACKED." }, "se_bandwidth_type": { "type": "string", "description": "Select the se bandwidth for the bandwidth license.\nEnum options - SE_BANDWIDTH_UNLIMITED, SE_BANDWIDTH_25M, SE_BANDWIDTH_200M, SE_BANDWIDTH_1000M, SE_BANDWIDTH_10000M.\nField introduced in 17.2.5." }, "se_vs_hb_max_vs_in_pkt": { "type": "string", "description": "Maximum number of virtualservices for which heartbeat messages are aggregated in one packet.\nAllowed values are 1-1024.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as 256." }, "enable_vip_on_all_interfaces": { "description": "Enable vip on all interfaces of se.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "auto_rebalance": { "description": "If set, virtual services will be automatically migrated when load on an se is less than minimum or more than maximum thresholds.\nOnly alerts are generated when the auto_rebalance is not set.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "se_tunnel_mode": { "type": "string", "description": "Determines if dsr from secondary se is active or not 0 automatically determine based on hypervisor type.\n1 disable dsr unconditionally.\n~[0,1] enable dsr unconditionally.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "memory_per_se": { "type": "string", "description": "Amount of memory for each of the service engine virtual machines.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2048." }, "se_tunnel_udp_port": { "type": "string", "description": "Udp port for tunneled packets from secondary to primary se in docker bridge mode.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1550." }, "disable_gro": { "description": "Disable generic receive offload (gro) in dpdk poll-mode driver packet receive path.\nGro is on by default on nics that do not support lro (large receive offload) or do not gain performance boost from lro.\nField introduced in 17.2.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "vs_scaleout_timeout": { "type": "string", "description": "Time to wait for the scaled out se to become ready before marking the scaleout done.\nDefault value when not specified in API or module is interpreted by Avi Controller as 30.\nUnits(SEC)." }, "mgmt_subnet": { "type": "string", "description": "Management subnet to use for avi service engines." }, "se_remote_punt_udp_port": { "type": "string", "description": "Udp port for punted packets in docker bridge mode.\nField introduced in 17.1.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1501." }, "ingress_access_mgmt": { "type": "string", "description": "Program se security group ingress rules to allow ssh/icmp management access from remote cidr type.\nEnum options - SG_INGRESS_ACCESS_NONE, SG_INGRESS_ACCESS_ALL, SG_INGRESS_ACCESS_VPC.\nField introduced in 17.1.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as SG_INGRESS_ACCESS_ALL." }, "openstack_mgmt_network_name": { "type": "string", "description": "Avi management network name." }, "max_vs_per_se": { "type": "string", "description": "Maximum number of virtual services that can be placed on a single service engine.\nEast west virtual services are excluded from this limit.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10." }, "os_reserved_memory": { "type": "string", "description": "Amount of extra memory to be reserved for use by the operating system on a service engine.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "openstack_mgmt_network_uuid": { "type": "string", "description": "Management network uuid." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "se_vs_hb_max_pkts_in_batch": { "type": "string", "description": "Maximum number of aggregated vs heartbeat packets to send in a batch.\nAllowed values are 1-256.\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as 8." }, "se_sb_dedicated_core": { "description": "Sideband traffic will be handled by a dedicated core.\nField introduced in 16.5.2, 17.1.9, 17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "host_attribute_key": { "type": "string", "description": "Key of a (key, value) pair identifying a label for a set of nodes usually in container clouds.\nNeeds to be specified together with host_attribute_value.\nSes can be configured differently including ha modes across different se groups.\nMay also be used for isolation between different classes of virtualservices.\nVirtualservices' se group may be specified via annotations/labels.\nA openshift/kubernetes namespace maybe annotated with a matching se group label as openshift.io/node-selector apptype=prod.\nWhen multiple se groups are used in a cloud with host attributes specified,just a single se group can exist as a match-all se group without a\nhost_attribute_key." }, "se_ipc_udp_port": { "type": "string", "description": "Udp port for se_dp ipc in docker bridge mode.\nField introduced in 17.1.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1500." }, "hypervisor": { "type": "string", "description": "Override default hypervisor.\nEnum options - DEFAULT, VMWARE_ESX, KVM, VMWARE_VSAN, XEN." }, "cpu_reserve": { "description": "Boolean flag to set cpu_reserve.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "enable_vmac": { "description": "Use virtual mac address for interfaces on which floating interface ips are placed.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "archive_shm_limit": { "type": "string", "description": "Amount of se memory in gb until which shared memory is collected in core archive.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 8.\nUnits(GB)." }, "hm_on_standby": { "description": "Enable active health monitoring from the standby se for all placed virtual services.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "disk_per_se": { "type": "string", "description": "Amount of disk space for each of the service engine virtual machines.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.\nUnits(GB)." }, "hardwaresecuritymodulegroup_ref": { "type": "string", "description": "It is a reference to an object of type hardwaresecuritymodulegroup." }, "custom_securitygroups_mgmt": { "type": "string", "description": "Custom security groups to be associated with management vnic for se instances in openstack and aws clouds.\nField introduced in 17.1.3." }, "floating_intf_ip_se_2": { "type": "string", "description": "If serviceenginegroup is configured for legacy 1+1 active standby ha mode, floating ip's will be advertised only by the active se in the pair.\nVirtual services in this group must be disabled/enabled for any changes to the floating ip's to take effect.\nOnly active se hosting vs tagged with active standby se 2 tag will advertise this floating ip when manual load distribution is enabled." }, "log_disksz": { "type": "string", "description": "Maximum disk capacity (in mb) to be allocated to an se.\nThis is exclusively used for debug and log data.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10000.\nUnits(MB)." }, "distribute_load_active_standby": { "description": "Use both the active and standby service engines for virtual service placement in the legacy active standby ha mode.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "openstack_availability_zone": { "type": "string", "description": "Field deprecated in 17.1.1." }, "auto_rebalance_interval": { "type": "string", "description": "Frequency of rebalance, if 'auto rebalance' is enabled.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "aggressive_failure_detection": { "description": "Enable aggressive failover configuration for ha.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "ignore_rtt_threshold": { "type": "string", "description": "Ignore rtt samples if it is above threshold.\nField introduced in 17.1.6,17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5000.\nUnits(MILLISECONDS)." }, "openstack_availability_zones": { "type": "string", "description": "Field introduced in 17.1.1." }, "disable_csum_offloads": { "description": "Stop using tcp/udp and ip checksum offload features of nics.\nField introduced in 17.1.14, 17.2.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "num_flow_cores_sum_changes_to_ignore": { "type": "string", "description": "Number of changes in num flow cores sum to ignore.\nDefault value when not specified in API or module is interpreted by Avi Controller as 8." }, "significant_log_throttle": { "type": "string", "description": "This setting limits the number of significant logs generated per second per core on this se.\nDefault is 100 logs per second.\nSet it to zero (0) to disable throttling.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100.\nUnits(PER_SECOND)." }, "description": { "type": "string", "description": "User defined description for the object." }, "vs_scalein_timeout_for_upgrade": { "type": "string", "description": "During se upgrade, time to wait for the scaled-in se to drain existing flows before marking the scalein done.\nDefault value when not specified in API or module is interpreted by Avi Controller as 30.\nUnits(SEC)." }, "se_deprovision_delay": { "type": "string", "description": "Duration to preserve unused service engine virtual machines before deleting them.\nIf traffic to a virtual service were to spike up abruptly, this se would still be available to be utilized again rather than creating a new se.\nIf this value is set to 0, controller will never delete any ses and administrator has to manually cleanup unused ses.\nAllowed values are 0-525600.\nDefault value when not specified in API or module is interpreted by Avi Controller as 120.\nUnits(MIN)." }, "ingress_access_data": { "type": "string", "description": "Program se security group ingress rules to allow vip data access from remote cidr type.\nEnum options - SG_INGRESS_ACCESS_NONE, SG_INGRESS_ACCESS_ALL, SG_INGRESS_ACCESS_VPC.\nField introduced in 17.1.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as SG_INGRESS_ACCESS_ALL." }, "mgmt_network_ref": { "type": "string", "description": "Management network to use for avi service engines.\nIt is a reference to an object of type network." }, "license_tier": { "type": "string", "description": "Specifies the license tier which would be used.\nThis field by default inherits the value from cloud.\nEnum options - ENTERPRISE_16, ENTERPRISE_18.\nField introduced in 17.2.5." }, "flow_table_new_syn_max_entries": { "type": "string", "description": "Maximum number of flow table entries that have not completed tcp three-way handshake yet.\nField introduced in 17.2.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "host_gateway_monitor": { "description": "Enable the host gateway monitor when service engine is deployed as docker container.\nDisabled by default.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "ha_mode": { "type": "string", "description": "High availability mode for all the virtual services using this service engine group.\nEnum options - HA_MODE_SHARED_PAIR, HA_MODE_SHARED, HA_MODE_LEGACY_ACTIVE_STANDBY.\nDefault value when not specified in API or module is interpreted by Avi Controller as HA_MODE_SHARED." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "se_thread_multiplier": { "type": "string", "description": "Multiplier for se threads based on vcpu.\nAllowed values are 1-10.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1." }, "waf_mempool_size": { "type": "string", "description": "Memory pool size used for waf.\nField introduced in 17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 64.\nUnits(KB)." }, "dedicated_dispatcher_core": { "description": "Dedicate the core that handles packet receive/transmit from the network to just the dispatching function.\nDon't use it for tcp/ip and ssl functions.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vs_host_redundancy": { "description": "Ensure primary and secondary service engines are deployed on different physical hosts.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" } } }, "rocketchat": { "required": [ "domain", "token" ], "type": "object", "description": "The C(rocketchat) module sends notifications to Rocket Chat via the Incoming WebHook integration", "properties": { "username": { "type": "string", "description": "Default: Ansible\n\nThis is the sender of the message." }, "domain": { "type": "string", "description": "The domain for your environment without protocol. (i.e. C(example.com) or C(chat.example.com))" }, "protocol": { "type": "string", "description": "Default: https\n\nSpecify the protocol used to send notification messages before the webhook url. (i.e. http or https)" }, "attachments": { "type": "string", "description": "Default: None\n\nDefine a list of attachments." }, "color": { "type": "string", "description": "Default: normal\n\nAllow text to use default colors - use the default of 'normal' to not send a custom color bar at the start of the message" }, "icon_url": { "type": "string", "description": "Default: https://www.ansible.com/favicon.ico\n\nURL for the message sender's icon." }, "token": { "type": "string", "description": "Rocket Chat Incoming Webhook integration token. This provides authentication to Rocket Chat's Incoming webhook for posting messages." }, "icon_emoji": { "type": "string", "description": "Default: None\n\nEmoji for the message sender. The representation for the available emojis can be got from Rocket Chat. (for example :thumbsup:) (if I(icon_emoji) is set, I(icon_url) will not be used)" }, "link_names": { "type": "string", "description": "Default: 1\n\nAutomatically create links for channels and usernames in I(msg)." }, "msg": { "type": "string", "description": "Default: None\n\nMessage to be sent." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "channel": { "type": "string", "description": "Default: None\n\nChannel to send the message to. If absent, the message goes to the channel selected for the I(token) specified during the creation of webhook." } } }, "vyos_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both pre-login and post-login banners on remote devices running VyOS. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string, with no empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner that should be configured on the remote device." } } }, "xml": { "allOf": [ { "allOf": [ { "not": { "required": [ "state", "ensure" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "path", "dest", "file" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "file" ], "type": "object" } ] } ] } ], "type": "object", "description": "A CRUD-like interface to managing bits of XML files.\nYou might also be interested in a brief tutorial from U(https://www.w3schools.com/xml/xpath_intro.asp) and U(https://developer.mozilla.org/en-US/docs/Web/XPath).", "properties": { "xpath": { "type": "string", "description": "Default: /\n\nA valid XPath expression describing the item(s) you want to manipulate.\nOperates on the document root, C(/), by default." }, "count": { "description": "Default: no\n\nSearch for a given C(xpath) and provide the count of any matches.\nThis parameter requires C(xpath) to be set.", "$ref": "#/definitions/ansible_truth" }, "set_children": { "type": "string", "description": "Set the child-element(s) of a selected element for a given C(xpath).\nRemoves any existing children.\nChild elements must be specified as in C(add_children).\nThis parameter requires C(xpath) to be set." }, "xmlstring": { "type": "string", "description": "A string containing XML on which to operate.\nThis parameter is required, unless C(path) is given." }, "dest": { "type": "string", "description": "Path to the file to operate on. File must exist ahead of time.\nThis parameter is required, unless C(xmlstring) is given." }, "attribute": { "type": "string", "description": "The attribute to select when using parameter C(value).\nThis is a string, not prepended with C(@)." }, "file": { "type": "string", "description": "Path to the file to operate on. File must exist ahead of time.\nThis parameter is required, unless C(xmlstring) is given." }, "pretty_print": { "description": "Default: no\n\nPretty print XML output.", "$ref": "#/definitions/ansible_truth" }, "add_children": { "type": "string", "description": "Add additional child-element(s) to a selected element for a given C(xpath).\nChild elements must be given in a list and each item may be either a string (eg. C(children=ansible) to add an empty C() child element), or a hash where the key is an element name and the value is the element value.\nThis parameter requires C(xpath) to be set." }, "value": { "type": "string", "description": "Desired state of the selected attribute.\nEither a string, or to unset a value, the Python C(None) keyword (YAML Equivalent, C(null)).\nElements default to no value (but present).\nAttributes default to an empty string." }, "content": { "type": "string", "description": "Search for a given C(xpath) and get content.\nThis parameter requires C(xpath) to be set." }, "state": { "type": "string", "description": "Default: present\n\nSet or remove an xpath selection (node(s), attribute(s))." }, "ensure": { "type": "string", "description": "Default: present\n\nSet or remove an xpath selection (node(s), attribute(s))." }, "namespaces": { "type": "string", "description": "The namespace C(prefix:uri) mapping for the XPath expression.\nNeeds to be a C(dict), not a C(list) of items." }, "input_type": { "type": "string", "description": "Default: yaml\n\nType of input for C(add_children) and C(set_children)." }, "print_match": { "description": "Default: no\n\nSearch for a given C(xpath) and print out any matches.\nThis parameter requires C(xpath) to be set.", "$ref": "#/definitions/ansible_truth" }, "path": { "type": "string", "description": "Path to the file to operate on. File must exist ahead of time.\nThis parameter is required, unless C(xmlstring) is given." }, "backup": { "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.", "$ref": "#/definitions/ansible_truth" } } }, "tower_team": { "required": [ "organization", "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower teams. See U(https://www.ansible.com/tower) for an overview.", "properties": { "organization": { "type": "string", "description": "Organization the team should be made a member of." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "name": { "type": "string", "description": "Name to use for the team." } } }, "win_iis_webapppool": { "required": [ "name" ], "type": "object", "description": "Creates, removes and configures an IIS Web Application Pool.", "properties": { "attributes": { "type": "string", "description": "As of Ansible 2.4, this field can take in dict entries to set the application pool attributes.\nThese attributes are based on the naming standard at U(https://www.iis.net/configreference/system.applicationhost/applicationpools/add#005), see the examples section for more details on how to set this.\nYou can also set the attributes of child elements like cpu and processModel, see the examples to see how it is done.\nWhile you can use the numeric values for enums it is recommended to use the enum name itself, e.g. use SpecificUser instead of 3 for processModel.identityType.\nmanagedPipelineMode may be either \"Integrated\" or \"Classic\".\nstartMode may be either \"OnDemand\" or \"AlwaysRunning\".\nUse C(state) module parameter to modify the state of the app pool.\nWhen trying to set 'processModel.password' and you receive a 'Value does fall within the expected range' error, you have a corrupted keystore. Please follow U(http://structuredsight.com/2014/10/26/im-out-of-range-youre-out-of-range/) to help fix your host.\nDEPRECATED As of Ansible 2.4 this field should be set using a dict form, in older versions of Ansible this field used to be a string.\nThis string has attributes that are separated by a pipe '|' and attribute name/values by colon ':' Ex. \"startMode:OnDemand|managedPipelineMode:Classic\"." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the application pool.\nIf C(present) will ensure the app pool is configured and exists.\nIf C(absent) will ensure the app pool is removed.\nIf C(stopped) will ensure the app pool exists and is stopped.\nIf C(started) will ensure the app pool exists and is started.\nIf C(restarted) will ensure the app pool exists and will restart, this is never idempotent." }, "name": { "type": "string", "description": "Name of the application pool." } } }, "nxos_vxlan_vtep_vni": { "required": [ "vni", "interface" ], "type": "object", "description": "Creates a Virtual Network Identifier member (VNI) for an NVE overlay interface.", "properties": { "assoc_vrf": { "type": "string", "description": "This attribute is used to identify and separate processing VNIs that are associated with a VRF and used for routing. The VRF and VNI specified with this command must match the configuration of the VNI under the VRF." }, "vni": { "type": "string", "description": "ID of the Virtual Network Identifier." }, "multicast_group": { "type": "string", "description": "The multicast group (range) of the VNI. Valid values are string and keyword 'default'." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "peer_list": { "type": "string", "description": "Set the ingress-replication static peer list. Valid values are an array, a space-separated string of ip addresses, or the keyword 'default'." }, "interface": { "type": "string", "description": "Interface name for the VXLAN Network Virtualization Endpoint." }, "ingress_replication": { "type": "string", "description": "Specifies mechanism for host reachability advertisement." }, "suppress_arp": { "type": "string", "description": "Suppress arp under layer 2 VNI." } } }, "nxos_snmp_location": { "required": [ "location" ], "type": "object", "description": "Manages SNMP location configuration.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "location": { "type": "string", "description": "Location information." } } }, "rax_scaling_group": { "required": [ "image", "min_entities", "flavor", "max_entities", "name", "server_name" ], "type": "object", "description": "Manipulate Rackspace Cloud Autoscale Groups", "properties": { "files": { "type": "string", "description": "Files to insert into the instance. Hash of C(remotepath: localpath)" }, "max_entities": { "type": "string", "description": "The maximum number of entities that are allowed in the scaling group. Must be an integer between 0 and 1000." }, "name": { "type": "string", "description": "Name to give the scaling group" }, "server_name": { "type": "string", "description": "The base name for servers created by Autoscale" }, "loadbalancers": { "type": "array", "description": "List of load balancer C(id) and C(port) hashes" }, "key_name": { "type": "string", "description": "key pair to use on the instance" }, "image": { "type": "string", "description": "image to use for the instance. Can be an C(id), C(human_id) or C(name)" }, "disk_config": { "type": "string", "description": "Default: auto\n\nDisk partitioning strategy" }, "user_data": { "type": "string", "description": "Data to be uploaded to the servers config drive. This option implies I(config_drive). Can be a file path or a string" }, "min_entities": { "type": "string", "description": "The minimum number of entities that are allowed in the scaling group. Must be an integer between 0 and 1000." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "cooldown": { "type": "string", "description": "The period of time, in seconds, that must pass before any scaling can occur after the previous scaling. Must be an integer between 0 and 86400 (24 hrs)." }, "meta": { "type": "string", "description": "A hash of metadata to associate with the instance" }, "flavor": { "type": "string", "description": "flavor to use for the instance" }, "config_drive": { "type": "string", "description": "Attach read-only configuration drive to server as label config-2" }, "networks": { "type": "string", "description": "Default: ['public', 'private']\n\nThe network to attach to the instances. If specified, you must include ALL networks including the public and private interfaces. Can be C(id) or C(label)." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the scaling group to finish provisioning the minimum amount of servers" } } }, "ec2_eni_facts": { "type": "object", "description": "Gather facts about ec2 ENI interfaces in AWS", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeNetworkInterfaces.html) for possible filters." } } }, "ce_ntp": { "type": "object", "description": "Manages core NTP configuration on HUAWEI CloudEngine switches.", "properties": { "is_preferred": { "type": "string", "description": "Makes given NTP server or peer the preferred NTP server or peer for the device." }, "vpn_name": { "type": "string", "description": "Default: _public_\n\nMakes the device communicate with the given NTP server or peer over a specific vpn." }, "server": { "type": "string", "description": "Network address of NTP server." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "peer": { "type": "string", "description": "Network address of NTP peer." }, "key_id": { "type": "string", "description": "Authentication key identifier to use with given NTP server or peer." }, "source_int": { "type": "string", "description": "Local source interface from which NTP messages are sent. Must be fully qualified interface name, i.e. C(40GE1/0/22), C(vlanif10). Interface types, such as C(10GE), C(40GE), C(100GE), C(Eth-Trunk), C(LoopBack), C(MEth), C(NULL), C(Tunnel), C(Vlanif)." } } }, "azure_rm_virtualmachine_extension": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete Azure Virtual Machine Extension", "properties": { "publisher": { "type": "string", "description": "The name of the extension handler publisher." }, "virtual_machine_extension_type": { "type": "string", "description": "The type of the extension handler." }, "name": { "type": "string", "description": "Name of the vm extension" }, "resource_group": { "type": "string", "description": "Name of a resource group where the vm extension exists or will be created." }, "settings": { "type": "string", "description": "Json formatted public settings for the extension." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the vm extension. Use 'present' to create or update a vm extension and 'absent' to delete a vm extension." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "protected_settings": { "type": "string", "description": "Json formatted protected settings for the extension." }, "type_handler_version": { "type": "string", "description": "The type version of the extension handler." }, "auto_upgrade_minor_version": { "type": "string", "description": "Whether the extension handler should be automatically upgraded across minor versions." }, "virtual_machine_name": { "type": "string", "description": "The name of the virtual machine where the extension should be create or updated." } } }, "nxos_bgp_neighbor": { "required": [ "asn", "neighbor" ], "type": "object", "description": "Manages BGP neighbors configurations on NX-OS switches.", "properties": { "pwd_type": { "type": "string", "description": "Specify the encryption type the password will use. Valid values are '3des' or 'cisco_type_7' encryption." }, "dynamic_capability": { "type": "string", "description": "Configure whether or not to enable dynamic capability." }, "shutdown": { "type": "string", "description": "Configure to administratively shutdown this neighbor." }, "low_memory_exempt": { "type": "string", "description": "Specify whether or not to shut down this neighbor under memory pressure." }, "remove_private_as": { "type": "string", "description": "Specify the config to remove private AS number from outbound updates. Valid values are 'enable' to enable this config, 'disable' to disable this config, 'all' to remove all private AS number, or 'replace-as', to replace the private AS number." }, "suppress_4_byte_as": { "type": "string", "description": "Configure to suppress 4-byte AS Capability." }, "connected_check": { "type": "string", "description": "Configure whether or not to check for directly connected peer." }, "remote_as": { "type": "string", "description": "Specify Autonomous System Number of the neighbor. Valid values are String or Integer in ASPLAIN or ASDOT notation, or 'default', which means not to configure it." }, "ebgp_multihop": { "type": "string", "description": "Specify multihop TTL for a remote peer. Valid values are integers between 2 and 255, or keyword 'default' to disable this property." }, "maximum_peers": { "type": "string", "description": "Specify Maximum number of peers for this neighbor prefix Valid values are between 1 and 1000, or 'default', which does not impose the limit." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "timers_holdtime": { "type": "string", "description": "Specify holdtime timer value. Valid values are integers between 0 and 3600 in terms of seconds, or 'default', which is 180." }, "update_source": { "type": "string", "description": "Specify source interface of BGP session and updates." }, "description": { "type": "string", "description": "Description of the neighbor." }, "local_as": { "type": "string", "description": "Specify the local-as number for the eBGP neighbor. Valid values are String or Integer in ASPLAIN or ASDOT notation, or 'default', which means not to configure it." }, "timers_keepalive": { "type": "string", "description": "Specify keepalive timer value. Valid values are integers between 0 and 3600 in terms of seconds, or 'default', which is 60." }, "pwd": { "type": "string", "description": "Specify the password for neighbor. Valid value is string." }, "vrf": { "type": "string", "description": "Default: default\n\nName of the VRF. The name 'default' is a valid VRF representing the global bgp." }, "log_neighbor_changes": { "type": "string", "description": "Specify whether or not to enable log messages for neighbor up/down event." }, "asn": { "type": "string", "description": "BGP autonomous system number. Valid values are string, Integer in ASPLAIN or ASDOT notation." }, "transport_passive_only": { "type": "string", "description": "Specify whether or not to only allow passive connection setup. Valid values are 'true', 'false', and 'default', which defaults to 'false'. This property can only be configured when the neighbor is in 'ip' address format without prefix length. This property and the transport_passive_mode property are mutually exclusive." }, "capability_negotiation": { "type": "string", "description": "Configure whether or not to negotiate capability with this neighbor." }, "neighbor": { "type": "string", "description": "Neighbor Identifier. Valid values are string. Neighbors may use IPv4 or IPv6 notation, with or without prefix length." } } }, "gem": { "allOf": [ { "allOf": [ { "not": { "required": [ "repository", "source" ], "type": "object" } } ] } ], "type": "object", "description": "Manage installation and uninstallation of Ruby gems.", "properties": { "include_dependencies": { "type": "string", "description": "Default: yes\n\nWhether to include dependencies or not." }, "executable": { "type": "string", "description": "Override the path to the gem executable" }, "name": { "type": "string", "description": "The name of the gem to be managed." }, "repository": { "type": "string", "description": "The repository from which the gem will be installed" }, "build_flags": { "type": "string", "description": "Allow adding build flags for gem compilation" }, "include_doc": { "type": "string", "description": "Default: no\n\nInstall with or without docs." }, "user_install": { "type": "string", "description": "Default: yes\n\nInstall gem in user's local gems cache or for all users" }, "pre_release": { "type": "string", "description": "Default: no\n\nAllow installation of pre-release versions of the gem." }, "env_shebang": { "type": "string", "description": "Default: no\n\nRewrite the shebang line on installed scripts to use /usr/bin/env." }, "source": { "type": "string", "description": "The repository from which the gem will be installed" }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the gem. C(latest) ensures that the latest version is installed." }, "version": { "type": "string", "description": "Version of the gem to be installed/removed." }, "gem_source": { "type": "string", "description": "The path to a local gem used as installation source." } } }, "gce_eip": { "required": [ "region", "name" ], "type": "object", "description": "Create (reserve) or Destroy (release) Regional or Global IP Addresses. See U(https://cloud.google.com/compute/docs/configure-instance-ip-addresses#reserve_new_static) for more on reserving static addresses.", "properties": { "region": { "type": "string", "description": "Region to create the address in. Set to 'global' to create a global address." }, "name": { "type": "string", "description": "Name of Address." }, "state": { "type": "string", "description": "Default: present\n\nThe state the address should be in. C(present) or C(absent) are the only valid options." } } }, "quantum_router": { "required": [ "login_tenant_name", "login_password", "login_username", "name" ], "type": "object", "description": "Create or Delete routers from OpenStack", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "admin_state_up": { "type": "string", "description": "Default: True\n\ndesired admin state of the created router ." }, "tenant_name": { "type": "string", "description": "Default: None\n\nName of the tenant for which the router has to be created, if none router would be created for the login tenant." }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "name": { "type": "string", "description": "Default: None\n\nName to be give to the router" } } }, "ec2_vpc_endpoint": { "allOf": [ { "allOf": [ { "not": { "required": [ "policy_file", "policy_path" ], "type": "object" } } ] } ], "type": "object", "description": "Creates AWS VPC endpoints.\nDeletes AWS VPC endpoints.\nThis module support check mode.", "properties": { "policy_file": { "type": "string", "description": "The path to the properly json formatted policy file, see U(https://github.com/ansible/ansible/issues/7005#issuecomment-42894813) on how to use it properly. Cannot be used with I(policy).\nOption when creating an endpoint. If not provided AWS will utilise a default policy which provides full access to the service." }, "policy_path": { "type": "string", "description": "The path to the properly json formatted policy file, see U(https://github.com/ansible/ansible/issues/7005#issuecomment-42894813) on how to use it properly. Cannot be used with I(policy).\nOption when creating an endpoint. If not provided AWS will utilise a default policy which provides full access to the service." }, "service": { "type": "string", "description": "An AWS supported vpc endpoint service. Use the ec2_vpc_endpoint_facts module to describe the supported endpoint services.\nRequired when creating an endpoint." }, "vpc_endpoint_id": { "type": "string", "description": "One or more vpc endpoint ids to remove from the AWS account" }, "state": { "type": "string", "description": "Default: present\n\npresent to ensure resource is created.\nabsent to remove resource" }, "wait_timeout": { "type": "string", "description": "Default: 320\n\nUsed in conjunction with wait. Number of seconds to wait for status. Unfortunately this is ignored for delete actions due to a difference in behaviour from AWS." }, "policy": { "type": "string", "description": "A properly formatted json policy as string, see U(https://github.com/ansible/ansible/issues/7005#issuecomment-42894813). Cannot be used with I(policy_file).\nOption when creating an endpoint. If not provided AWS will utilise a default policy which provides full access to the service." }, "vpc_id": { "type": "string", "description": "Required when creating a VPC endpoint." }, "client_token": { "type": "string", "description": "Optional client token to ensure idempotency" }, "route_table_ids": { "type": "array", "description": "List of one or more route table ids to attach to the endpoint. A route is added to the route table with the destination of the endpoint if provided." }, "wait": { "type": "string", "description": "When specified, will wait for either available status for state present. Unfortunately this is ignored for delete actions due to a difference in behaviour from AWS." } } }, "ec2_asg_lifecycle_hook": { "required": [ "lifecycle_hook_name", "autoscaling_group_name", "transition" ], "type": "object", "description": "When no given Hook found, will create one.\nIn case Hook found, but provided parameters are differes, will update existing Hook.\nIn case state=absent and Hook exists, will delete it.", "properties": { "transition": { "type": "string", "description": "The instance state to which you want to attach the lifecycle hook." }, "role_arn": { "type": "string", "description": "The ARN of the IAM role that allows the Auto Scaling group to publish to the specified notification target." }, "autoscaling_group_name": { "type": "string", "description": "The name of the Auto Scaling group to which you want to assign the lifecycle hook." }, "lifecycle_hook_name": { "type": "string", "description": "The name of the lifecycle hook." }, "heartbeat_timeout": { "type": "string", "description": "Default: 3600 (1 hour)\n\nThe amount of time, in seconds, that can elapse before the lifecycle hook times out. When the lifecycle hook times out, Auto Scaling performs the default action. You can prevent the lifecycle hook from timing out by calling RecordLifecycleActionHeartbeat." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete Lifecycle Hook. Present updates existing one or creates if not found." }, "notification_target_arn": { "type": "string", "description": "The ARN of the notification target that Auto Scaling will use to notify you when an instance is in the transition state for the lifecycle hook. This target can be either an SQS queue or an SNS topic. If you specify an empty string, this overrides the current ARN." }, "default_result": { "type": "string", "description": "Default: ABANDON\n\nDefines the action the Auto Scaling group should take when the lifecycle hook timeout elapses or if an unexpected failure occurs. This parameter can be either CONTINUE or ABANDON." }, "notification_meta_data": { "type": "string", "description": "Contains additional information that you want to include any time Auto Scaling sends a message to the notification target." } } }, "iam_group": { "required": [ "state", "name" ], "type": "object", "description": "Manage AWS IAM groups", "properties": { "name": { "type": "string", "description": "The name of the group to create." }, "purge_users": { "type": "string", "description": "Deatach users which not included in users list" }, "state": { "type": "string", "description": "Create or remove the IAM group" }, "purge_policy": { "type": "string", "description": "Deatach policy which not included in managed_policy list" }, "managed_policy": { "type": "string", "description": "A list of managed policy ARNs or friendly names to attach to the role. To embed an inline policy, use M(iam_policy)." }, "users": { "type": "string", "description": "A list of existing users to add as members of the group." } } }, "clc_loadbalancer": { "required": [ "name", "alias", "location" ], "type": "object", "description": "An Ansible module to Create, Delete shared loadbalancers in CenturyLink Cloud.", "properties": { "status": { "type": "string", "description": "Default: enabled\n\nThe status of the loadbalancer" }, "name": { "type": "string", "description": "The name of the loadbalancer" }, "port": { "type": "string", "description": "Default: None\n\nPort to configure on the public-facing side of the load balancer pool" }, "alias": { "type": "string", "description": "The alias of your CLC Account" }, "state": { "type": "string", "description": "Default: present\n\nWhether to create or delete the load balancer pool" }, "location": { "type": "string", "description": "The location of the datacenter where the load balancer resides in" }, "nodes": { "type": "string", "description": "A list of nodes that needs to be added to the load balancer pool" }, "method": { "type": "string", "description": "Default: None\n\n-The balancing method for the load balancer pool" }, "persistence": { "type": "string", "description": "Default: None\n\nThe persistence method for the load balancer" }, "description": { "type": "string", "description": "Default: None\n\nA description for the loadbalancer" } } }, "gce_img": { "required": [ "name" ], "type": "object", "description": "This module can create and delete GCE private images from gzipped compressed tarball containing raw disk data or from existing detached disks in any zone. U(https://cloud.google.com/compute/docs/images)", "properties": { "name": { "type": "string", "description": "the name of the image to create or delete" }, "family": { "type": "string", "description": "an optional family name" }, "service_account_email": { "type": "string", "description": "service account email" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email" }, "source": { "type": "string", "description": "the source disk or the Google Cloud Storage URI to create the image from" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the image" }, "zone": { "type": "string", "description": "Default: us-central1-a\n\nthe zone of the disk specified by source" }, "timeout": { "type": "string", "description": "Default: 180\n\ntimeout for the operation" }, "project_id": { "type": "string", "description": "your GCE project ID" }, "description": { "type": "string", "description": "an optional description" } } }, "rax_clb_ssl": { "required": [ "loadbalancer" ], "type": "object", "description": "Set up, reconfigure, or remove SSL termination for an existing load balancer.", "properties": { "private_key": { "type": "string", "description": "The private SSL key as a string in PEM format." }, "certificate": { "type": "string", "description": "The public SSL certificates as a string in PEM format." }, "enabled": { "type": "string", "description": "Default: True\n\nIf set to \"false\", temporarily disable SSL termination without discarding\nexisting credentials." }, "https_redirect": { "type": "string", "description": "If \"true\", the load balancer will redirect HTTP traffic to HTTPS.\nRequires \"secure_traffic_only\" to be true. Incurs an implicit wait if SSL\ntermination is also applied or removed." }, "state": { "type": "string", "description": "Default: present\n\nIf set to \"present\", SSL termination will be added to this load balancer.\nIf \"absent\", SSL termination will be removed instead." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long before \"wait\" gives up, in seconds." }, "intermediate_certificate": { "type": "string", "description": "One or more intermediate certificate authorities as a string in PEM\nformat, concatenated into a single string." }, "secure_traffic_only": { "type": "string", "description": "If \"true\", the load balancer will *only* accept secure traffic." }, "secure_port": { "type": "string", "description": "Default: 443\n\nThe port to listen for secure traffic." }, "loadbalancer": { "type": "string", "description": "Name or ID of the load balancer on which to manage SSL termination." }, "wait": { "type": "string", "description": "Wait for the balancer to be in state \"running\" before turning." } } }, "manageiq_alert_profiles": { "type": "object", "description": "The manageiq_alert_profiles module supports adding, updating and deleting alert profiles in ManageIQ.", "properties": { "notes": { "type": "string", "description": "Optional notes for this profile" }, "alerts": { "type": "array", "description": "List of alert descriptions to assign to this profile.\nRequired if state is \"present\"" }, "state": { "type": "string", "description": "Default: present\n\nabsent - alert profile should not exist,\npresent - alert profile should exist," }, "resource_type": { "type": "string", "description": "The resource type for the alert profile in ManageIQ. Required when state is \"present\"." }, "name": { "type": "string", "description": "The unique alert profile name in ManageIQ.\nRequired when state is \"absent\" or \"present\"." } } }, "pingdom": { "required": [ "checkid", "passwd", "state", "uid", "key" ], "type": "object", "description": "This module will let you pause/unpause Pingdom alerts", "properties": { "checkid": { "type": "string", "description": "Pingdom ID of the check." }, "passwd": { "type": "string", "description": "Pingdom user password." }, "state": { "type": "string", "description": "Define whether or not the check should be running or paused." }, "uid": { "type": "string", "description": "Pingdom user ID." }, "key": { "type": "string", "description": "Pingdom API key." } } }, "vyos_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on VyOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of L3 interfaces definitions" }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration." }, "ipv6": { "type": "string", "description": "IPv6 of the L3 interface." }, "ipv4": { "type": "string", "description": "IPv4 of the L3 interface." }, "name": { "type": "string", "description": "Name of the L3 interface." } } }, "udm_share": { "allOf": [ { "allOf": [ { "not": { "required": [ "samba_name", "sambaName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_hide_files", "sambaHideFiles" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_blocking_locks", "sambaBlockingLocks" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_directory_mode", "sambaDirectoryMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_dos_filemode", "sambaDosFilemode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_postexec", "sambaPostexec" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_fake_oplocks", "sambaFakeOplocks" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_strict_locking", "sambaStrictLocking" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_public", "sambaPublic" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_directory_security_mode", "sambaForceDirectorySecurityMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_writeable", "sambaWriteable" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_nt_acl_support", "sambaNtAclSupport" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_write_list", "sambaWriteList" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_preexec", "sambaPreexec" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_browseable", "sambaBrowseable" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_inherit_acls", "sambaInheritAcls" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_msdfs_root", "sambaMSDFSRoot" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_valid_users", "sambaValidUsers" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_create_mode", "sambaForceCreateMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_directory_security_mode", "sambaDirectorySecurityMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_group", "sambaForceGroup" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_vfs_objects", "sambaVFSObjects" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_directory_mode", "sambaForceDirectoryMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_locking", "sambaLocking" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_security_mode", "sambaSecurityMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_inherit_owner", "sambaInheritOwner" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_csc_policy", "sambaCscPolicy" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "nfs_custom_settings", "nfsCustomSettings" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_user", "sambaForceUser" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_invalid_users", "sambaInvalidUsers" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_create_mode", "sambaCreateMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_force_security_mode", "sambaForceSecurityMode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_level_2_oplocks", "sambaLevel2Oplocks" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_custom_settings", "sambaCustomSettings" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_hide_unreadable", "sambaHideUnreadable" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_block_size", "sambaBlockSize" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_oplocks", "sambaOplocks" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_hosts_allow", "sambaHostsAllow" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_inherit_permissions", "sambaInheritPermissions" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_hosts_deny", "sambaHostsDeny" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows to manage samba shares on a univention corporate server (UCS). It uses the python API of the UCS to create a new object or edit it.", "properties": { "samba_hide_files": { "type": "string", "description": "Default: None\n\nHide files." }, "samba_dos_filemode": { "type": "string", "description": "Default: 0\n\nUsers with write access may modify permissions." }, "sambaCreateMode": { "type": "string", "description": "Default: 0744\n\nFile mode." }, "samba_force_directory_security_mode": { "type": "string", "description": "Default: 0\n\nForce directory security mode." }, "sambaForceCreateMode": { "type": "string", "description": "Default: 0\n\nForce file mode." }, "samba_write_list": { "type": "string", "description": "Default: None\n\nRestrict write access to these users/groups." }, "samba_inherit_acls": { "type": "string", "description": "Default: 1\n\nInherit ACLs." }, "samba_msdfs_root": { "type": "string", "description": "Default: 0\n\nMSDFS root." }, "sambaBlockSize": { "type": "string", "description": "Default: None\n\nBlocking size." }, "samba_directory_security_mode": { "type": "string", "description": "Default: 0777\n\nDirectory security mode." }, "samba_force_directory_mode": { "type": "string", "description": "Default: 0\n\nForce directory mode." }, "sambaMSDFSRoot": { "type": "string", "description": "Default: 0\n\nMSDFS root." }, "nfsCustomSettings": { "type": "string", "description": "Option name in exports file." }, "sambaBlockingLocks": { "type": "string", "description": "Default: 1\n\nBlocking locks." }, "samba_force_security_mode": { "type": "string", "description": "Default: 0\n\nForce security mode." }, "name": { "type": "string", "description": "Name" }, "sambaHostsAllow": { "type": "string", "description": "Allowed host/network." }, "samba_hide_unreadable": { "type": "string", "description": "Default: 0\n\nHide unreadable files/directories." }, "samba_postexec": { "type": "string", "description": "Default: None\n\nPostexec script." }, "samba_oplocks": { "type": "string", "description": "Default: 1\n\nOplocks." }, "samba_hosts_deny": { "type": "string", "description": "Denied host/network." }, "sambaCscPolicy": { "type": "string", "description": "Default: manual\n\nClient-side caching policy." }, "sambaFakeOplocks": { "type": "string", "description": "Default: 0\n\nFake oplocks." }, "samba_name": { "type": "string", "description": "Default: None\n\nWindows name. Required if C(state=present)." }, "sambaNtAclSupport": { "type": "string", "description": "Default: 1\n\nNT ACL support." }, "sync": { "type": "string", "description": "Default: sync\n\nNFS synchronisation." }, "group": { "type": "string", "description": "Default: 0\n\nDirectory owner group of the share's root directory." }, "sambaInheritOwner": { "type": "string", "description": "Default: 0\n\nCreate files/directories with the owner of the parent directory." }, "sambaPostexec": { "type": "string", "description": "Default: None\n\nPostexec script." }, "sambaHideFiles": { "type": "string", "description": "Default: None\n\nHide files." }, "samba_fake_oplocks": { "type": "string", "description": "Default: 0\n\nFake oplocks." }, "samba_preexec": { "type": "string", "description": "Default: None\n\nPreexec script." }, "samba_browseable": { "type": "string", "description": "Default: 1\n\nShow in Windows network environment." }, "state": { "type": "string", "description": "Default: present\n\nWhether the share is present or not." }, "sambaPreexec": { "type": "string", "description": "Default: None\n\nPreexec script." }, "sambaForceGroup": { "type": "string", "description": "Default: None\n\nForce group." }, "sambaInheritPermissions": { "type": "string", "description": "Default: 0\n\nCreate files/directories with permissions of the parent directory." }, "samba_locking": { "type": "string", "description": "Default: 1\n\nLocking." }, "samba_security_mode": { "type": "string", "description": "Default: 0777\n\nSecurity mode." }, "samba_inherit_owner": { "type": "string", "description": "Default: 0\n\nCreate files/directories with the owner of the parent directory." }, "nfs_hosts": { "type": "string", "description": "Only allow access for this host, IP address or network." }, "path": { "type": "string", "description": "Default: None\n\nDirectory on the providing server, e.g. C(/home). Required if C(state=present)." }, "nfs_custom_settings": { "type": "string", "description": "Option name in exports file." }, "sambaHostsDeny": { "type": "string", "description": "Denied host/network." }, "sambaInvalidUsers": { "type": "string", "description": "Default: None\n\nInvalid users or groups." }, "subtree_checking": { "type": "string", "description": "Default: 1\n\nSubtree checking." }, "host": { "type": "string", "description": "Default: None\n\nHost FQDN (server which provides the share), e.g. C({{ ansible_fqdn }}). Required if C(state=present)." }, "directorymode": { "type": "string", "description": "Default: 00755\n\nPermissions for the share's root directory." }, "ou": { "type": "string", "description": "Organisational unit, inside the LDAP Base DN." }, "sambaForceDirectorySecurityMode": { "type": "string", "description": "Default: 0\n\nForce directory security mode." }, "sambaLevel2Oplocks": { "type": "string", "description": "Default: 1\n\nLevel 2 oplocks." }, "sambaDirectorySecurityMode": { "type": "string", "description": "Default: 0777\n\nDirectory security mode." }, "samba_custom_settings": { "type": "string", "description": "Option name in smb.conf and its value." }, "owner": { "type": "string", "description": "Directory owner of the share's root directory." }, "sambaName": { "type": "string", "description": "Default: None\n\nWindows name. Required if C(state=present)." }, "sambaValidUsers": { "type": "string", "description": "Default: None\n\nValid users or groups." }, "samba_strict_locking": { "type": "string", "description": "Default: Auto\n\nStrict locking." }, "samba_public": { "type": "string", "description": "Default: 0\n\nAllow anonymous read-only access with a guest user." }, "samba_writeable": { "type": "string", "description": "Default: 1\n\nSamba write access." }, "samba_valid_users": { "type": "string", "description": "Default: None\n\nValid users or groups." }, "root_squash": { "type": "string", "description": "Default: 1\n\nModify user ID for root user (root squashing)." }, "sambaHideUnreadable": { "type": "string", "description": "Default: 0\n\nHide unreadable files/directories." }, "writeable": { "type": "string", "description": "Default: 1\n\nNFS write access." }, "sambaSecurityMode": { "type": "string", "description": "Default: 0777\n\nSecurity mode." }, "sambaForceSecurityMode": { "type": "string", "description": "Default: 0\n\nForce security mode." }, "sambaStrictLocking": { "type": "string", "description": "Default: Auto\n\nStrict locking." }, "sambaDirectoryMode": { "type": "string", "description": "Default: 0755\n\nDirectory mode." }, "samba_force_user": { "type": "string", "description": "Default: None\n\nForce user." }, "samba_invalid_users": { "type": "string", "description": "Default: None\n\nInvalid users or groups." }, "samba_create_mode": { "type": "string", "description": "Default: 0744\n\nFile mode." }, "samba_level_2_oplocks": { "type": "string", "description": "Default: 1\n\nLevel 2 oplocks." }, "samba_inherit_permissions": { "type": "string", "description": "Default: 0\n\nCreate files/directories with permissions of the parent directory." }, "samba_directory_mode": { "type": "string", "description": "Default: 0755\n\nDirectory mode." }, "sambaForceDirectoryMode": { "type": "string", "description": "Default: 0\n\nForce directory mode." }, "sambaCustomSettings": { "type": "string", "description": "Option name in smb.conf and its value." }, "sambaBrowseable": { "type": "string", "description": "Default: 1\n\nShow in Windows network environment." }, "samba_nt_acl_support": { "type": "string", "description": "Default: 1\n\nNT ACL support." }, "sambaDosFilemode": { "type": "string", "description": "Default: 0\n\nUsers with write access may modify permissions." }, "samba_block_size": { "type": "string", "description": "Default: None\n\nBlocking size." }, "sambaInheritAcls": { "type": "string", "description": "Default: 1\n\nInherit ACLs." }, "samba_force_create_mode": { "type": "string", "description": "Default: 0\n\nForce file mode." }, "samba_force_group": { "type": "string", "description": "Default: None\n\nForce group." }, "samba_vfs_objects": { "type": "string", "description": "Default: None\n\nVFS objects." }, "sambaWriteList": { "type": "string", "description": "Default: None\n\nRestrict write access to these users/groups." }, "sambaVFSObjects": { "type": "string", "description": "Default: None\n\nVFS objects." }, "samba_csc_policy": { "type": "string", "description": "Default: manual\n\nClient-side caching policy." }, "sambaForceUser": { "type": "string", "description": "Default: None\n\nForce user." }, "sambaOplocks": { "type": "string", "description": "Default: 1\n\nOplocks." }, "sambaWriteable": { "type": "string", "description": "Default: 1\n\nSamba write access." }, "sambaLocking": { "type": "string", "description": "Default: 1\n\nLocking." }, "samba_blocking_locks": { "type": "string", "description": "Default: 1\n\nBlocking locks." }, "sambaPublic": { "type": "string", "description": "Default: 0\n\nAllow anonymous read-only access with a guest user." }, "samba_hosts_allow": { "type": "string", "description": "Allowed host/network." } } }, "panos_nat_policy": { "required": [ "rule_name", "password", "ip_address", "to_zone", "from_zone" ], "type": "object", "description": "Create a policy nat rule. Keep in mind that we can either end up configuring source NAT, destination NAT, or both. Instead of splitting it into two we will make a fair attempt to determine which one the user wants.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "dnat_address": { "type": "string", "description": "Default: None\n\ndnat translated address" }, "snat_bidirectional": { "type": "string", "description": "Default: false\n\nbidirectional flag" }, "to_zone": { "type": "string", "description": "destination zone" }, "snat_type": { "type": "string", "description": "Default: None\n\ntype of source translation" }, "service": { "type": "string", "description": "Default: any\n\nservice" }, "source": { "type": "array", "description": "Default: ['any']\n\nlist of source addresses" }, "from_zone": { "type": "array", "description": "list of source zones" }, "destination": { "type": "array", "description": "Default: ['any']\n\nlist of destination addresses" }, "dnat_port": { "type": "string", "description": "Default: None\n\ndnat translated port" }, "snat_interface_address": { "type": "string", "description": "Default: None\n\nsnat interface address" }, "rule_name": { "type": "string", "description": "name of the SNAT rule" }, "override": { "type": "string", "description": "Default: false\n\nattempt to override rule if one with the same name already exists" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "snat_address": { "type": "string", "description": "Default: None\n\nsnat translated address" }, "snat_interface": { "type": "string", "description": "Default: None\n\nsnat interface" } } }, "win_user_right": { "required": [ "name", "users" ], "type": "object", "description": "Add, remove or set User Rights for a group or users or groups.\nYou can set user rights for both local and domain accounts.", "properties": { "action": { "type": "string", "description": "Default: set\n\nC(add) will add the users/groups to the existing right.\nC(remove) will remove the users/groups from the existing right.\nC(set) will replace the users/groups of the existing right." }, "name": { "type": "string", "description": "The name of the User Right as shown by the C(Constant Name) value from U(https://technet.microsoft.com/en-us/library/dd349804.aspx).\nThe module will return an error if the right is invalid." }, "users": { "type": "string", "description": "A list of users or groups to add/remove on the User Right.\nThese can be in the form DOMAIN\\user-group, user-group@DOMAIN.COM for domain users/groups.\nFor local users/groups it can be in the form user-group, .\\user-group, SERVERNAME\\user-group where SERVERNAME is the name of the remote server.\nYou can also add special local accounts like SYSTEM and others." } } }, "bigip_selfip": { "required": [ "name", "vlan", "netmask" ], "type": "object", "description": "Manage Self-IPs on a BIG-IP system", "properties": { "name": { "type": "string", "description": "Default: Value of C(address)\n\nThe self IP to create." }, "vlan": { "type": "string", "description": "The VLAN that the new self IPs will be on." }, "netmask": { "type": "string", "description": "The netmasks for the self IP." }, "allow_service": { "type": "string", "description": "Configure port lockdown for the Self IP. By default, the Self IP has a \"default deny\" policy. This can be changed to allow TCP and UDP ports as well as specific protocols. This list should contain C(protocol):C(port) values." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the variable on the system. When C(present), guarantees that the Self-IP exists with the provided attributes. When C(absent), removes the Self-IP from the system." }, "address": { "type": "string", "description": "The IP addresses for the new self IP. This value is ignored upon update as addresses themselves cannot be changed after they are created." }, "traffic_group": { "type": "string", "description": "The traffic group for the self IP addresses in an active-active, redundant load balancer configuration." } } }, "nxos_overlay_global": { "required": [ "anycast_gateway_mac" ], "type": "object", "description": "Configures anycast gateway MAC of the switch.", "properties": { "anycast_gateway_mac": { "type": "string", "description": "Anycast gateway mac of the switch." } } }, "azure_rm_loadbalancer_facts": { "type": "object", "description": "Get facts for a specific load balancer or all load balancers.", "properties": { "name": { "type": "string", "description": "Limit results to a specific resource group." }, "resource_group": { "type": "string", "description": "The resource group to search for the desired load balancer" }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "win_hotfix": { "type": "object", "description": "Install, uninstall a Windows hotfix.", "properties": { "hotfix_identifier": { "type": "string", "description": "The name of the hotfix as shown in DISM, see examples for details.\nThis or C(hotfix_kb) MUST be set when C(state=absent).\nIf C(state=present) then the hotfix at C(source) will be validated against this value, if it does not match an error will occur.\nYou can get the identifier by running 'Get-WindowsPackage -Online -PackagePath path-to-cab-in-msu' after expanding the msu file." }, "state": { "type": "string", "description": "Default: present\n\nWhether to install or uninstall the hotfix.\nWhen C(present), C(source) MUST be set.\nWhen C(absent), C(hotfix_identifier) or C(hotfix_kb) MUST be set." }, "hotfix_kb": { "type": "string", "description": "The name of the KB the hotfix relates to, see examples for details.\nThis of C(hotfix_identifier) MUST be set when C(state=absent).\nIf C(state=present) then the hotfix at C(source) will be validated against this value, if it does not match an error will occur.\nBecause DISM uses the identifier as a key and doesn't refer to a KB in all cases it is recommended to use C(hotfix_identifier) instead." }, "source": { "type": "string", "description": "The path to the downloaded hotfix .msu file.\nThis MUST be set if C(state=present) and MUST be a .msu hotfix file." } } }, "gluster_volume": { "allOf": [ { "allOf": [ { "not": { "required": [ "bricks", "brick" ], "type": "object" } } ] } ], "type": "object", "description": "Create, remove, start, stop and tune GlusterFS volumes", "properties": { "force": { "type": "string", "description": "If brick is being created in the root partition, module will fail. Set force to true to override this behaviour" }, "name": { "type": "string", "description": "The volume name" }, "replicas": { "type": "string", "description": "Replica count for volume" }, "bricks": { "type": "string", "description": "Brick paths on servers. Multiple brick paths can be separated by commas" }, "disperses": { "type": "string", "description": "Disperse count for volume" }, "quota": { "type": "string", "description": "Quota value for limit-usage (be sure to use 10.0MB instead of 10MB, see quota list)" }, "stripes": { "type": "string", "description": "Stripe count for volume" }, "cluster": { "type": "array", "description": "List of hosts to use for probing and brick setup" }, "host": { "type": "string", "description": "Override local hostname (for peer probing purposes)" }, "state": { "type": "string", "description": "Use present/absent ensure if a volume exists or not, use started/stopped to control it's availability." }, "start_on_create": { "type": "string", "description": "Default: yes\n\nControls whether the volume is started after creation or not, defaults to yes" }, "redundancies": { "type": "string", "description": "Redundancy count for volume" }, "directory": { "type": "string", "description": "Directory for limit-usage" }, "brick": { "type": "string", "description": "Brick paths on servers. Multiple brick paths can be separated by commas" }, "rebalance": { "type": "string", "description": "Default: no\n\nControls whether the cluster is rebalanced after changes" }, "options": { "type": "object", "description": "A dictionary/hash with options/settings for the volume" }, "transport": { "type": "string", "description": "Default: tcp\n\nTransport type for volume" } } }, "vcenter_folder": { "required": [ "datacenter", "folder_name" ], "type": "object", "description": "This module can be used to create, delete, move and rename folder on then given datacenter.", "properties": { "folder_type": { "type": "string", "description": "Default: vm\n\nThis is type of folder.\nIf set to C(vm), then 'VM and Template Folder' is created under datacenter.\nIf set to C(host), then 'Host and Cluster Folder' is created under datacenter.\nIf set to C(datastore), then 'Storage Folder' is created under datacenter.\nIf set to C(network), then 'Network Folder' is created under datacenter.\nThis parameter is required, if C(state) is set to C(present) and parent_folder is absent.\nThis option is ignored, if C(parent_folder) is set." }, "datacenter": { "type": "string", "description": "Name of the datacenter." }, "parent_folder": { "type": "string", "description": "Name of the parent folder under which new folder needs to be created.\nThis is case sensitive parameter.\nPlease specify unique folder name as there is no way to detect duplicate names.\nIf user wants to create a folder under '/DC0/vm/vm_folder', this value will be 'vm_folder'." }, "folder_name": { "type": "string", "description": "Name of folder to be managed.\nThis is case sensitive parameter.\nFolder name should be under 80 characters. This is a VMware restriction." }, "state": { "type": "string", "description": "Default: present\n\nState of folder.\nIf set to C(present) without parent folder parameter, then folder with C(folder_type) is created.\nIf set to C(present) with parent folder parameter, then folder in created under parent folder. C(folder_type) is ignored.\nIf set to C(absent), then folder is unregistered and destroyed." } } }, "eos_static_route": { "allOf": [ { "allOf": [ { "not": { "required": [ "address", "prefix" ], "type": "object" } }, { "oneOf": [ { "required": [ "address" ], "type": "object" }, { "required": [ "prefix" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module provides declarative management of static IP routes on Arista EOS network devices.", "properties": { "prefix": { "type": "string", "description": "Network address with prefix of the static route." }, "admin_distance": { "type": "string", "description": "Default: 1\n\nAdmin distance of the static route." }, "state": { "type": "string", "description": "Default: present\n\nState of the static route configuration." }, "next_hop": { "type": "string", "description": "Next hop IP of the static route." }, "address": { "type": "string", "description": "Network address with prefix of the static route." }, "aggregate": { "type": "array", "description": "List of static route definitions" } } }, "profitbricks": { "required": [ "image", "name" ], "type": "object", "description": "Create, destroy, update, start, stop, and reboot a ProfitBricks virtual machine. When the virtual machine is created it can optionally wait for it to be 'running' before returning. This module has a dependency on profitbricks >= 1.0.0", "properties": { "image": { "type": "string", "description": "The system image ID for creating the virtual machine, e.g. a3eae284-a2fe-11e4-b187-5f1f641608c8." }, "ram": { "type": "string", "description": "Default: 2048\n\nThe amount of memory to allocate to the virtual machine." }, "subscription_password": { "type": "string", "description": "THe ProfitBricks password. Overrides the PB_PASSWORD environment variable." }, "ssh_keys": { "type": "string", "description": "Public SSH keys allowing access to the virtual machine." }, "subscription_user": { "type": "string", "description": "The ProfitBricks username. Overrides the PB_SUBSCRIPTION_ID environment variable." }, "volume_size": { "type": "string", "description": "Default: 10\n\nThe size in GB of the boot volume." }, "state": { "type": "string", "description": "Default: present\n\ncreate or terminate instances" }, "location": { "type": "string", "description": "Default: us/las\n\nThe datacenter location. Use only if you want to create the Datacenter or else this value is ignored." }, "assign_public_ip": { "type": "string", "description": "This will assign the machine to the public LAN. If no LAN exists with public Internet access it is created." }, "auto_increment": { "type": "string", "description": "Default: True\n\nWhether or not to increment a single number in the name for created virtual machines." }, "lan": { "type": "string", "description": "Default: 1\n\nThe ID of the LAN you wish to add the servers to." }, "image_password": { "type": "string", "description": "Password set for the administrative user." }, "bus": { "type": "string", "description": "Default: VIRTIO\n\nThe bus type for the volume." }, "instance_ids": { "type": "array", "description": "list of instance ids, currently only used when state='absent' to remove instances." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "cpu_family": { "type": "string", "description": "Default: AMD_OPTERON\n\nThe CPU family type to allocate to the virtual machine." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" }, "count": { "type": "string", "description": "Default: 1\n\nThe number of virtual machines to create." }, "datacenter": { "type": "string", "description": "The datacenter to provision this virtual machine." }, "remove_boot_volume": { "type": "string", "description": "Default: yes\n\nremove the bootVolume of the virtual machine you're destroying." }, "name": { "type": "string", "description": "The name of the virtual machine." }, "cores": { "type": "string", "description": "Default: 2\n\nThe number of CPU cores to allocate to the virtual machine." } } }, "netapp_e_host": { "required": [ "ssid", "api_password", "api_username", "api_url", "host_type_index", "name" ], "type": "object", "description": "Create, update, remove hosts on NetApp E-series storage arrays", "properties": { "group": { "type": "string", "description": "the group you want the host to be a member of" }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "name": { "type": "string", "description": "If the host doesnt yet exist, the label to assign at creation time.\nIf the hosts already exists, this is what is used to identify the host to apply any desired changes" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "host_type_index": { "type": "string", "description": "The index that maps to host type you wish to create. It is recommended to use the M(netapp_e_facts) module to gather this information. Alternatively you can use the WSP portal to retrieve the information." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "ports": { "type": "string", "description": "a list of of dictionaries of host ports you wish to associate with the newly created host" }, "ssid": { "type": "string", "description": "the id of the storage array you wish to act against" } } }, "os_server_group": { "required": [ "name" ], "type": "object", "description": "Add or remove server groups from OpenStack.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource. When I(state) is 'present', then I(policies) is required." }, "name": { "type": "string", "description": "Server group name." }, "policies": { "type": "string", "description": "A list of one or more policy names to associate with the server group. The list must contain at least one policy name. The current valid policy names are anti-affinity, affinity, soft-anti-affinity and soft-affinity." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" } } }, "postgresql_user": { "required": [ "name" ], "type": "object", "description": "Add or remove PostgreSQL users (roles) from a remote host and, optionally, grant the users access to an existing database or tables.\nThe fundamental function of the module is to create, or delete, roles from a PostgreSQL cluster. Privilege assignment, or removal, is an optional step, which works on one database at a time. This allows for the module to be called several times in the same module to modify the permissions on different databases, or to grant permissions to already existing users.\nA user cannot be removed until all the privileges have been stripped from the user. In such situation, if the module tries to remove the user it will fail. To avoid this from happening the fail_on_user option signals the module to try to remove the user, but if not possible keep going; the module will report if changes happened and separately if the user was removed or not.", "properties": { "name": { "type": "string", "description": "name of the user (role) to add or remove" }, "no_password_changes": { "type": "string", "description": "Default: no\n\nif C(yes), don't inspect database for password changes. Effective when C(pg_authid) is not accessible (such as AWS RDS). Otherwise, make password changes as necessary." }, "login_user": { "type": "string", "description": "Default: postgres\n\nUser (role) used to authenticate with PostgreSQL" }, "login_host": { "type": "string", "description": "Default: localhost\n\nHost running PostgreSQL." }, "expires": { "type": "string", "description": "sets the user's password expiration." }, "db": { "type": "string", "description": "name of database where permissions will be granted" }, "role_attr_flags": { "type": "string", "description": "PostgreSQL role attributes string in the format: CREATEDB,CREATEROLE,SUPERUSER" }, "login_unix_socket": { "type": "string", "description": "Path to a Unix domain socket for local connections" }, "state": { "type": "string", "description": "Default: present\n\nThe user (role) state" }, "encrypted": { "type": "string", "description": "whether the password is stored hashed in the database. boolean. Passwords can be passed already hashed or unhashed, and postgresql ensures the stored password is hashed when encrypted is set." }, "login_password": { "type": "string", "description": "Password used to authenticate with PostgreSQL" }, "password": { "type": "string", "description": "set the user's password, before 1.4 this was required.\nWhen passing an encrypted password, the encrypted parameter must also be true, and it must be generated with the format C('str[\"md5\"] + md5[ password + username ]'), resulting in a total of 35 characters. An easy way to do this is: C(echo \"md5`echo -n \"verysecretpasswordJOE\" | md5`\"). Note that if encrypted is set, the stored password will be hashed whether or not it is pre-encrypted." }, "port": { "type": "string", "description": "Default: 5432\n\nDatabase port to connect to." }, "fail_on_user": { "type": "string", "description": "Default: yes\n\nif C(yes), fail when user can't be removed. Otherwise just log and continue" }, "priv": { "type": "string", "description": "PostgreSQL privileges string in the format: C(table:priv1,priv2)" } } }, "junos_package": { "allOf": [ { "allOf": [ { "not": { "required": [ "src", "package" ], "type": "object" } }, { "oneOf": [ { "required": [ "src" ], "type": "object" }, { "required": [ "package" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module can install new and updated packages on remote devices running Junos. The module will compare the specified package with the one running on the remote device and install the specified version if there is a mismatch", "properties": { "src": { "type": "string", "description": "The I(src) argument specifies the path to the source package to be installed on the remote device in the advent of a version mismatch. The I(src) argument can be either a localized path or a full path to the package file to install." }, "force": { "type": "string", "description": "The I(force) argument instructs the module to bypass the package version check and install the packaged identified in I(src) on the remote device." }, "package": { "type": "string", "description": "The I(src) argument specifies the path to the source package to be installed on the remote device in the advent of a version mismatch. The I(src) argument can be either a localized path or a full path to the package file to install." }, "no_copy": { "type": "string", "description": "The I(no_copy) argument is responsible for instructing the remote device on where to install the package from. When enabled, the package is transferred to the remote device prior to installing." }, "reboot": { "type": "string", "description": "Default: True\n\nIn order for a package to take effect, the remote device must be restarted. When enabled, this argument will instruct the module to reboot the device once the updated package has been installed. If disabled or the remote package does not need to be changed, the device will not be started." }, "version": { "type": "string", "description": "The I(version) argument can be used to explicitly specify the version of the package that should be installed on the remote device. If the I(version) argument is not specified, then the version is extracts from the I(src) filename." } } }, "aos_external_router": { "required": [ "session" ], "type": "object", "description": "Apstra AOS External Router module let you manage your External Router easily. You can create create and delete External Router by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "name": { "type": "string", "description": "Name of the External Router to manage. Only one of I(name), I(id) or I(content) can be set." }, "loopback": { "type": "string", "description": "IP address of the Loopback interface of the external_router." }, "id": { "type": "string", "description": "AOS Id of the External Router to manage (can't be used to create a new External Router), Only one of I(name), I(id) or I(content) can be set." }, "content": { "type": "string", "description": "Datastructure of the External Router to create. The format is defined by the I(content_format) parameter. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the External Router (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "asn": { "type": "string", "description": "ASN id of the external_router." } } }, "ec2_vpc_nat_gateway": { "type": "object", "description": "Ensure the state of AWS VPC NAT Gateways based on their id, allocation and subnet ids.", "properties": { "client_token": { "type": "string", "description": "Optional unique token to be used during create to ensure idempotency. When specifying this option, ensure you specify the eip_address parameter as well otherwise any subsequent runs will fail." }, "nat_gateway_id": { "type": "string", "description": "Default: None\n\nThe id AWS dynamically allocates to the NAT Gateway on creation. This is required when the absent option is present." }, "allocation_id": { "type": "string", "description": "Default: None\n\nThe id of the elastic IP allocation. If this is not passed and the eip_address is not passed. An EIP is generated for this NAT Gateway." }, "subnet_id": { "type": "string", "description": "Default: None\n\nThe id of the subnet to create the NAT Gateway in. This is required with the present option." }, "if_exist_do_not_create": { "type": "string", "description": "if a NAT Gateway exists already in the subnet_id, then do not create a new one." }, "eip_address": { "type": "string", "description": "The elastic IP address of the EIP you want attached to this NAT Gateway. If this is not passed and the allocation_id is not passed, an EIP is generated for this NAT Gateway." }, "state": { "type": "string", "description": "Default: present\n\nEnsure NAT Gateway is present or absent." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow many seconds to wait for an operation to complete before timing out." }, "release_eip": { "type": "string", "description": "Default: True\n\nDeallocate the EIP from the VPC.\nOption is only valid with the absent state.\nYou should use this with the wait option. Since you can not release an address while a delete operation is happening." }, "wait": { "type": "string", "description": "Wait for operation to complete before returning." } } }, "gcdns_zone": { "allOf": [ { "allOf": [ { "not": { "required": [ "zone", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "zone" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Creates or removes managed zones in Google Cloud DNS.", "properties": { "description": { "type": "string", "description": "An arbitrary text string to use for the zone description." }, "zone": { "type": "string", "description": "The DNS domain name of the zone.\nThis is NOT the Google Cloud DNS zone ID (e.g., example-com). If you attempt to specify a zone ID, this module will attempt to create a TLD and will fail." }, "service_account_email": { "type": "string", "description": "The e-mail address for a service account with access to Google Cloud DNS." }, "pem_file": { "type": "string", "description": "The path to the PEM file associated with the service account email.\nThis option is deprecated and may be removed in a future release. Use I(credentials_file) instead." }, "state": { "type": "string", "description": "Default: present\n\nWhether the given zone should or should not be present." }, "credentials_file": { "type": "string", "description": "The path to the JSON file associated with the service account email." }, "project_id": { "type": "string", "description": "The Google Cloud Platform project ID to use." }, "name": { "type": "string", "description": "The DNS domain name of the zone.\nThis is NOT the Google Cloud DNS zone ID (e.g., example-com). If you attempt to specify a zone ID, this module will attempt to create a TLD and will fail." } } }, "rabbitmq_vhost": { "allOf": [ { "allOf": [ { "not": { "required": [ "tracing", "trace" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "vhost" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "vhost" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage the state of a virtual host in RabbitMQ", "properties": { "node": { "type": "string", "description": "Default: rabbit\n\nerlang node name of the rabbit we wish to configure" }, "name": { "type": "string", "description": "The name of the vhost to manage" }, "trace": { "type": "string", "description": "Default: no\n\nEnable/disable tracing for a vhost" }, "tracing": { "type": "string", "description": "Default: no\n\nEnable/disable tracing for a vhost" }, "vhost": { "type": "string", "description": "The name of the vhost to manage" }, "state": { "type": "string", "description": "Default: present\n\nThe state of vhost" } } }, "elasticache_snapshot": { "required": [ "name" ], "type": "object", "description": "Manage cache snapshots in Amazon Elasticache.\nReturns information about the specified snapshot.", "properties": { "replication_id": { "type": "string", "description": "The name of the existing replication group to make the snapshot." }, "name": { "type": "string", "description": "The name of the snapshot we want to create, copy, delete" }, "bucket": { "type": "string", "description": "The s3 bucket to which the snapshot is exported" }, "state": { "type": "string", "description": "Actions that will create, destroy, or copy a snapshot." }, "cluster_id": { "type": "string", "description": "The name of an existing cache cluster in the replication group to make the snapshot." }, "target": { "type": "string", "description": "The name of a snapshot copy" } } }, "cs_vpn_connection": { "required": [ "vpn_customer_gateway", "vpc" ], "type": "object", "description": "Create and remove VPN connections.", "properties": { "vpn_customer_gateway": { "type": "string", "description": "Name of the VPN customer gateway." }, "project": { "type": "string", "description": "Name of the project the VPN connection is related to." }, "domain": { "type": "string", "description": "Domain the VPN connection is related to." }, "force": { "description": "Activate the VPN gateway if not already activated on C(state=present).\nAlso see M(cs_vpn_gateway).", "$ref": "#/definitions/ansible_truth" }, "account": { "type": "string", "description": "Account the VPN connection is related to." }, "passive": { "description": "State of the VPN connection.\nOnly considered when C(state=present).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nState of the VPN connection." }, "vpc": { "type": "string", "description": "Name of the VPC the VPN connection is related to." }, "poll_async": { "description": "Default: True\n\nPoll async jobs until job has finished.", "$ref": "#/definitions/ansible_truth" } } }, "panos_op": { "required": [ "cmd", "password", "ip_address" ], "type": "object", "description": "This module will allow user to pass and execute any supported OP command on the PANW device.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for authentication." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "password": { "type": "string", "description": "Password credentials to use for authentication." }, "cmd": { "type": "string", "description": "The OP command to be performed." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device or Panorama management console being configured." } } }, "virt_net": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "network" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "network" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage I(libvirt) networks.", "properties": { "xml": { "type": "string", "description": "XML document used with the define command." }, "name": { "type": "string", "description": "name of the network being managed. Note that network must be previously defined with xml." }, "uri": { "type": "string", "description": "Default: qemu:///system\n\nlibvirt connection uri." }, "state": { "type": "string", "description": "specify which state you want a network to be in. If 'active', network will be started. If 'present', ensure that network is present but do not change its state; if it's missing, you need to specify xml argument. If 'inactive', network will be stopped. If 'undefined' or 'absent', network will be removed from I(libvirt) configuration." }, "command": { "type": "string", "description": "in addition to state management, various non-idempotent commands are available. See examples. Modify was added in version 2.1" }, "autostart": { "type": "string", "description": "Specify if a given storage pool should be started automatically on system boot." }, "network": { "type": "string", "description": "name of the network being managed. Note that network must be previously defined with xml." } } }, "avi_cloudproperties": { "type": "object", "description": "This module is used to configure CloudProperties object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "info": { "type": "string", "description": "Properties specific to a cloud type." }, "hyp_props": { "type": "string", "description": "Hypervisor properties." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "cc_props": { "type": "string", "description": "Cloudconnector properties." }, "cc_vtypes": { "type": "string", "description": "Cloud types supported by cloudconnector.\nEnum options - CLOUD_NONE, CLOUD_VCENTER, CLOUD_OPENSTACK, CLOUD_AWS, CLOUD_VCA, CLOUD_APIC, CLOUD_MESOS, CLOUD_LINUXSERVER, CLOUD_DOCKER_UCP,\nCLOUD_RANCHER, CLOUD_OSHIFT_K8S, CLOUD_AZURE." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." } } }, "ovirt_storage_connections": { "type": "object", "description": "Module to manage storage connections in oVirt", "properties": { "username": { "type": "string", "description": "A CHAP username for logging into a target." }, "force": { "type": "string", "description": "This parameter is releven only when updating a connection.\nIf I(true) the storage domain don't have to be in I(MAINTENANCE) state, so the storage connection is updated." }, "target": { "type": "string", "description": "The target IQN for the storage device." }, "storage": { "type": "string", "description": "Name of the storage domain to be used with storage connection." }, "nfs_retrans": { "type": "string", "description": "The number of times to retry a request before attempting further recovery actions. Range 0 to 65535." }, "id": { "type": "string", "description": "Id of the storage connection to manage." }, "port": { "type": "string", "description": "Port of the iSCSI storage server." }, "state": { "type": "string", "description": "Default: present\n\nShould the storage connection be present or absent." }, "mount_options": { "type": "string", "description": "Option which will be passed when mounting storage." }, "address": { "type": "string", "description": "Address of the storage server. E.g.: myserver.mydomain.com" }, "nfs_timeout": { "type": "string", "description": "The time in tenths of a second to wait for a response before retrying NFS requests. Range 0 to 65535." }, "path": { "type": "string", "description": "Path of the mount point of the storage. E.g.: /path/to/my/data" }, "vfs_type": { "type": "string", "description": "Virtual File System type." }, "password": { "type": "string", "description": "A CHAP password for logging into a target." }, "type": { "type": "string", "description": "Storage type. For example: I(nfs), I(iscsi), etc." }, "nfs_version": { "type": "string", "description": "NFS version. One of: I(auto), I(v3), I(v4) or I(v4_1)." } } }, "ce_vxlan_arp": { "type": "object", "description": "Manages ARP attributes of VXLAN on HUAWEI CloudEngine devices.", "properties": { "evn_bgp": { "type": "string", "description": "Enables EVN BGP." }, "vbdif_name": { "type": "string", "description": "Full name of VBDIF interface, i.e. Vbdif100." }, "bridge_domain_id": { "type": "string", "description": "Specifies a BD(bridge domain) ID. The value is an integer ranging from 1 to 16777215." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "evn_server": { "type": "string", "description": "Configures the local device as the router reflector (RR) on the EVN network." }, "evn_peer_ip": { "type": "string", "description": "Specifies the IP address of an EVN BGP peer. The value is in dotted decimal notation." }, "evn_source_ip": { "type": "string", "description": "Specifies the source address of an EVN BGP peer. The value is in dotted decimal notation." }, "arp_collect_host": { "type": "string", "description": "Enables EVN BGP or BGP EVPN to collect host information." }, "arp_suppress": { "type": "string", "description": "Enables ARP broadcast suppression in a BD." }, "evn_reflect_client": { "type": "string", "description": "Configures the local device as the route reflector (RR) and its peer as the client." }, "host_collect_protocol": { "type": "string", "description": "Enables EVN BGP or BGP EVPN to advertise host information." } } }, "aci_interface_policy_mcp": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mcp", "mcp_interface", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "mcp" ], "type": "object" }, { "required": [ "mcp_interface" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage MCP interface policies on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "The description for the MCP interface." }, "descr": { "type": "string", "description": "The description for the MCP interface." }, "mcp_interface": { "type": "string", "description": "The name of the MCP interface." }, "name": { "type": "string", "description": "The name of the MCP interface." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "admin_state": { "type": "string", "description": "Default: enable\n\nEnable or disable admin state." }, "mcp": { "type": "string", "description": "The name of the MCP interface." } } }, "gcp_healthcheck": { "required": [ "healthcheck_name", "healthcheck_type", "host_header", "state" ], "type": "object", "description": "Create, Update or Destroy a Healthcheck. Currently only HTTP and HTTPS Healthchecks are supported. Healthchecks are used to monitor individual instances, managed instance groups and/or backend services. Healtchecks are reusable.\nVisit U(https://cloud.google.com/compute/docs/load-balancing/health-checks) for an overview of Healthchecks on GCP.\nSee U(https://cloud.google.com/compute/docs/reference/latest/httpHealthChecks) for API details on HTTP Healthchecks.\nSee U(https://cloud.google.com/compute/docs/reference/latest/httpsHealthChecks) for more details on the HTTPS Healtcheck API.", "properties": { "healthcheck_name": { "type": "string", "description": "Name of the Healthcheck." }, "healthcheck_type": { "type": "string", "description": "Type of Healthcheck." }, "timeout": { "type": "string", "description": "Default: 5\n\nHow long (in seconds) to wait for a response before claiming failure. It is invalid for timeout to have a greater value than check_interval." }, "service_account_email": { "type": "string", "description": "service account email" }, "healthy_threshold": { "type": "string", "description": "Default: 2\n\nA so-far unhealthy instance will be marked healthy after this many consecutive successes." }, "service_account_permissions": { "type": "string", "description": "service account permissions (see U(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create), --scopes section for detailed information)" }, "unhealthy_threshold": { "type": "string", "description": "Default: 2\n\nA so-far healthy instance will be marked unhealthy after this many consecutive failures." }, "host_header": { "type": "string", "description": "The value of the host header in the health check request. If left empty, the public IP on behalf of which this health check is performed will be used." }, "state": { "type": "string", "description": "State of the Healthcheck." }, "check_interval": { "type": "string", "description": "Default: 5\n\nHow often (in seconds) to send a health check." }, "credentials_file": { "type": "string", "description": "Path to the JSON file associated with the service account email" }, "project_id": { "type": "string", "description": "Your GCP project ID" }, "port": { "type": "string", "description": "The TCP port number for the health check request. The default value is 443 for HTTPS and 80 for HTTP." }, "request_path": { "type": "string", "description": "Default: /\n\nThe request path of the HTTPS health check request." } } }, "interfaces_file": { "type": "object", "description": "Manage (add, remove, change) individual interface options in an interfaces-style file without having to manage the file as a whole with, say, M(template) or M(assemble). Interface has to be presented in a file.\nRead information about interfaces from interfaces-styled files", "properties": { "iface": { "type": "string", "description": "Name of the interface, required for value changes or option remove" }, "option": { "type": "string", "description": "Name of the option, required for value changes or option remove" }, "dest": { "type": "string", "description": "Default: /etc/network/interfaces\n\nPath to the interfaces file" }, "value": { "type": "string", "description": "If I(option) is not presented for the I(interface) and I(state) is C(present) option will be added. If I(option) already exists and is not C(pre-up), C(up), C(post-up) or C(down), it's value will be updated. C(pre-up), C(up), C(post-up) and C(down) options can't be updated, only adding new options, removing existing ones or cleaning the whole option set are supported" }, "state": { "type": "string", "description": "Default: present\n\nIf set to C(absent) the option or section will be removed if present instead of created." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." } } }, "docker_container": { "allOf": [ { "allOf": [ { "not": { "required": [ "published_ports", "ports" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "exposed_ports", "exposed" ], "type": "object" } } ] } ], "type": "object", "description": "Manage the life cycle of docker containers.\nSupports check mode. Run with --check and --diff to view config difference and list of actions to be taken.", "properties": { "tty": { "type": "string", "description": "Allocate a psuedo-TTY." }, "dns_servers": { "type": "array", "description": "List of custom DNS servers." }, "links": { "type": "array", "description": "List of name aliases for linked containers in the format C(container_name:alias)" }, "oom_score_adj": { "type": "string", "description": "An integer value containing the score given to the container in order to tune OOM killer preferences." }, "exposed": { "type": "array", "description": "List of additional container ports which informs Docker that the container listens on the specified network ports at runtime. If the port is already exposed using EXPOSE in a Dockerfile, it does not need to be exposed again." }, "image": { "type": "string", "description": "Repository path and tag used to create the container. If an image is not found or pull is true, the image will be pulled from the registry. If no tag is included, 'latest' will be used." }, "recreate": { "type": "string", "description": "Use with present and started states to force the re-creation of an existing container." }, "command": { "type": "string", "description": "Command to execute when the container starts." }, "memory_reservation": { "type": "string", "description": "Memory soft limit (format: []). Number is a positive integer. Unit can be one of b, k, m, or g" }, "paused": { "type": "string", "description": "Use with the started state to pause running processes inside the container." }, "trust_image_content": { "type": "string", "description": "If true, skip image verification." }, "cpuset_cpus": { "type": "string", "description": "CPUs in which to allow execution C(1,3) or C(1-3)." }, "stop_timeout": { "type": "string", "description": "Number of seconds to wait for the container to stop before sending SIGKILL." }, "security_opts": { "type": "array", "description": "List of security options in the form of C(\"label:user:User\")" }, "force_kill": { "type": "string", "description": "Use the kill command when stopping a running container." }, "pid_mode": { "type": "string", "description": "Set the PID namespace mode for the container. Currently only supports 'host'." }, "env_file": { "type": "string", "description": "Path to a file containing environment variables I(FOO=BAR).\nIf variable also present in C(env), then C(env) value will override.\nRequires docker-py >= 1.4.0." }, "networks": { "type": "array", "description": "List of networks the container belongs to.\nEach network is a dict with keys C(name), C(ipv4_address), C(ipv6_address), C(links), C(aliases).\nFor each network C(name) is required, all other keys are optional.\nIf included, C(links) or C(aliases) are lists.\nFor examples of the data structure and usage see EXAMPLES below.\nTo remove a container from one or more networks, use the C(purge_networks) option." }, "cpu_quota": { "type": "string", "description": "Limit CPU CFS (Completely Fair Scheduler) quota" }, "log_driver": { "type": "string", "description": "Specify the logging driver. Docker uses json-file by default." }, "cpu_period": { "type": "string", "description": "Limit CPU CFS (Completely Fair Scheduler) period" }, "keep_volumes": { "type": "string", "description": "Default: True\n\nRetain volumes associated with a removed container." }, "cpuset_mems": { "type": "string", "description": "Memory nodes (MEMs) in which to allow execution C(0-3) or C(0,1)" }, "hostname": { "type": "string", "description": "Container hostname." }, "restart_retries": { "type": "string", "description": "Use with restart policy to control maximum number of restart attempts." }, "capabilities": { "type": "array", "description": "List of capabilities to add to the container." }, "state": { "type": "string", "description": "Default: started\n\nI(absent) - A container matching the specified name will be stopped and removed. Use force_kill to kill the container rather than stopping it. Use keep_volumes to retain volumes associated with the removed container.\nI(present) - Asserts the existence of a container matching the name and any provided configuration parameters. If no container matches the name, a container will be created. If a container matches the name but the provided configuration does not match, the container will be updated, if it can be. If it cannot be updated, it will be removed and re-created with the requested config. Image version will be taken into account when comparing configuration. To ignore image version use the ignore_image option. Use the recreate option to force the re-creation of the matching container. Use force_kill to kill the container rather than stopping it. Use keep_volumes to retain volumes associated with a removed container.\nI(started) - Asserts there is a running container matching the name and any provided configuration. If no container matches the name, a container will be created and started. If a container matching the name is found but the configuration does not match, the container will be updated, if it can be. If it cannot be updated, it will be removed and a new container will be created with the requested configuration and started. Image version will be taken into account when comparing configuration. To ignore image version use the ignore_image option. Use recreate to always re-create a matching container, even if it is running. Use restart to force a matching container to be stopped and restarted. Use force_kill to kill a container rather than stopping it. Use keep_volumes to retain volumes associated with a removed container.\nI(stopped) - Asserts that the container is first I(present), and then if the container is running moves it to a stopped state. Use force_kill to kill a container rather than stopping it." }, "cleanup": { "type": "string", "description": "Use with I(detach) to remove the container after successful execution." }, "entrypoint": { "type": "string", "description": "Command that overwrites the default ENTRYPOINT of the image." }, "memory_swap": { "type": "string", "description": "Total memory limit (memory + swap, format:[]). Number is a positive integer. Unit can be one of b, k, m, or g." }, "env": { "type": "object", "description": "Dictionary of key,value pairs." }, "memory": { "type": "string", "description": "Memory limit (format: []). Number is a positive integer. Unit can be one of b, k, m, or g" }, "volumes_from": { "type": "array", "description": "List of container names or Ids to get volumes from." }, "blkio_weight": { "type": "string", "description": "Block IO (relative weight), between 10 and 1000." }, "log_options": { "type": "object", "description": "Dictionary of options specific to the chosen log_driver. See https://docs.docker.com/engine/admin/logging/overview/ for details." }, "privileged": { "type": "string", "description": "Give extended privileges to the container." }, "exposed_ports": { "type": "array", "description": "List of additional container ports which informs Docker that the container listens on the specified network ports at runtime. If the port is already exposed using EXPOSE in a Dockerfile, it does not need to be exposed again." }, "read_only": { "type": "string", "description": "Mount the container's root file system as read-only." }, "labels": { "type": "object", "description": "Dictionary of key value pairs." }, "ipc_mode": { "type": "string", "description": "Set the IPC mode for the container. Can be one of 'container:' to reuse another container's IPC namespace or 'host' to use the host's IPC namespace within the container." }, "oom_killer": { "type": "string", "description": "Whether or not to disable OOM Killer for the container." }, "shm_size": { "type": "string", "description": "Size of `/dev/shm`. The format is ``. `number` must be greater than `0`. Unit is optional and can be `b` (bytes), `k` (kilobytes), `m` (megabytes), or `g` (gigabytes).\nOmitting the unit defaults to bytes. If you omit the size entirely, the system uses `64m`." }, "mac_address": { "type": "string", "description": "Container MAC address (e.g. 92:d0:c6:0a:29:33)" }, "memory_swappiness": { "type": "string", "description": "Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100." }, "kill_signal": { "type": "string", "description": "Override default signal used to kill a running container." }, "network_mode": { "type": "string", "description": "Connect the container to a network." }, "volume_driver": { "type": "string", "description": "Default: none\n\nThe container volume driver." }, "kernel_memory": { "type": "string", "description": "Kernel memory limit (format: []). Number is a positive integer. Unit can be one of b, k, m, or g. Minimum is 4M." }, "user": { "type": "string", "description": "Sets the username or UID used and optionally the groupname or GID for the specified command.\nCan be [ user | user:group | uid | uid:gid | user:gid | uid:group ]" }, "groups": { "type": "array", "description": "List of additional group names and/or IDs that the container process will run as." }, "detach": { "type": "string", "description": "Default: True\n\nEnable detached mode to leave the container running in background. If disabled, the task will reflect the status of the container run (failed if the command failed)." }, "restart": { "type": "string", "description": "Use with started state to force a matching container to be stopped and restarted." }, "pull": { "type": "string", "description": "If true, always pull the latest version of an image. Otherwise, will only pull an image when missing." }, "name": { "type": "string", "description": "Assign a name to a new container or match an existing container.\nWhen identifying an existing container name may be a name or a long or short container ID." }, "stop_signal": { "type": "string", "description": "Override default signal used to stop the container." }, "restart_policy": { "type": "string", "description": "Default: on-failure\n\nContainer restart policy. Place quotes around I(no) option." }, "ignore_image": { "type": "string", "description": "When C(state) is I(present) or I(started) the module compares the configuration of an existing container to requested configuration. The evaluation includes the image version. If the image version in the registry does not match the container, the container will be recreated. Stop this behavior by setting C(ignore_image) to I(True)." }, "devices": { "type": "array", "description": "List of host device bindings to add to the container. Each binding is a mapping expressed in the format: ::" }, "etc_hosts": { "type": "string", "description": "Dict of host-to-IP mappings, where each host name is a key in the dictionary. Each host name will be added to the container's /etc/hosts file." }, "uts": { "type": "string", "description": "Set the UTS namespace mode for the container." }, "published_ports": { "type": "array", "description": "List of ports to publish from the container to the host.\nUse docker CLI syntax: C(8000), C(9000:8000), or C(0.0.0.0:9000:8000), where 8000 is a container port, 9000 is a host port, and 0.0.0.0 is a host interface.\nContainer ports must be exposed either in the Dockerfile or via the C(expose) option.\nA value of ALL will publish all exposed container ports to random host ports, ignoring any other mappings.\nIf C(networks) parameter is provided, will inspect each network to see if there exists a bridge network with optional parameter com.docker.network.bridge.host_binding_ipv4. If such a network is found, then published ports where no host IP address is specified will be bound to the host IP pointed to by com.docker.network.bridge.host_binding_ipv4. Note that the first bridge network with a com.docker.network.bridge.host_binding_ipv4 value encountered in the list of C(networks) is the one that will be used." }, "volumes": { "type": "array", "description": "List of volumes to mount within the container.\nUse docker CLI-style syntax: C(/host:/container[:mode])\nYou can specify a read mode for the mount with either C(ro) or C(rw).\nSELinux hosts can additionally use C(z) or C(Z) to use a shared or private label for the volume." }, "dns_search_domains": { "type": "array", "description": "List of custom DNS search domains." }, "purge_networks": { "type": "string", "description": "Remove the container from ALL networks not included in C(networks) parameter.\nAny default networks such as I(bridge), if not found in C(networks), will be removed as well." }, "cpu_shares": { "type": "string", "description": "CPU shares (relative weight)." }, "ports": { "type": "array", "description": "List of ports to publish from the container to the host.\nUse docker CLI syntax: C(8000), C(9000:8000), or C(0.0.0.0:9000:8000), where 8000 is a container port, 9000 is a host port, and 0.0.0.0 is a host interface.\nContainer ports must be exposed either in the Dockerfile or via the C(expose) option.\nA value of ALL will publish all exposed container ports to random host ports, ignoring any other mappings.\nIf C(networks) parameter is provided, will inspect each network to see if there exists a bridge network with optional parameter com.docker.network.bridge.host_binding_ipv4. If such a network is found, then published ports where no host IP address is specified will be bound to the host IP pointed to by com.docker.network.bridge.host_binding_ipv4. Note that the first bridge network with a com.docker.network.bridge.host_binding_ipv4 value encountered in the list of C(networks) is the one that will be used." }, "ulimits": { "type": "array", "description": "List of ulimit options. A ulimit is specified as C(nofile:262144:262144)" }, "interactive": { "type": "string", "description": "Keep stdin open after a container is launched, even if not attached." } } }, "lambda_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "statement_id", "sid" ], "type": "object" } }, { "oneOf": [ { "required": [ "statement_id" ], "type": "object" }, { "required": [ "sid" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "function_name", "lambda_function_arn", "function_arn" ], "type": "object" } }, { "oneOf": [ { "required": [ "function_name" ], "type": "object" }, { "required": [ "lambda_function_arn" ], "type": "object" }, { "required": [ "function_arn" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module allows the management of AWS Lambda policy statements. It is idempotent and supports \"Check\" mode. Use module M(lambda) to manage the lambda function itself, M(lambda_alias) to manage function aliases, M(lambda_event) to manage event source mappings such as Kinesis streams, M(lambda_invoke) to execute a lambda function and M(lambda_facts) to gather facts relating to one or more lambda functions.", "properties": { "event_source_token": { "type": "string", "description": "Token string representing source ARN or account. Mutually exclusive with C(source_arn) or C(source_account)." }, "statement_id": { "type": "string", "description": "A unique statement identifier." }, "function_arn": { "type": "string", "description": "Name of the Lambda function whose resource policy you are updating by adding a new permission.\nYou can specify a function name (for example, Thumbnail ) or you can specify Amazon Resource Name (ARN) of the\nfunction (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail ). AWS Lambda also allows you to\nspecify partial ARN (for example, account-id:Thumbnail ). Note that the length constraint applies only to the\nARN. If you specify only the function name, it is limited to 64 character in length." }, "lambda_function_arn": { "type": "string", "description": "Name of the Lambda function whose resource policy you are updating by adding a new permission.\nYou can specify a function name (for example, Thumbnail ) or you can specify Amazon Resource Name (ARN) of the\nfunction (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail ). AWS Lambda also allows you to\nspecify partial ARN (for example, account-id:Thumbnail ). Note that the length constraint applies only to the\nARN. If you specify only the function name, it is limited to 64 character in length." }, "alias": { "type": "string", "description": "Name of the function alias. Mutually exclusive with C(version)." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "version": { "type": "string", "description": "Version of the Lambda function. Mutually exclusive with C(alias)." }, "sid": { "type": "string", "description": "A unique statement identifier." }, "action": { "type": "string", "description": "The AWS Lambda action you want to allow in this statement. Each Lambda action is a string starting with lambda: followed by the API name (see Operations ). For example, lambda:CreateFunction . You can use wildcard (lambda:* ) to grant permission for all AWS Lambda actions." }, "source_arn": { "type": "string", "description": "This is optional; however, when granting Amazon S3 permission to invoke your function, you should specify this field with the bucket Amazon Resource Name (ARN) as its value. This ensures that only events generated from the specified bucket can invoke the function." }, "principal": { "type": "string", "description": "The principal who is getting this permission. It can be Amazon S3 service Principal (s3.amazonaws.com ) if you want Amazon S3 to invoke the function, an AWS account ID if you are granting cross-account permission, or any valid AWS service principal such as sns.amazonaws.com . For example, you might want to allow a custom application in another AWS account to push events to AWS Lambda by invoking your function." }, "source_account": { "type": "string", "description": "The AWS account ID (without a hyphen) of the source owner. For example, if the SourceArn identifies a bucket, then this is the bucket owner's account ID. You can use this additional condition to ensure the bucket you specify is owned by a specific account (it is possible the bucket owner deleted the bucket and some other AWS account created the bucket). You can also use this condition to specify all sources (that is, you don't specify the SourceArn ) owned by a specific account." }, "function_name": { "type": "string", "description": "Name of the Lambda function whose resource policy you are updating by adding a new permission.\nYou can specify a function name (for example, Thumbnail ) or you can specify Amazon Resource Name (ARN) of the\nfunction (for example, arn:aws:lambda:us-west-2:account-id:function:ThumbNail ). AWS Lambda also allows you to\nspecify partial ARN (for example, account-id:Thumbnail ). Note that the length constraint applies only to the\nARN. If you specify only the function name, it is limited to 64 character in length." } } }, "junos_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both login and motd banners on network devices. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string, with no empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner that should be configured on the remote device. Value C(login) indicates system login message prior to authenticating, C(motd) is login announcement after successful authentication." } } }, "ec2_lc_facts": { "type": "object", "description": "Gather facts about AWS Autoscaling Launch Configurations", "properties": { "sort": { "type": "string", "description": "Optional attribute which with to sort the results." }, "sort_end": { "type": "string", "description": "Which result to end with (when sorting).\nCorresponds to Python slice notation." }, "sort_order": { "type": "string", "description": "Default: ascending\n\nOrder in which to sort results.\nOnly used when the 'sort' parameter is specified." }, "name": { "type": "string", "description": "A name or a list of name to match." }, "sort_start": { "type": "string", "description": "Which result to start with (when sorting).\nCorresponds to Python slice notation." } } }, "azure_rm_storageaccount": { "allOf": [ { "allOf": [ { "not": { "required": [ "account_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update or delete a storage account.", "properties": { "kind": { "type": "string", "description": "Default: Storage\n\nThe 'kind' of storage." }, "account_type": { "type": "string", "description": "Type of storage account. Required when creating a storage account. NOTE: Standard_ZRS and Premium_LRS accounts cannot be changed to other account types, and other account types cannot be changed to Standard_ZRS or Premium_LRS." }, "custom_domain": { "type": "string", "description": "User domain assigned to the storage account. Must be a dictionary with 'name' and 'use_sub_domain' keys where 'name' is the CNAME source. Only one custom domain is supported per storage account at this time. To clear the existing custom domain, use an empty string for the custom domain name property.\nCan be added to an existing storage account. Will be ignored during storage account creation." }, "resource_group": { "type": "string", "description": "Name of the resource group to use." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the storage account. Use 'present' to create or update a storage account and 'absent' to delete an account." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "type": { "type": "string", "description": "Type of storage account. Required when creating a storage account. NOTE: Standard_ZRS and Premium_LRS accounts cannot be changed to other account types, and other account types cannot be changed to Standard_ZRS or Premium_LRS." }, "name": { "type": "string", "description": "Name of the storage account to update or create." } } }, "ovirt_quotas_facts": { "required": [ "data_center" ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV quotas.", "properties": { "name": { "type": "string", "description": "Name of the quota, can be used as glob expression." }, "data_center": { "type": "string", "description": "Name of the datacenter where quota resides." } } }, "mount": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module controls active and configured mount points in C(/etc/fstab).", "properties": { "src": { "type": "string", "description": "Device to be mounted on I(path). Required when I(state) set to C(present) or C(mounted)." }, "name": { "type": "string", "description": "Path to the mount point (e.g. C(/mnt/files)).\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "dump": { "type": "string", "description": "Dump (see fstab(5)). Note that if set to C(null) and I(state) set to C(present), it will cease to work and duplicate entries will be made with subsequent runs.\nHas no effect on Solaris systems." }, "boot": { "description": "Default: yes\n\nDetermines if the filesystem should be mounted on boot.\nOnly applies to Solaris systems.", "$ref": "#/definitions/ansible_truth" }, "fstab": { "type": "string", "description": "Default: /etc/fstab (/etc/vfstab on Solaris)\n\nFile to use instead of C(/etc/fstab). You shouldn't use this option unless you really know what you are doing. This might be useful if you need to configure mountpoints in a chroot environment. OpenBSD does not allow specifying alternate fstab files with mount so do not use this on OpenBSD with any state that operates on the live filesystem." }, "passno": { "type": "string", "description": "Passno (see fstab(5)). Note that if set to C(null) and I(state) set to C(present), it will cease to work and duplicate entries will be made with subsequent runs.\nDeprecated on Solaris systems." }, "fstype": { "type": "string", "description": "Filesystem type. Required when I(state) is C(present) or C(mounted)." }, "state": { "type": "string", "description": "If C(mounted), the device will be actively mounted and appropriately configured in I(fstab). If the mount point is not present, the mount point will be created.\nIf C(unmounted), the device will be unmounted without changing I(fstab).\nC(present) only specifies that the device is to be configured in I(fstab) and does not trigger or require a mount.\nC(absent) specifies that the device mount's entry will be removed from I(fstab) and will also unmount the device and remove the mount point." }, "path": { "type": "string", "description": "Path to the mount point (e.g. C(/mnt/files)).\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." }, "opts": { "type": "string", "description": "Mount options (see fstab(5), or vfstab(4) on Solaris)." } } }, "oneview_fc_network": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage Fibre Channel Network resources. Can create, update, and delete.", "properties": { "state": { "type": "string", "description": "Indicates the desired state for the Fibre Channel Network resource. C(present) will ensure data properties are compliant with OneView. C(absent) will remove the resource from OneView, if it exists." }, "data": { "type": "array", "description": "List with the Fibre Channel Network properties." } } }, "openssl_publickey": { "required": [ "path", "privatekey_path" ], "type": "object", "description": "This module allows one to (re)generate OpenSSL public keys from their private keys. It uses the pyOpenSSL python library to interact with openssl. Keys are generated in PEM format. This module works only if the version of PyOpenSSL is recent enough (> 16.0.0).", "properties": { "privatekey_passphrase": { "type": "string", "description": "The passphrase for the privatekey." }, "force": { "type": "string", "description": "Should the key be regenerated even it it already exists" }, "format": { "type": "string", "description": "Default: PEM\n\nThe format of the public key." }, "privatekey_path": { "type": "string", "description": "Path to the TLS/SSL private key from which to generate the public key." }, "state": { "type": "string", "description": "Default: present\n\nWhether the public key should exist or not, taking action if the state is different from what is stated." }, "path": { "type": "string", "description": "Name of the file in which the generated TLS/SSL public key will be written." } } }, "packet_device": { "allOf": [ { "allOf": [ { "not": { "required": [ "hostnames", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "locked", "lock" ], "type": "object" } } ] } ], "type": "object", "description": "Manage a bare metal server in the Packet Host (a \"device\" in the API terms).\nWhen the machine is created it can optionally wait for public IP address, or for active state.\nThis module has a dependency on packet >= 1.0.\nAPI is documented at U(https://www.packet.net/developers/api/devices).", "properties": { "ipxe_script_url": { "type": "string", "description": "URL of custom iPXE script for provisioning.\nMore about custome iPXE for Packet devices at U(https://help.packet.net/technical/infrastructure/custom-ipxe)." }, "count": { "type": "string", "description": "Default: 1\n\nThe number of devices to create. Count number can be included in hostname via the %d string formatter." }, "project_id": { "type": "string", "description": "ID of project of the device." }, "operating_system": { "type": "string", "description": "OS slug for device creation. See Packet API for current list - U(https://www.packet.net/developers/api/operatingsystems/)." }, "locked": { "type": "string", "description": "Whether to lock a created device." }, "features": { "type": "string", "description": "Dict with \"features\" for device creation. See Packet API docs for details." }, "facility": { "type": "string", "description": "Facility slug for device creation. See Packet API for current list - U(https://www.packet.net/developers/api/facilities/)." }, "wait_for_public_IPv": { "type": "string", "description": "Whether to wait for the instance to be assigned a public IPv4/IPv6 address.\nIf set to 4, it will wait until IPv4 is assigned to the instance.\nIf set to 6, wait until public IPv6 is assigned to the instance." }, "lock": { "type": "string", "description": "Whether to lock a created device." }, "auth_token": { "type": "string", "description": "Packet api token. You can also supply it in env var C(PACKET_API_TOKEN)." }, "count_offset": { "type": "string", "description": "Default: 1\n\nFrom which number to start the count." }, "user_data": { "type": "string", "description": "Userdata blob made available to the machine" }, "always_pxe": { "type": "string", "description": "Persist PXE as the first boot option.\nNormally, the PXE process happens only on the first boot. Set this arg to have your device continuously boot to iPXE." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the device.\nIf set to C(present) (the default), the module call will return immediately after the device-creating HTTP request successfully returns.\nIf set to C(active), the module call will block until all the specified devices are in state active due to the Packet API, or until I(wait_timeout)." }, "hostnames": { "type": "string", "description": "A hostname of a device, or a list of hostnames.\nIf given string or one-item list, you can use the C(\"%d\") Python string format to expand numbers from I(count).\nIf only one hostname, it might be expanded to list if I(count)>1." }, "plan": { "type": "string", "description": "Plan slug for device creation. See Packet API for current list - U(https://www.packet.net/developers/api/plans/)." }, "device_ids": { "type": "array", "description": "List of device IDs on which to operate." }, "wait_timeout": { "type": "string", "description": "Default: 900\n\nHow long (seconds) to wait either for automatic IP address assignment, or for the device to reach the C(active) I(state).\nIf I(wait_for_public_IPv) is set and I(state) is C(active), the module will wait for both events consequently, applying the timeout twice." }, "name": { "type": "string", "description": "A hostname of a device, or a list of hostnames.\nIf given string or one-item list, you can use the C(\"%d\") Python string format to expand numbers from I(count).\nIf only one hostname, it might be expanded to list if I(count)>1." } } }, "aws_waf_rule": { "required": [ "name" ], "type": "object", "description": "Read the AWS documentation for WAF U(https://aws.amazon.com/documentation/waf/)", "properties": { "state": { "type": "string", "description": "Default: present\n\nwhether the rule should be present or absent" }, "conditions": { "type": "array", "description": "list of conditions used in the rule. Each condition should contain I(type): which is one of [C(byte), C(geo), C(ip), C(size), C(sql) or C(xss)] I(negated): whether the condition should be negated, and C(condition), the name of the existing condition. M(aws_waf_condition) can be used to create new conditions\n" }, "name": { "type": "string", "description": "Name of the Web Application Firewall rule" }, "purge_conditions": { "type": "string", "description": "Whether or not to remove conditions that are not passed when updating `conditions`. Defaults to false." }, "metric_name": { "type": "string", "description": "A friendly name or description for the metrics for the rule\nThe name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.\nYou can't change metric_name after you create the rule\nDefaults to the same as name with disallowed characters removed" } } }, "cronvar": { "required": [ "name" ], "type": "object", "description": "Use this module to manage crontab variables. This module allows you to create, update, or delete cron variable definitions.", "properties": { "name": { "type": "string", "description": "Name of the crontab variable." }, "insertbefore": { "type": "string", "description": "Used with C(state=present). If specified, the variable will be inserted just before the variable specified." }, "cron_file": { "type": "string", "description": "If specified, uses this file instead of an individual user's crontab. Without a leading /, this is assumed to be in /etc/cron.d. With a leading /, this is taken as absolute." }, "value": { "type": "string", "description": "The value to set this variable to. Required if state=present." }, "state": { "type": "string", "description": "Default: present\n\nWhether to ensure that the variable is present or absent." }, "user": { "type": "string", "description": "Default: root\n\nThe specific user whose crontab should be modified." }, "insertafter": { "type": "string", "description": "Used with C(state=present). If specified, the variable will be inserted after the variable specified." }, "backup": { "type": "string", "description": "If set, create a backup of the crontab before it is modified. The location of the backup is returned in the C(backup) variable by this module." } } }, "tower_role": { "required": [ "role" ], "type": "object", "description": "Create, update, or destroy Ansible Tower roles. See U(https://www.ansible.com/tower) for an overview.", "properties": { "credential": { "type": "string", "description": "Credential the role acts on." }, "job_template": { "type": "string", "description": "The job_template the role acts on." }, "project": { "type": "string", "description": "Project the role acts on." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "role": { "type": "string", "description": "The role type to grant/revoke." }, "inventory": { "type": "string", "description": "Inventory the role acts on." }, "team": { "type": "string", "description": "Team that receives the permissions specified by the role." }, "organization": { "type": "string", "description": "Organiation the role acts on." }, "target_team": { "type": "string", "description": "Team that the role acts on." }, "user": { "type": "string", "description": "User that receives the permissions specified by the role." } } }, "cs_affinitygroup": { "allOf": [ { "allOf": [ { "not": { "required": [ "affinity_type", "affinty_type" ], "type": "object" } } ] } ], "type": "object", "description": "Create and remove affinity groups.", "properties": { "account": { "type": "string", "description": "Account the affinity group is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the affinity group." }, "affinty_type": { "type": "string", "description": "Type of the affinity group. If not specified, first found affinity type is used." }, "domain": { "type": "string", "description": "Domain the affinity group is related to." }, "affinity_type": { "type": "string", "description": "Type of the affinity group. If not specified, first found affinity type is used." }, "project": { "type": "string", "description": "Name of the project the affinity group is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the affinity group." }, "description": { "type": "string", "description": "Description of the affinity group." } } }, "ce_bfd_global": { "type": "object", "description": "Manages BFD global configuration on HUAWEI CloudEngine devices.", "properties": { "tos_exp_dynamic": { "type": "string", "description": "Indicates the priority of BFD control packets for dynamic BFD sessions. The value is an integer ranging from 0 to 7. The default priority is 7, which is the highest priority of BFD control packets." }, "default_ip": { "type": "string", "description": "Specifies the default multicast IP address. The value ranges from 224.0.0.107 to 224.0.0.250." }, "damp_init_wait_time": { "type": "string", "description": "Specifies an initial flapping suppression time for a BFD session. The value is an integer ranging from 1 to 3600000, in milliseconds. The default value is 2000." }, "bfd_enable": { "type": "string", "description": "Enables the global Bidirectional Forwarding Detection (BFD) function." }, "delay_up_time": { "type": "string", "description": "Specifies the delay before a BFD session becomes Up. The value is an integer ranging from 1 to 600, in seconds. The default value is 0, indicating that a BFD session immediately becomes Up." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "damp_max_wait_time": { "type": "string", "description": "Specifies a maximum flapping suppression time for a BFD session. The value is an integer ranging from 1 to 3600000, in milliseconds. The default value is 15000." }, "damp_second_wait_time": { "type": "string", "description": "Specifies a secondary flapping suppression time for a BFD session. The value is an integer ranging from 1 to 3600000, in milliseconds. The default value is 5000." }, "tos_exp_static": { "type": "string", "description": "Indicates the priority of BFD control packets for static BFD sessions. The value is an integer ranging from 0 to 7. The default priority is 7, which is the highest priority of BFD control packets." } } }, "onyx_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service configuration on Mellanox ONYX network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP protocol configuration." } } }, "hostname": { "required": [ "name" ], "type": "object", "description": "Set system's hostname.\nCurrently implemented on Debian, Ubuntu, Fedora, RedHat, openSUSE, Linaro, ScientificLinux, Arch, CentOS, AMI.\nAny distribution that uses systemd as their init system.\nNote, this module does *NOT* modify /etc/hosts. You need to modify it yourself using other modules like template or replace.", "properties": { "name": { "type": "string", "description": "Name of the host" } } }, "avi_dnspolicy": { "required": [ "name" ], "type": "object", "description": "This module is used to configure DnsPolicy object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the dns policy.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name.\nField introduced in 17.1.1." }, "name": { "type": "string", "description": "Name of the dns policy.\nField introduced in 17.1.1." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "rule": { "type": "string", "description": "Dns rules.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "Field introduced in 17.1.1." } } }, "cs_iso": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] } ], "type": "object", "description": "Register and remove ISO images.", "properties": { "display_text": { "type": "string", "description": "Display text of the ISO.\nIf not specified, C(name) will be used." }, "is_featured": { "type": "string", "description": "Register the ISO to be featured. Only used if C(state) is present." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the ISO." }, "zone": { "type": "string", "description": "Name of the zone you wish the ISO to be registered or deleted from.\nIf not specified, first zone found will be used." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "url": { "type": "string", "description": "URL where the ISO can be downloaded from. Required if C(state) is present." }, "checksum": { "type": "string", "description": "The MD5 checksum value of this ISO. If set, we search by checksum instead of name." }, "iso_filter": { "type": "string", "description": "Default: self\n\nName of the filter used to search for the ISO." }, "is_dynamically_scalable": { "type": "string", "description": "Register the ISO having XS/VMWare tools installed inorder to support dynamic scaling of VM cpu/memory. Only used if C(state) is present." }, "project": { "type": "string", "description": "Name of the project the ISO to be registered in." }, "bootable": { "type": "string", "description": "Register the ISO to be bootable. Only used if C(state) is present." }, "state": { "type": "string", "description": "Default: present\n\nState of the ISO." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nTo delete all tags, set a empty list e.g. C(tags: [])." }, "is_ready": { "type": "string", "description": "This flag is used for searching existing ISOs. If set to C(true), it will only list ISO ready for deployment e.g. successfully downloaded and installed. Recommended to set it to C(false)." }, "domain": { "type": "string", "description": "Domain the ISO is related to." }, "account": { "type": "string", "description": "Account the ISO is related to." }, "is_public": { "type": "string", "description": "Register the ISO to be publicly available to all users. Only used if C(state) is present." }, "os_type": { "type": "string", "description": "Name of the OS that best represents the OS of this ISO. If the iso is bootable this parameter needs to be passed. Required if C(state) is present." }, "cross_zones": { "type": "string", "description": "Whether the ISO should be synced or removed across zones.\nMutually exclusive with C(zone)." } } }, "aruba_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "running_config", "config" ], "type": "object" } } ] } ], "type": "object", "description": "Aruba configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with Aruba configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "encrypt": { "type": "string", "description": "Default: True\n\nThis allows an Aruba controller's passwords and keys to be displayed in plain text when set to I(false) or encrypted when set to I(true). If set to I(false), the setting will re-encrypt at the end of the module run. Backups are still encrypted even when set to I(false)." }, "backup": { "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "intended_config": { "type": "string", "description": "The C(intended_config) provides the master configuration that the node should conform to and is used to check the final running-config against. This argument will not modify any settings on the remote device and is strictly used to check the compliance of the current device's configuration against. When specifying this argument, the task should also modify the C(diff_against) value and set it to I(intended)." }, "diff_against": { "type": "string", "description": "When using the C(ansible-playbook --diff) command line argument the module can generate diffs against different sources.\nWhen this option is configure as I(startup), the module will return the diff of the running-config against the startup-config.\nWhen this option is configured as I(intended), the module will return the diff of the running-config against the configuration provided in the C(intended_config) argument.\nWhen this option is configured as I(running), the module will return the before and after diff of the running-config with respect to any changes made to the device configuration." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "diff_ignore_lines": { "type": "string", "description": "Use this argument to specify one or more lines that should be ignored during the diff. This is used for lines in the configuration that are automatically updated by the system. This argument takes a list of regular expressions or exact line matches." }, "running_config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "save_when": { "type": "string", "description": "Default: never\n\nWhen changes are made to the device running-configuration, the changes are not copied to non-volatile storage by default. Using this argument will change that before. If the argument is set to I(always), then the running-config will always be copied to the startup-config and the I(modified) flag will always be set to True. If the argument is set to I(modified), then the running-config will only be copied to the startup-config if it has changed since the last save to startup-config. If the argument is set to I(never), the running-config will never be copied to the startup-config. If the argument is set to I(changed), then the running-config will only be copied to the startup-config if the task has made a change." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "oneandone_server": { "required": [ "auth_token", "fixed_instance_size" ], "type": "object", "description": "Create, destroy, update, start, stop, and reboot a 1&1 Host server. When the server is created it can optionally wait for it to be 'running' before returning.", "properties": { "vcore": { "type": "string", "description": "The total number of processors. It must be provided with cores_per_processor, ram, and hdds parameters." }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1. Overrides the ONEANDONE_AUTH_TOKEN environement variable." }, "ram": { "type": "string", "description": "The amount of RAM memory. It must be provided with with vcore, cores_per_processor, and hdds parameters." }, "private_network": { "type": "string", "description": "The private network name or ID." }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." }, "hdds": { "type": "string", "description": "A list of hard disks with nested \"size\" and \"is_main\" properties. It must be provided with vcore, cores_per_processor, and ram parameters." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the wait_for methods" }, "hostname": { "type": "string", "description": "The hostname or ID of the server. Only used when state is 'present'." }, "state": { "type": "string", "description": "Default: present\n\nDefine a server's state to create, remove, start or stop it." }, "fixed_instance_size": { "type": "string", "description": "The instance size name or ID of the server. It is required only for 'present' state, and it is mutually exclusive with vcore, cores_per_processor, ram, and hdds parameters." }, "load_balancer": { "type": "string", "description": "The load balancer name or ID." }, "description": { "type": "string", "description": "The description of the server." }, "server_type": { "type": "string", "description": "Default: cloud\n\nThe type of server to be built." }, "auto_increment": { "type": "string", "description": "Default: yes\n\nWhen creating multiple servers at once, whether to differentiate hostnames by appending a count after them or substituting the count where there is a %02d or %03d in the hostname string." }, "ssh_key": { "type": "string", "description": "Default: None\n\nUser's public SSH key (contents, not path)." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "monitoring_policy": { "type": "string", "description": "The monitoring policy name or ID." }, "wait": { "type": "string", "description": "Default: yes\n\nWait for the server to be in state 'running' before returning. Also used for delete operation (set to 'false' if you don't want to wait for each individual server to be deleted before moving on with other tasks.)" }, "count": { "type": "string", "description": "Default: 1\n\nThe number of servers to create." }, "datacenter": { "type": "string", "description": "Default: US\n\nThe datacenter location." }, "firewall_policy": { "type": "string", "description": "The firewall policy name or ID." }, "cores_per_processor": { "type": "string", "description": "The number of cores per processor. It must be provided with vcore, ram, and hdds parameters." }, "appliance": { "type": "string", "description": "The operating system name or ID for the server. It is required only for 'present' state." }, "server": { "type": "string", "description": "Server identifier (ID or hostname). It is required for all states except 'running' and 'present'." } } }, "ce_netstream_aging": { "type": "object", "description": "Manages timeout mode of NetStream on HUAWEI CloudEngine switches.", "properties": { "timeout_type": { "type": "string", "description": "Netstream timeout type." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "type": { "type": "string", "description": "Specifies the packet type of netstream timeout active interval." }, "manual_slot": { "type": "string", "description": "Specifies the slot number of netstream manual timeout." }, "timeout_interval": { "type": "string", "description": "Default: 30\n\nNetstream timeout interval. If is active type the interval is 1-60. If is inactive ,the interval is 5-600." } } }, "aws_elasticbeanstalk_app": { "allOf": [ { "allOf": [ { "not": { "required": [ "app_name", "name" ], "type": "object" } } ] } ], "type": "object", "description": "creates, updates, deletes beanstalk applications if app_name is provided", "properties": { "state": { "type": "string", "description": "Default: present\n\nwhether to ensure the application is present or absent" }, "app_name": { "type": "string", "description": "name of the beanstalk application you wish to manage" }, "description": { "type": "string", "description": "the description of the application" }, "name": { "type": "string", "description": "name of the beanstalk application you wish to manage" }, "terminate_by_force": { "type": "string", "description": "when set to true, running environments will be terminated before deleting the application" } } }, "bigip_node": { "allOf": [ { "allOf": [ { "not": { "required": [ "host", "address", "ip" ], "type": "object" } }, { "oneOf": [ { "required": [ "host" ], "type": "object" }, { "required": [ "address" ], "type": "object" }, { "required": [ "ip" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages F5 BIG-IP LTM nodes via iControl SOAP API", "properties": { "ip": { "type": "string", "description": "Node IP. Required when state=present and node does not exist. Error when state=absent." }, "session_state": { "type": "string", "description": "Set new session availability status for node" }, "name": { "type": "string", "description": "Node name" }, "monitor_state": { "type": "string", "description": "Set monitor availability status for node" }, "description": { "type": "string", "description": "Node description." }, "partition": { "type": "string", "description": "Default: Common\n\nPartition" }, "host": { "type": "string", "description": "Node IP. Required when state=present and node does not exist. Error when state=absent." }, "monitors": { "type": "string", "description": "Monitor template name list. Always use the full path to the monitor." }, "state": { "type": "string", "description": "Default: present\n\nPool member state" }, "address": { "type": "string", "description": "Node IP. Required when state=present and node does not exist. Error when state=absent." }, "monitor_type": { "type": "string", "description": "Monitor rule type when monitors > 1" }, "quorum": { "type": "string", "description": "Monitor quorum value when monitor_type is m_of_n" } } }, "fmgr_script": { "required": [ "username", "adom", "host", "script_name" ], "type": "object", "description": "Create/edit/delete scripts and execute the scripts on the FortiManager using jsonrpc API", "properties": { "username": { "type": "string", "description": "The username to log into the FortiManager" }, "script_content": { "type": "string", "description": "The script content that will be executed." }, "adom": { "type": "string", "description": "The administrative domain (admon) the configuration belongs to" }, "script_scope": { "type": "string", "description": "(datasource) The devices that the script will run on, can have both device member and device group member." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the specified object.\npresent - will create a script.\nexecute - execute the scipt.\ndelete - delete the script." }, "script_name": { "type": "string", "description": "The name of the script." }, "host": { "type": "string", "description": "The FortiManager's Address." }, "script_target": { "type": "string", "description": "The target of the script to be run." }, "script_description": { "type": "string", "description": "The description of the script." }, "script_package": { "type": "string", "description": "(datasource) Policy package object to run the script against" }, "password": { "type": "string", "description": "The password associated with the username account." }, "vdom": { "type": "string", "description": "The virtual domain (vdom) the configuration belongs to" }, "script_type": { "type": "string", "description": "The type of script (CLI or TCL)." } } }, "manageiq_provider": { "allOf": [ { "allOf": [ { "not": { "required": [ "azure_tenant_id", "keystone_v3_domain_id" ], "type": "object" } } ] } ], "type": "object", "description": "The manageiq_provider module supports adding, updating, and deleting provider in ManageIQ.", "properties": { "ssh_keypair": { "type": "string", "description": "SSH key pair used for SSH connections to all hosts in this provider." }, "name": { "type": "string", "description": "The provider's name." }, "zone": { "type": "string", "description": "Default: default\n\nThe ManageIQ zone name that will manage the provider." }, "host_default_vnc_port_end": { "type": "string", "description": "The last port in the host VNC range. defaults to None." }, "project": { "type": "string", "description": "Google Compute Engine Project ID. defaults to None." }, "alerts": { "type": "string", "description": "Alerts endpoint connection information." }, "provider": { "type": "string", "description": "Default endpoint connection information, required if state is true." }, "host_default_vnc_port_start": { "type": "string", "description": "The first port in the host VNC range. defaults to None." }, "tenant_mapping_enabled": { "type": "string", "description": "Whether to enable mapping of existing tenants. defaults to False." }, "metrics": { "type": "string", "description": "Metrics endpoint connection information." }, "state": { "type": "string", "description": "Default: present\n\nabsent - provider should not exist, present - provider should be present." }, "api_version": { "type": "string", "description": "The OpenStack Keystone API version. defaults to None." }, "azure_tenant_id": { "type": "string", "description": "Tenant ID. defaults to None." }, "provider_region": { "type": "string", "description": "The provider region name to connect to (e.g. AWS region for Amazon)." }, "type": { "type": "string", "description": "The provider's type." }, "keystone_v3_domain_id": { "type": "string", "description": "Tenant ID. defaults to None." }, "subscription": { "type": "string", "description": "Microsoft Azure subscription ID. defaults to None." } } }, "dpkg_selections": { "required": [ "selection", "name" ], "type": "object", "description": "Change dpkg package selection state via --get-selections and --set-selections.", "properties": { "selection": { "type": "string", "description": "The selection state to set the package to." }, "name": { "type": "string", "description": "Name of the package" } } }, "aws_region_facts": { "type": "object", "description": "Gather facts about AWS regions.", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRegions.html) for possible filters. Filter names and values are case sensitive. You can also use underscores instead of dashes (-) in the filter keys, which will take precedence in case of conflict." } } }, "ec2_asg": { "required": [ "launch_config_name", "name" ], "type": "object", "description": "Can create or delete AWS Autoscaling Groups\nWorks with the ec2_lc module to manage Launch Configurations", "properties": { "suspend_processes": { "type": "string", "description": "A list of scaling processes to suspend." }, "default_cooldown": { "type": "string", "description": "Default: 300 seconds\n\nThe number of seconds after a scaling activity completes before another can begin." }, "health_check_period": { "type": "string", "description": "Default: 500 seconds\n\nLength of time in seconds after a new EC2 instance comes into service that Auto Scaling starts checking its health." }, "lc_check": { "type": "string", "description": "Default: True\n\nCheck to make sure instances that are being replaced with replace_instances do not already have the current launch_config." }, "availability_zones": { "type": "array", "description": "List of availability zone names in which to create the group. Defaults to all the availability zones in the region if vpc_zone_identifier is not set." }, "replace_batch_size": { "type": "string", "description": "Default: 1\n\nNumber of instances you'd like to replace at a time. Used with replace_all_instances." }, "target_group_arns": { "type": "array", "description": "List of target group ARNs to use for the group. Use for application load balancers." }, "replace_instances": { "type": "array", "description": "Default: None\n\nList of instance_ids belonging to the named ASG that you would like to terminate and be replaced with instances matching the current launch configuration." }, "desired_capacity": { "type": "string", "description": "Desired number of instances in group, if unspecified then the current group value will be used." }, "state": { "type": "string", "description": "Default: present\n\nregister or deregister the instance" }, "health_check_type": { "type": "string", "description": "Default: EC2\n\nThe service you want the health status from, Amazon EC2 or Elastic Load Balancer." }, "launch_config_name": { "type": "string", "description": "Name of the Launch configuration to use for the group. See the ec2_lc module for managing these. If unspecified then the current group value will be used." }, "placement_group": { "type": "string", "description": "Default: None\n\nPhysical location of your cluster placement group created in Amazon EC2." }, "tags": { "type": "string", "description": "Default: None\n\nA list of tags to add to the Auto Scale Group. Optional key is 'propagate_at_launch', which defaults to true." }, "min_size": { "type": "string", "description": "Minimum number of instances in group, if unspecified then the current group value will be used." }, "vpc_zone_identifier": { "type": "array", "description": "Default: None\n\nList of VPC subnets to use" }, "load_balancers": { "type": "array", "description": "List of ELB names to use for the group. Use for classic load balancers." }, "max_size": { "type": "string", "description": "Maximum number of instances in group, if unspecified then the current group value will be used." }, "name": { "type": "string", "description": "Unique name for group to be created or deleted" }, "replace_all_instances": { "type": "string", "description": "In a rolling fashion, replace all instances with an old launch configuration with one from the current launch configuration." }, "termination_policies": { "type": "string", "description": "Default: Default\n\nAn ordered list of criteria used for selecting instances to be removed from the Auto Scaling group when reducing capacity.\nFor 'Default', when used to create a new autoscaling group, the \"Default\"i value is used. When used to change an existent autoscaling group, the current termination policies are maintained." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait instances to become viable when replaced. Used in conjunction with instance_ids option." }, "notification_topic": { "type": "string", "description": "Default: None\n\nA SNS topic ARN to send auto scaling notifications to." }, "notification_types": { "type": "string", "description": "Default: ['autoscaling:EC2_INSTANCE_LAUNCH', 'autoscaling:EC2_INSTANCE_LAUNCH_ERROR', 'autoscaling:EC2_INSTANCE_TERMINATE', 'autoscaling:EC2_INSTANCE_TERMINATE_ERROR']\n\nA list of auto scaling events to trigger notifications on." }, "wait_for_instances": { "type": "string", "description": "Default: True\n\nWait for the ASG instances to be in a ready state before exiting. If instances are behind an ELB, it will wait until the ELB determines all instances have a lifecycle_state of \"InService\" and a health_status of \"Healthy\"." } } }, "panos_admpwd": { "required": [ "newpassword", "key_filename", "ip_address" ], "type": "object", "description": "Change the admin password of PAN-OS via SSH using a SSH key for authentication.\nUseful for AWS instances where the first login should be done via SSH.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for initial authentication" }, "newpassword": { "type": "string", "description": "password to configure for admin on the PAN-OS device" }, "key_filename": { "type": "string", "description": "filename of the SSH Key to use for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "avi_poolgroup": { "required": [ "name" ], "type": "object", "description": "This module is used to configure PoolGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "priority_labels_ref": { "type": "string", "description": "Uuid of the priority labels.\nIf not provided, pool group member priority label will be interpreted as a number with a larger number considered higher priority.\nIt is a reference to an object of type prioritylabels." }, "description": { "type": "string", "description": "Description of pool group." }, "implicit_priority_labels": { "description": "Whether an implicit set of priority labels is generated.\nField introduced in 17.1.9,17.2.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "min_servers": { "type": "string", "description": "The minimum number of servers to distribute traffic to.\nAllowed values are 1-65535.\nSpecial values are 0 - 'disable'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "uuid": { "type": "string", "description": "Uuid of the pool group." }, "created_by": { "type": "string", "description": "Name of the user who created the object." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "cloud_config_cksum": { "type": "string", "description": "Checksum of cloud configuration for poolgroup.\nInternally set by cloud connector." }, "members": { "type": "array", "description": "List of pool group members object of type poolgroupmember." }, "fail_action": { "type": "string", "description": "Enable an action - close connection, http redirect, or local http response - when a pool group failure happens.\nBy default, a connection will be closed, in case the pool group experiences a failure." }, "deployment_policy_ref": { "type": "string", "description": "When setup autoscale manager will automatically promote new pools into production when deployment goals are met.\nIt is a reference to an object of type poolgroupdeploymentpolicy." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "The name of the pool group." } } }, "azure_rm_dnsrecordset": { "required": [ "resource_group", "record_type", "relative_name", "zone_name" ], "type": "object", "description": "Creates, deletes, and updates DNS records sets and records within an existing Azure DNS Zone.", "properties": { "resource_group": { "type": "string", "description": "name of resource group" }, "records": { "type": "array", "description": "list of records to be created depending on the type of record (set)" }, "record_mode": { "type": "string", "description": "Default: purge\n\nwhether existing record values not sent to the module should be purged" }, "time_to_live": { "type": "string", "description": "Default: 3600\n\ntime to live of the record set in seconds" }, "relative_name": { "type": "string", "description": "relative name of the record set" }, "record_type": { "type": "string", "description": "the type of record set to create or delete" }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the record set. Use C(present) to create or update and C(absent) to delete." }, "zone_name": { "type": "string", "description": "name of the existing DNS zone in which to manage the record set" } } }, "subversion": { "allOf": [ { "allOf": [ { "not": { "required": [ "repo", "name", "repository" ], "type": "object" } }, { "oneOf": [ { "required": [ "repo" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "repository" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "revision", "version" ], "type": "object" } } ] } ], "type": "object", "description": "Deploy given repository URL / revision to dest. If dest exists, update to the specified revision, otherwise perform a checkout.", "properties": { "username": { "type": "string", "description": "--username parameter passed to svn." }, "executable": { "type": "string", "description": "Path to svn executable to use. If not supplied, the normal mechanism for resolving binary paths will be used." }, "force": { "type": "string", "description": "Default: no\n\nIf C(yes), modified files will be discarded. If C(no), module will fail if it encounters modified files. Prior to 1.9 the default was `yes`." }, "name": { "type": "string", "description": "The subversion URL to the repository." }, "repository": { "type": "string", "description": "The subversion URL to the repository." }, "dest": { "type": "string", "description": "Absolute path where the repository should be deployed." }, "update": { "type": "string", "description": "Default: yes\n\nIf no, do not retrieve new revisions from the origin repository" }, "repo": { "type": "string", "description": "The subversion URL to the repository." }, "switch": { "type": "string", "description": "Default: yes\n\nIf C(no), do not call svn switch before update." }, "version": { "type": "string", "description": "Default: HEAD\n\nSpecific revision to checkout." }, "export": { "type": "string", "description": "Default: no\n\nIf C(yes), do export instead of checkout/update." }, "password": { "type": "string", "description": "--password parameter passed to svn." }, "checkout": { "type": "string", "description": "Default: yes\n\nIf no, do not check out the repository if it does not exist locally" }, "revision": { "type": "string", "description": "Default: HEAD\n\nSpecific revision to checkout." } } }, "panos_nat_rule": { "required": [ "rule_name", "password", "ip_address", "source_zone", "destination_zone" ], "type": "object", "description": "Create a policy nat rule. Keep in mind that we can either end up configuring source NAT, destination NAT, or both. Instead of splitting it into two we will make a fair attempt to determine which one the user wants.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for auth unless I(api_key) is set." }, "dnat_address": { "type": "string", "description": "Default: None\n\ndnat translated address" }, "destination_ip": { "type": "array", "description": "Default: ['any']\n\nlist of destination addresses" }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "snat_type": { "type": "string", "description": "Default: None\n\ntype of source translation" }, "service": { "type": "string", "description": "Default: any\n\nservice" }, "snat_static_address": { "type": "string", "description": "Default: None\n\nSource NAT translated address. Used with Static-IP translation." }, "source_ip": { "type": "array", "description": "Default: ['any']\n\nlist of source addresses" }, "source_zone": { "type": "array", "description": "list of source zones" }, "dnat_port": { "type": "string", "description": "Default: None\n\ndnat translated port" }, "snat_bidirectional": { "type": "string", "description": "Default: false\n\nbidirectional flag" }, "snat_interface_address": { "type": "string", "description": "Default: None\n\nsnat interface address" }, "rule_name": { "type": "string", "description": "name of the SNAT rule" }, "snat_dynamic_address": { "type": "string", "description": "Default: None\n\nSource NAT translated address. Used with Dynamic-IP and Dynamic-IP-and-Port." }, "snat_address_type": { "type": "string", "description": "Default: translated-address\n\ntype of source translation. Supported values are I(translated-address)/I(translated-address)." }, "commit": { "type": "string", "description": "Default: True\n\nCommit configuration if changed." }, "operation": { "type": "string", "description": "The action to be taken. Supported values are I(add)/I(update)/I(find)/I(delete)." }, "password": { "type": "string", "description": "Password credentials to use for auth unless I(api_key) is set." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." }, "snat_interface": { "type": "string", "description": "Default: None\n\nsnat interface" }, "destination_zone": { "type": "string", "description": "destination zone" } } }, "junos_config": { "type": "object", "description": "This module provides an implementation for working with the active configuration running on Juniper JUNOS devices. It provides a set of arguments for loading configuration, performing rollback operations and zeroing the active configuration on the device.", "properties": { "comment": { "type": "string", "description": "Default: configured by junos_config\n\nThe C(comment) argument specifies a text string to be used when committing the configuration. If the C(confirm) argument is set to False, this argument is silently ignored." }, "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration file to load into the remote system. The path can either be a full system path to the configuration file if the value starts with / or relative to the root of the implemented role or playbook. This argument is mutually exclusive with the I(lines) argument." }, "rollback": { "type": "string", "description": "The C(rollback) argument instructs the module to rollback the current configuration to the identifier specified in the argument. If the specified rollback identifier does not exist on the remote device, the module will fail. To rollback to the most recent commit, set the C(rollback) argument to 0." }, "confirm": { "type": "string", "description": "The C(confirm) argument will configure a time out value for the commit to be confirmed before it is automatically rolled back. If the C(confirm) argument is set to False, this argument is silently ignored. If the value for this argument is set to 0, the commit is confirmed immediately." }, "lines": { "type": "string", "description": "This argument takes a list of C(set) or C(delete) configuration lines to push into the remote device. Each line must start with either C(set) or C(delete). This argument is mutually exclusive with the I(src) argument." }, "update": { "type": "string", "description": "Default: merge\n\nThis argument will decide how to load the configuration data particulary when the candidate configuration and loaded configuration contain conflicting statements. Following are accepted values. C(merge) combines the data in the loaded configuration with the candidate configuration. If statements in the loaded configuration conflict with statements in the candidate configuration, the loaded statements replace the candidate ones. C(override) discards the entire candidate configuration and replaces it with the loaded configuration. C(replace) substitutes each hierarchy level in the loaded configuration for the corresponding level." }, "replace": { "type": "string", "description": "The C(replace) argument will instruct the remote device to replace the current configuration hierarchy with the one specified in the corresponding hierarchy of the source configuration loaded from this module.\nNote this argument should be considered deprecated. To achieve the equivalent, set the I(update) argument to C(replace). This argument will be removed in a future release. The C(replace) and C(update) argument is mutually exclusive." }, "confirm_commit": { "type": "string", "description": "This argument will execute commit operation on remote device. It can be used to confirm a previous commit." }, "zeroize": { "type": "string", "description": "The C(zeroize) argument is used to completely sanitize the remote device configuration back to initial defaults. This argument will effectively remove all current configuration statements on the remote device." }, "src_format": { "type": "string", "description": "The I(src_format) argument specifies the format of the configuration found int I(src). If the I(src_format) argument is not provided, the module will attempt to determine the format of the configuration file specified in I(src)." }, "backup": { "description": "Default: no\n\nThis argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory or role root directory, if playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" } } }, "aci_fabric_node": { "allOf": [ { "allOf": [ { "not": { "required": [ "role", "role_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "serial", "serial_number" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "switch", "name", "switch_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage Fabric Node Members on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "Description for the new Fabric Node Member." }, "descr": { "type": "string", "description": "Description for the new Fabric Node Member." }, "switch": { "type": "string", "description": "Switch Name for the new Fabric Node Member." }, "pod_id": { "type": "string", "description": "The pod id of the new Fabric Node Member." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "role_name": { "type": "string", "description": "Role for the new Fabric Node Member." }, "role": { "type": "string", "description": "Role for the new Fabric Node Member." }, "serial_number": { "type": "string", "description": "Serial Number for the new Fabric Node Member." }, "serial": { "type": "string", "description": "Serial Number for the new Fabric Node Member." }, "switch_name": { "type": "string", "description": "Switch Name for the new Fabric Node Member." }, "node_id": { "type": "string", "description": "Node ID Number for the new Fabric Node Member." }, "name": { "type": "string", "description": "Switch Name for the new Fabric Node Member." } } }, "mattermost": { "required": [ "url", "text", "api_key" ], "type": "object", "description": "Sends notifications to U(http://your.mattermost.url) via the Incoming WebHook integration.", "properties": { "username": { "type": "string", "description": "Default: Ansible\n\nThis is the sender of the message (Username Override need to be enabled by mattermost admin, see mattermost doc." }, "url": { "type": "string", "description": "Mattermost url (i.e. http://mattermost.yourcompany.com)." }, "icon_url": { "type": "string", "description": "Default: https://www.ansible.com/favicon.ico\n\nUrl for the message sender's icon." }, "text": { "type": "string", "description": "Text to send. Note that the module does not handle escaping characters." }, "api_key": { "type": "string", "description": "Mattermost webhook api key. Log into your mattermost site, go to Menu -> Integration -> Incoming Webhook -> Add Incoming Webhook. This will give you full URL. api_key is the last part. http://mattermost.example.com/hooks/C(API_KEY)" }, "validate_certs": { "type": "string", "description": "Default: True\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "channel": { "type": "string", "description": "Channel to send the message to. If absent, the message goes to the channel selected for the I(api_key)." } } }, "panos_loadcfg": { "required": [ "password", "ip_address" ], "type": "object", "description": "Load configuration on PAN-OS device", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "file": { "type": "string", "description": "Default: None\n\nconfiguration file to load" } } }, "aci_filter": { "allOf": [ { "allOf": [ { "not": { "required": [ "filter", "filter_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "filter" ], "type": "object" }, { "required": [ "filter_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages top level filter objects on Cisco ACI fabrics.\nThis modules does not manage filter entries, see M(aci_filter_entry) for this functionality.", "properties": { "description": { "type": "string", "description": "Description for the filter." }, "descr": { "type": "string", "description": "Description for the filter." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "filter": { "type": "string", "description": "The name of the filter." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "filter_name": { "type": "string", "description": "The name of the filter." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "name": { "type": "string", "description": "The name of the filter." } } }, "nxos_pim": { "required": [ "ssm_range" ], "type": "object", "description": "Manages configuration of a Protocol Independent Multicast (PIM) instance.", "properties": { "ssm_range": { "type": "string", "description": "Configure group ranges for Source Specific Multicast (SSM). Valid values are multicast addresses or the keyword C(none) or keyword C(default). C(none) removes all SSM group ranges. C(default) will set ssm_range to the default multicast address. If you set multicast address, please ensure that it is not the same as the C(default), otherwise use the C(default) option." } } }, "ops_template": { "required": [ "src" ], "type": "object", "description": "The OpenSwitch platform provides a library for pushing JSON structured configuration files into the current running-config. This module will read the current configuration from OpenSwitch and compare it against a provided candidate configuration. If there are changes, the candidate configuration is merged with the current configuration and pushed into OpenSwitch", "properties": { "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will search for the source file in role or playbook root folder in templates directory." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the running-config from the node prior to making any changes. The backup file will be written to backups/ in the root of the playbook directory." } } }, "tower_host": { "required": [ "name", "inventory" ], "type": "object", "description": "Create, update, or destroy Ansible Tower hosts. See U(https://www.ansible.com/tower) for an overview.", "properties": { "name": { "type": "string", "description": "The name to use for the host." }, "variables": { "type": "string", "description": "Variables to use for the host. Use '@' for a file." }, "enabled": { "type": "string", "description": "Default: True\n\nIf the host should be enabled." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "inventory": { "type": "string", "description": "Inventory the host should be made a member of." }, "description": { "type": "string", "description": "The description to use for the host." } } }, "nxos_smu": { "required": [ "pkg" ], "type": "object", "description": "Perform software maintenance upgrades (SMUs) on Cisco NX-OS devices.", "properties": { "pkg": { "type": "string", "description": "Name of the remote package." }, "file_system": { "type": "string", "description": "The remote file system of the device. If omitted, devices that support a file_system parameter will use their default values." } } }, "os_ironic_inspect": { "type": "object", "description": "Requests Ironic to set a node into inspect state in order to collect metadata regarding the node. This command may be out of band or in-band depending on the ironic driver configuration. This is only possible on nodes in 'manageable' and 'available' state.", "properties": { "mac": { "type": "string", "description": "Default: None\n\nunique mac address that is used to attempt to identify the host." }, "ironic_url": { "type": "string", "description": "Default: None\n\nIf noauth mode is utilized, this is required to be set to the endpoint URL for the Ironic API. Use with \"auth\" and \"auth_type\" settings set to None." }, "name": { "type": "string", "description": "Default: None\n\nunique name identifier to identify the host in Ironic." }, "timeout": { "type": "string", "description": "Default: 1200\n\nA timeout in seconds to tell the role to wait for the node to complete introspection if wait is set to True." }, "uuid": { "type": "string", "description": "Default: None\n\nglobally unique identifier (UUID) to identify the host." } } }, "ec2_instance_facts": { "type": "object", "description": "Gather facts about ec2 instances in AWS", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html) for possible filters. Filter names and values are case sensitive." }, "instance_ids": { "type": "string", "description": "If you specify one or more instance IDs, only instances that have the specified IDs are returned." } } }, "aci_tenant": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "name", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage tenants on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "Description for the tenant." }, "descr": { "type": "string", "description": "Description for the tenant." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "name": { "type": "string", "description": "The name of the tenant." } } }, "dellos6_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Dell OS6 configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with Dell OS6 configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root dir. This argument is mutually exclusive with I(lines)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser. This argument is mutually exclusive with I(src)." }, "update": { "type": "string", "description": "Default: merge\n\nThe I(update) argument controls how the configuration statements are processed on the remote device. Valid choices for the I(update) argument are I(merge) and I(check). When the argument is set to I(merge), the configuration changes are merged with the current device running configuration. When the argument is set to I(check) the configuration updates are determined but not actually configured on the remote device." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "os_security_group": { "required": [ "name" ], "type": "object", "description": "Add or Remove security groups from an OpenStack cloud.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "description": { "type": "string", "description": "Default: None\n\nLong description of the purpose of the security group" }, "name": { "type": "string", "description": "Name that has to be given to the security group. This module requires that security group names be unique." } } }, "iosxr_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Cisco IOS XR configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with IOS XR configuration sections in a deterministic way.", "properties": { "comment": { "type": "string", "description": "Default: configured by iosxr_config\n\nAllows a commit description to be specified to be included when the configuration is committed. If the configuration is not changed or committed, this argument is ignored." }, "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in a future release." }, "admin": { "type": "string", "description": "Enters into administration configuration mode for making config changes to the device." }, "backup": { "description": "Default: no\n\nThis argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory or role root directory, if playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "bigip_security_address_list": { "required": [ "name" ], "type": "object", "description": "Manages the AFM address lists on a BIG-IP. This module can be used to add and remove address list entries.", "properties": { "geo_locations": { "type": "array", "description": "List of geolocations specified by their C(country) and C(region)." }, "addresses": { "type": "string", "description": "Individual addresses that you want to add to the list. These addresses differ from ranges, and lists of lists such as what can be used in C(address_ranges) and C(address_lists) respectively." }, "address_lists": { "type": "string", "description": "Simple list of existing address lists to add to this list. Address lists can be specified in either their fully qualified name (/Common/foo) or their short name (foo). If a short name is used, the C(partition) argument will automatically be prepended to the short name." }, "description": { "type": "string", "description": "Description of the address list" }, "address_ranges": { "type": "string", "description": "A list of address ranges where the range starts with a port number, is followed by a dash (-) and then a second number.\nIf the first address is greater than the second number, the numbers will be reversed so-as to be properly formatted. ie, C(2.2.2.2-1.1.1). would become C(1.1.1.1-2.2.2.2)." }, "fqdns": { "type": "string", "description": "A list of fully qualified domain names (FQDNs).\nAn FQDN has at least one decimal point in it, separating the host from the domain.\nTo add FQDNs to a list requires that a global FQDN resolver be configured. At the moment, this must either be done via C(bigip_command), or, in the GUI of BIG-IP. If using C(bigip_command), this can be done with C(tmsh modify security firewall global-fqdn-policy FOO) where C(FOO) is a DNS resolver configured at C(tmsh create net dns-resolver FOO)." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the address list and entries exists.\nWhen C(absent), ensures the address list is removed." }, "name": { "type": "string", "description": "Specifies the name of the address list." } } }, "vmware_guest_tools_wait": { "type": "object", "description": "Wait for VMware tools to become available on the VM and return facts.", "properties": { "folder": { "type": "string", "description": "Default: /vm\n\nDestination folder, absolute or relative path to find an existing guest.\nThis is required if C(name) is supplied.\nThe folder should include the datacenter. ESX's datacenter is C(ha-datacenter).\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2" }, "uuid": { "type": "string", "description": "UUID of the VM for which to wait until the tools become available, if known. This is VMware's unique identifier.\nThis is required if C(name) is not supplied." }, "name": { "type": "string", "description": "Name of the VM for which to wait until the tools become available.\nThis is required if uuid is not supplied." }, "name_match": { "type": "string", "description": "Default: first\n\nIf multiple VMs match the name, use the first or last found." } } }, "logentries_msg": { "required": [ "msg", "token" ], "type": "object", "description": "Send a message to logentries", "properties": { "msg": { "type": "string", "description": "The message body." }, "token": { "type": "string", "description": "Log token." }, "api": { "type": "string", "description": "Default: data.logentries.com\n\nAPI endpoint" }, "port": { "type": "string", "description": "Default: 80\n\nAPI endpoint port" } } }, "nosh": { "required": [ "name" ], "type": "object", "description": "Control running and enabled state for system-wide or user services.\nBSD and Linux systems are supported.", "properties": { "state": { "type": "string", "description": "C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the service. C(reloaded) will send a SIGHUP or start the service. C(reset) will start or stop the service according to whether it is enabled or not." }, "preset": { "type": "string", "description": "Enable or disable the service according to local preferences in *.preset files. Mutually exclusive with I(enabled). Only has an effect if set to true. Will take effect prior to I(state=reset)." }, "enabled": { "type": "string", "description": "Enable or disable the service, independently of C(*.preset) file preference or running state. Mutually exclusive with I(preset). Will take effect prior to I(state=reset)." }, "name": { "type": "string", "description": "Name of the service to manage." }, "user": { "type": "string", "description": "Default: no\n\nRun system-control talking to the calling user's service manager, rather than the system-wide service manager." } } }, "win_chocolatey": { "required": [ "name" ], "type": "object", "description": "Installs packages using Chocolatey (http://chocolatey.org/). If Chocolatey is missing from the system, the module will install it. List of packages can be found at http://chocolatey.org/packages", "properties": { "upgrade": { "type": "string", "description": "If package is already installed it, try to upgrade to the latest version or to the specified version" }, "force": { "type": "string", "description": "Forces install of the package (even if it already exists). Using Force will cause ansible to always report that a change was made" }, "name": { "type": "string", "description": "Name of the package to be installed" }, "ignore_checksums": { "type": "string", "description": "Ignore Checksums" }, "allow_empty_checksums": { "type": "string", "description": "Allow empty Checksums to be used" }, "install_args": { "type": "string", "description": "Arguments to pass to the native installer" }, "source": { "type": "string", "description": "Specify source rather than using default chocolatey repository" }, "state": { "type": "string", "description": "Default: present\n\nState of the package on the system" }, "version": { "type": "string", "description": "Specific version of the package to be installed\nIgnored when state == 'absent'" }, "params": { "type": "string", "description": "Parameters to pass to the package" }, "ignore_dependencies": { "type": "string", "description": "Ignore dependencies, only install/upgrade the package itself" } } }, "win_share": { "required": [ "name", "path" ], "type": "object", "description": "Add, modify or remove Windows share and set share permissions.", "properties": { "deny": { "type": "string", "description": "Specify user list that should get no access, regardless of implied access on share, separated by comma." }, "full": { "type": "string", "description": "Specify user list that should get full access on share, separated by comma." }, "encrypt": { "description": "Default: no\n\nSets whether to encrypt the traffic to the share or not.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Share name." }, "read": { "type": "string", "description": "Specify user list that should get read access on share, separated by comma." }, "list": { "description": "Default: no\n\nSpecify whether to allow or deny file listing, in case user got no permission on share.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nSpecify whether to add C(present) or remove C(absent) the specified share." }, "caching_mode": { "type": "string", "description": "Default: Manual\n\nSet the CachingMode for this share." }, "path": { "type": "string", "description": "Share directory." }, "change": { "type": "string", "description": "Specify user list that should get read and write access on share, separated by comma." }, "description": { "type": "string", "description": "Share description" } } }, "nxos_bgp": { "required": [ "asn" ], "type": "object", "description": "Manages BGP configurations on NX-OS switches.", "properties": { "neighbor_down_fib_accelerate": { "type": "string", "description": "Enable/Disable handle BGP neighbor down event, due to various reasons." }, "confederation_peers": { "type": "string", "description": "AS confederation parameters." }, "confederation_id": { "type": "string", "description": "Routing domain confederation AS." }, "graceful_restart_helper": { "type": "string", "description": "Enable/Disable graceful restart helper mode." }, "bestpath_always_compare_med": { "type": "string", "description": "Enable/Disable MED comparison on paths from different autonomous systems." }, "cluster_id": { "type": "string", "description": "Route Reflector Cluster-ID." }, "shutdown": { "type": "string", "description": "Administratively shutdown the BGP protocol." }, "timer_bgp_hold": { "type": "string", "description": "Set BGP hold timer." }, "bestpath_aspath_multipath_relax": { "type": "string", "description": "Enable/Disable load sharing across the providers with different (but equal-length) AS paths." }, "graceful_restart_timers_stalepath_time": { "type": "string", "description": "Set maximum time that BGP keeps the stale routes from the restarting BGP peer." }, "maxas_limit": { "type": "string", "description": "Specify Maximum number of AS numbers allowed in the AS-path attribute. Valid values are between 1 and 512." }, "bestpath_med_confed": { "type": "string", "description": "Enable/Disable enforcement of bestpath to do a MED comparison only between paths originated within a confederation." }, "isolate": { "type": "string", "description": "Enable/Disable isolate this router from BGP perspective." }, "timer_bgp_keepalive": { "type": "string", "description": "Set BGP keepalive timer." }, "bestpath_cost_community_ignore": { "type": "string", "description": "Enable/Disable Ignores the cost community for BGP best-path calculations." }, "fast_external_fallover": { "type": "string", "description": "Enable/Disable immediately reset the session if the link to a directly connected BGP peer goes down. Only supported in the global BGP context." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "disable_policy_batching": { "type": "string", "description": "Enable/Disable the batching evaluation of prefix advertisement to all peers." }, "suppress_fib_pending": { "type": "string", "description": "Enable/Disable advertise only routes programmed in hardware to peers." }, "bestpath_med_missing_as_worst": { "type": "string", "description": "Enable/Disable assigns the value of infinity to received routes that do not carry the MED attribute, making these routes the least desirable." }, "router_id": { "type": "string", "description": "Router Identifier (ID) of the BGP router VRF instance." }, "timer_bestpath_limit": { "type": "string", "description": "Specify timeout for the first best path after a restart, in seconds." }, "bestpath_compare_neighborid": { "type": "string", "description": "Enable/Disable neighborid. Use this when more paths available than max path config." }, "local_as": { "type": "string", "description": "Local AS number to be used within a VRF instance." }, "event_history_periodic": { "type": "string", "description": "Enable/Disable periodic event history buffer." }, "disable_policy_batching_ipv4_prefix_list": { "type": "string", "description": "Enable/Disable the batching evaluation of prefix advertisements to all peers with prefix list." }, "vrf": { "type": "string", "description": "Name of the VRF. The name 'default' is a valid VRF representing the global BGP." }, "event_history_cli": { "type": "string", "description": "Enable/Disable cli event history buffer." }, "log_neighbor_changes": { "type": "string", "description": "Enable/Disable message logging for neighbor up/down event." }, "event_history_events": { "type": "string", "description": "Enable/Disable event history buffer." }, "asn": { "type": "string", "description": "BGP autonomous system number. Valid values are String, Integer in ASPLAIN or ASDOT notation." }, "disable_policy_batching_ipv6_prefix_list": { "type": "string", "description": "Enable/Disable the batching evaluation of prefix advertisements to all peers with prefix list." }, "event_history_detail": { "type": "string", "description": "Enable/Disable detail event history buffer." }, "graceful_restart": { "type": "string", "description": "Enable/Disable graceful restart." }, "flush_routes": { "type": "string", "description": "Enable/Disable flush routes in RIB upon controlled restart. On NX-OS, this property is only supported in the global BGP context." }, "enforce_first_as": { "type": "string", "description": "Enable/Disable enforces the neighbor autonomous system to be the first AS number listed in the AS path attribute for eBGP. On NX-OS, this property is only supported in the global BGP context." }, "bestpath_med_non_deterministic": { "type": "string", "description": "Enable/Disable deterministic selection of the best MED pat from among the paths from the same autonomous system." }, "reconnect_interval": { "type": "string", "description": "The BGP reconnection interval for dropped sessions. Valid values are between 1 and 60." }, "graceful_restart_timers_restart": { "type": "string", "description": "Set maximum time for a restart sent to the BGP peer." }, "bestpath_compare_routerid": { "type": "string", "description": "Enable/Disable comparison of router IDs for identical eBGP paths." } } }, "vr_ssh_key": { "required": [ "name" ], "type": "object", "description": "Create, update and remove ssh keys.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the ssh key." }, "name": { "type": "string", "description": "Name of the ssh key." }, "ssh_key": { "type": "string", "description": "SSH public key.\nRequired if C(state=present)." } } }, "cpanm": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "pkg" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "system_lib", "use_sudo" ], "type": "object" } } ] } ], "type": "object", "description": "Manage Perl library dependencies.", "properties": { "executable": { "type": "string", "description": "Override the path to the cpanm executable" }, "name": { "type": "string", "description": "The name of the Perl library to install. You may use the \"full distribution path\", e.g. MIYAGAWA/Plack-0.99_05.tar.gz" }, "installdeps": { "type": "string", "description": "Only install dependencies" }, "system_lib": { "type": "string", "description": "Use this if you want to install modules to the system perl include path. You must be root or have \"passwordless\" sudo for this to work.\nThis uses the cpanm commandline option '--sudo', which has nothing to do with ansible privilege escalation." }, "use_sudo": { "type": "string", "description": "Use this if you want to install modules to the system perl include path. You must be root or have \"passwordless\" sudo for this to work.\nThis uses the cpanm commandline option '--sudo', which has nothing to do with ansible privilege escalation." }, "mirror_only": { "type": "string", "description": "Use the mirror's index file instead of the CPAN Meta DB" }, "from_path": { "type": "string", "description": "The local directory from where to install" }, "pkg": { "type": "string", "description": "The name of the Perl library to install. You may use the \"full distribution path\", e.g. MIYAGAWA/Plack-0.99_05.tar.gz" }, "version": { "type": "string", "description": "minimum version of perl module to consider acceptable" }, "mirror": { "type": "string", "description": "Specifies the base URL for the CPAN mirror to use" }, "locallib": { "type": "string", "description": "Specify the install base to install modules" }, "notest": { "type": "string", "description": "Do not run unit tests" } } }, "aci_vlan_pool_encap_block": { "allOf": [ { "allOf": [ { "not": { "required": [ "pool_allocation_mode", "pool_mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "block_end", "end" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "block_start", "start" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "block_name", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "allocation_mode", "mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool", "pool_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage VLAN encap blocks that are assigned to VLAN pools on Cisco ACI fabrics.", "properties": { "pool_name": { "type": "string", "description": "The name of the pool that the encap block should be assigned to." }, "pool_allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources." }, "end": { "type": "string", "description": "The end of encap block." }, "description": { "type": "string", "description": "Description for the pool encap block." }, "descr": { "type": "string", "description": "Description for the pool encap block." }, "block_name": { "type": "string", "description": "The name to give to the encap block." }, "block_start": { "type": "string", "description": "The start of the encap block." }, "start": { "type": "string", "description": "The start of the encap block." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "The method used for allocating encaps to resources." }, "block_end": { "type": "string", "description": "The end of encap block." }, "allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources." }, "pool_mode": { "type": "string", "description": "The method used for allocating encaps to resources." }, "pool": { "type": "string", "description": "The name of the pool that the encap block should be assigned to." }, "name": { "type": "string", "description": "The name to give to the encap block." } } }, "os_router": { "required": [ "name" ], "type": "object", "description": "Create or Delete routers from OpenStack. Although Neutron allows routers to share the same name, this module enforces name uniqueness to be more user friendly.", "properties": { "enable_snat": { "type": "string", "description": "Default: True\n\nEnable Source NAT (SNAT) attribute." }, "network": { "type": "string", "description": "Default: None\n\nUnique name or ID of the external gateway network.\nrequired I(interfaces) or I(enable_snat) are provided." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "interfaces": { "type": "array", "description": "Default: None\n\nList of subnets to attach to the router internal interface. Default gateway associated with the subnet will be automatically attached with the router's internal interface. In order to provide an ip address different from the default gateway,parameters are passed as dictionary with keys as network name or ID(net), subnet name or ID (subnet) and the IP of port (portip) from the network. User defined portip is often required when a multiple router need to be connected to a single subnet for which the default gateway has been already used." }, "admin_state_up": { "type": "string", "description": "Default: True\n\nDesired admin state of the created or existing router." }, "project": { "type": "string", "description": "Default: None\n\nUnique name or ID of the project." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "external_fixed_ips": { "type": "string", "description": "Default: None\n\nThe IP address parameters for the external gateway network. Each is a dictionary with the subnet name or ID (subnet) and the IP address to assign on the subnet (ip). If no IP is specified, one is automatically assigned from that subnet." }, "name": { "type": "string", "description": "Name to be give to the router" } } }, "bearychat": { "required": [ "url" ], "type": "object", "description": "The M(bearychat) module sends notifications to U(https://bearychat.com) via the Incoming Robot integration.", "properties": { "url": { "type": "string", "description": "BearyChat WebHook URL. This authenticates you to the bearychat service. It looks like C(https://hook.bearychat.com/=ae2CF/incoming/e61bd5c57b164e04b11ac02e66f47f60)." }, "text": { "type": "string", "description": "Message to send." }, "markdown": { "type": "string", "description": "Default: yes\n\nIf C(yes), text will be parsed as markdown." }, "attachments": { "type": "string", "description": "Define a list of attachments. For more information, see https://github.com/bearyinnovative/bearychat-tutorial/blob/master/robots/incoming.md#attachments" }, "channel": { "type": "string", "description": "Channel to send the message to. If absent, the message goes to the default channel selected by the I(url)." } } }, "elb_instance": { "required": [ "instance_id", "state" ], "type": "object", "description": "This module de-registers or registers an AWS EC2 instance from the ELBs that it belongs to.\nReturns fact \"ec2_elbs\" which is a list of elbs attached to the instance if state=absent is passed as an argument.\nWill be marked changed when called only if there are ELBs found to operate on.", "properties": { "instance_id": { "type": "string", "description": "EC2 Instance ID" }, "state": { "type": "string", "description": "register or deregister the instance" }, "wait_timeout": { "type": "string", "description": "Number of seconds to wait for an instance to change state. If 0 then this module may return an error if a transient error occurs. If non-zero then any transient errors are ignored until the timeout is reached. Ignored when wait=no." }, "ec2_elbs": { "type": "array", "description": "Default: None\n\nList of ELB names, required for registration. The ec2_elbs fact should be used if there was a previous de-register." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to \"no\", SSL certificates will not be validated for boto versions >= 2.6.0." }, "enable_availability_zone": { "type": "string", "description": "Default: True\n\nWhether to enable the availability zone of the instance on the target ELB if the availability zone has not already been enabled. If set to no, the task will fail if the availability zone is not enabled on the ELB." }, "wait": { "type": "string", "description": "Default: True\n\nWait for instance registration or deregistration to complete successfully before returning." } } }, "redis": { "required": [ "command" ], "type": "object", "description": "Unified utility to interact with redis instances. 'slave' sets a redis instance in slave or master mode. 'flush' flushes all the instance or a specified db. 'config' (new in 1.6), ensures a configuration setting on an instance.", "properties": { "login_port": { "type": "string", "description": "Default: 6379\n\nThe port to connect to" }, "name": { "type": "string", "description": "A redis config key." }, "flush_mode": { "type": "string", "description": "Default: all\n\nType of flush (all the dbs in a redis instance or a specific one) [flush command]" }, "db": { "type": "string", "description": "The database to flush (used in db mode) [flush command]" }, "login_host": { "type": "string", "description": "Default: localhost\n\nThe host running the database" }, "login_password": { "type": "string", "description": "The password used to authenticate with (usually not used)" }, "master_host": { "type": "string", "description": "The host of the master instance [slave command]" }, "value": { "type": "string", "description": "A redis config value." }, "command": { "type": "string", "description": "The selected redis command" }, "master_port": { "type": "string", "description": "The port of the master instance [slave command]" }, "slave_mode": { "type": "string", "description": "Default: slave\n\nthe mode of the redis instance [slave command]" } } }, "cnos_conditional_command": { "required": [ "flag", "clicommand", "condition" ], "type": "object", "description": "This module allows you to modify the running configuration of a switch. It provides a way to execute a single CNOS command on a network device by evaluating the current running configuration and executing the command only if the specific settings have not been already configured. The CNOS command is passed as an argument of the method. This module functions the same as the cnos_command module. The only exception is that the following inventory variable can be specified [\"condition = \"] When this inventory variable is specified as the variable of a task, the command is executed for the network element that matches the flag string. Usually, commands are executed across a group of network devices. When there is a requirement to skip the execution of the command on one or more devices, it is recommended to use this module. This module uses SSH to manage network device configuration. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_conditional_command.html)", "properties": { "flag": { "type": "string", "description": "If a task needs to be executed, you have to set the flag the same as it is specified in the inventory for that device." }, "clicommand": { "type": "string", "description": "This specifies the CLI command as an attribute to this method. The command is passed using double quotes. The variables can be placed directly on to the CLI commands or can be invoked from the vars directory." }, "condition": { "type": "string", "description": "If you specify condition=false in the inventory file against any device, the command execution is skipped for that device." } } }, "iam_user": { "required": [ "state", "name" ], "type": "object", "description": "Manage AWS IAM users", "properties": { "purge_policy": { "type": "string", "description": "Detach policies which are not included in managed_policy list" }, "state": { "type": "string", "description": "Create or remove the IAM user" }, "managed_policy": { "type": "string", "description": "A list of managed policy ARNs or friendly names to attach to the user. To embed an inline policy, use M(iam_policy)." }, "name": { "type": "string", "description": "The name of the user to create." } } }, "ce_info_center_trap": { "type": "object", "description": "Manages information center trap configurations on HUAWEI CloudEngine switches.", "properties": { "trap_time_stamp": { "type": "string", "description": "Timestamp format of alarm information." }, "trap_buff_size": { "type": "string", "description": "Size of a trap buffer. The value is an integer ranging from 0 to 1024. The default value is 256." }, "channel_id": { "type": "string", "description": "Number of a channel. The value is an integer ranging from 0 to 9. The default value is 0." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "trap_level": { "type": "string", "description": "Trap level permitted to output." }, "trap_buff_enable": { "type": "string", "description": "Default: no_use\n\nWhether a trap buffer is enabled to output information." }, "module_name": { "type": "string", "description": "Module name of the rule. The value is a string of 1 to 31 case-insensitive characters. The default value is default. Please use lower-case letter, such as [aaa, acl, arp, bfd]." }, "trap_enable": { "type": "string", "description": "Default: no_use\n\nWhether a device is enabled to output alarms." } } }, "hponcfg": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "src" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "src" ], "type": "object" } ] } ] } ], "type": "object", "description": "This modules configures the HP iLO interface using hponcfg.", "properties": { "path": { "type": "string", "description": "The XML file as accepted by hponcfg." }, "executable": { "type": "string", "description": "Default: hponcfg\n\nPath to the hponcfg executable (`hponcfg` which uses $PATH)." }, "minfw": { "type": "string", "description": "The minimum firmware level needed." }, "verbose": { "description": "Run hponcfg in verbose mode (-v).", "$ref": "#/definitions/ansible_truth" }, "src": { "type": "string", "description": "The XML file as accepted by hponcfg." } } }, "lvol": { "type": "object", "description": "This module creates, removes or resizes logical volumes.", "properties": { "pvs": { "type": "string", "description": "Comma separated list of physical volumes (e.g. /dev/sda,/dev/sdb)." }, "force": { "description": "Default: no\n\nShrink or remove operations of volumes requires this switch. Ensures that that filesystems get never corrupted/destroyed by mistake.", "$ref": "#/definitions/ansible_truth" }, "vg": { "type": "string", "description": "The volume group this logical volume is part of." }, "lv": { "type": "string", "description": "The name of the logical volume." }, "resizefs": { "description": "Default: yes\n\nResize the underlying filesystem together with the logical volume.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nControl if the logical volume exists. If C(present) and the volume does not already exist then the C(size) option is required." }, "thinpool": { "type": "string", "description": "The thin pool volume name. When you want to create a thin provisioned volume, specify a thin pool volume name." }, "snapshot": { "type": "string", "description": "The name of the snapshot volume" }, "active": { "description": "Default: yes\n\nWhether the volume is activate and visible to the host.", "$ref": "#/definitions/ansible_truth" }, "shrink": { "description": "Default: yes\n\nShrink if current size is higher than size requested.", "$ref": "#/definitions/ansible_truth" }, "opts": { "type": "string", "description": "Free-form options to be passed to the lvcreate command." }, "size": { "type": "string", "description": "The size of the logical volume, according to lvcreate(8) --size, by default in megabytes or optionally with one of [bBsSkKmMgGtTpPeE] units; or according to lvcreate(8) --extents as a percentage of [VG|PVS|FREE]; Float values must begin with a digit. Resizing using percentage values was not supported prior to 2.1." } } }, "eos_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service on Arista EOS network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration. If value is I(present) lldp will be enabled else if it is I(absent) it will be disabled." } } }, "cl_interface": { "required": [ "name" ], "type": "object", "description": "Configures a front panel, sub-interface, SVI, management or loopback port on a Cumulus Linux switch. For bridge ports use the cl_bridge module. For bond ports use the cl_bond module. When configuring bridge related features like the \"vid\" option, please follow the guidelines for configuring \"vlan aware\" bridging. For more details review the Layer2 Interface Guide at U(http://docs.cumulusnetworks.com)", "properties": { "clagd_sys_mac": { "type": "string", "description": "Clagd system mac address. Recommended to use the range starting with 44:38:39:ff. Needs to be the same between 2 Clag switches." }, "name": { "type": "string", "description": "Name of the interface." }, "clagd_enable": { "type": "string", "description": "Enables the clagd daemon. This command should only be applied to the clag peerlink interface." }, "mstpctl_portnetwork": { "type": "string", "description": "Enables bridge assurance in vlan-aware mode." }, "speed": { "type": "string", "description": "Set speed of the swp(front panel) or management(eth0) interface. speed is in MB." }, "clagd_peer_ip": { "type": "string", "description": "IP address of the directly connected peer switch interface." }, "clagd_priority": { "type": "string", "description": "Integer that changes the role the switch has in the clag domain. The lower priority switch will assume the primary role. The number can be between 0 and 65535." }, "location": { "type": "string", "description": "Default: ['/etc/network/interfaces.d']\n\nInterface directory location" }, "mstpctl_portadminedge": { "type": "string", "description": "Enables admin edge port." }, "mtu": { "type": "string", "description": "Set MTU. Configure Jumbo Frame by setting MTU to I(9000)." }, "pvid": { "type": "string", "description": "In vlan-aware mode, defines vlan that is the untagged vlan." }, "virtual_mac": { "type": "string", "description": "Define Ethernet mac associated with Cumulus Linux VRR feature." }, "ipv6": { "type": "array", "description": "List of IPv6 addresses to configure on the interface. In the form I(X:X:X::X/YYY)." }, "vids": { "type": "string", "description": "In vlan-aware mode, lists VLANs defined under the interface." }, "addr_method": { "type": "string", "description": "Address method." }, "mstpctl_bpduguard": { "type": "string", "description": "Enables BPDU Guard on a port in vlan-aware mode." }, "alias_name": { "type": "string", "description": "Description of the port." }, "ipv4": { "type": "array", "description": "List of IPv4 addresses to configure on the interface. In the form I(X.X.X.X/YY)." }, "virtual_ip": { "type": "string", "description": "Define IPv4 virtual IP used by the Cumulus Linux VRR feature." } } }, "assemble": { "required": [ "src", "dest" ], "type": "object", "description": "Assembles a configuration file from fragments. Often a particular program will take a single configuration file and does not support a C(conf.d) style structure where it is easy to build up the configuration from multiple sources. M(assemble) will take a directory of files that can be local or have already been transferred to the system, and concatenate them together to produce a destination file. Files are assembled in string sorting order. Puppet calls this idea I(fragments).", "properties": { "ignore_hidden": { "type": "string", "description": "A boolean that controls if files that start with a '.' will be included or not." }, "src": { "type": "string", "description": "An already existing directory full of source files." }, "remote_src": { "type": "string", "description": "Default: True\n\nIf False, it will search for src at originating/master machine, if True it will go to the remote/target machine for the src. Default is True." }, "dest": { "type": "string", "description": "A file to create using the concatenation of all of the source files." }, "delimiter": { "type": "string", "description": "A delimiter to separate the file contents." }, "regexp": { "type": "string", "description": "Assemble files only if C(regex) matches the filename. If not set, all files are assembled. All \"\\\" (backslash) must be escaped as \"\\\\\" to comply yaml syntax. Uses Python regular expressions; see U(http://docs.python.org/2/library/re.html)." }, "validate": { "type": "string", "description": "The validation command to run before copying into place. The path to the file to validate is passed in via '%s' which must be present as in the sshd example below. The command is passed securely so shell features like expansion and pipes won't work." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file (if C(yes)), including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." } } }, "onyx_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to an Mellanox ONYX network device and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(onyx_config) to configure Mellanox ONYX devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote Mellanox ONYX network device. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "iosxr_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "group", "role" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of the local usernames configured on network devices. It allows playbooks to manage either individual usernames or the aggregate of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "public_key": { "type": "string", "description": "Configures the contents of the public keyfile to upload to the IOS-XR node. This enables users to login using the accompanying private key. IOS-XR only accepts base64 decoded files, so this will be decoded and uploaded to the node. Do note that this requires an OpenSSL public key file, PuTTy generated files will not work! Mutually exclusive with public_key_contents. If used with multiple users in aggregates, then the same key file is used for all users." }, "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the Cisco IOS XR device. The password needs to be provided in clear text. Password is encrypted on the device when used with I(cli) and by Ansible when used with I(netconf) using the same MD5 hash technique with salt size of 3. Please note that this option is not same as C(provider password)." }, "group": { "type": "string", "description": "Configures the group for the username in the device running configuration. The argument accepts a string value defining the group name. This argument does not check if the group has been configured on the device." }, "name": { "type": "string", "description": "The username to be configured on the Cisco IOS XR device. This argument accepts a string value and is mutually exclusive with the C(aggregate) argument. Please note that this option is not same as C(provider username)." }, "collection": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS XR device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "purge": { "description": "Instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user and the current defined set of users.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "public_key_contents": { "type": "string", "description": "Configures the contents of the public keyfile to upload to the IOS-XR node. This enables users to login using the accompanying private key. IOS-XR only accepts base64 decoded files, so this will be decoded and uploaded to the node. Do note that this requires an OpenSSL public key file, PuTTy generated files will not work! Mutually exclusive with public_key.If used with multiple users in aggregates, then the same key file is used for all users." }, "role": { "type": "string", "description": "Configures the group for the username in the device running configuration. The argument accepts a string value defining the group name. This argument does not check if the group has been configured on the device." }, "groups": { "type": "string", "description": "Configures the groups for the username in the device running configuration. The argument accepts a list of group names. This argument does not check if the group has been configured on the device. It is similar to the aggregrate command for usernames, but lets you configure multiple groups for the user(s)." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS XR device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "users": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS XR device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." } } }, "package": { "required": [ "state", "name" ], "type": "object", "description": "Installs, upgrade and removes packages using the underlying OS package manager.\nFor Windows targets, use the M(win_package) module instead.", "properties": { "state": { "type": "string", "description": "Whether to install (C(present), or remove (C(absent)) a package. Other states depend on the underlying package module, i.e C(latest)." }, "use": { "type": "string", "description": "Default: auto\n\nThe required package manager module to use (yum, apt, etc). The default 'auto' will use existing facts or try to autodetect it.\nYou should only use this field if the automatic selection is not working for some reason." }, "name": { "type": "string", "description": "Package name, or package specifier with version, like C(name-1.0).\nBe aware that packages are not always named the same and this module will not 'translate' them per distro." } } }, "get_url": { "allOf": [ { "allOf": [ { "not": { "required": [ "force", "thirsty" ], "type": "object" } } ] } ], "type": "object", "description": "Downloads files from HTTP, HTTPS, or FTP to the remote server. The remote server I(must) have direct access to the remote resource.\nBy default, if an environment variable C(_proxy) is set on the target host, requests will be sent through that proxy. This behaviour can be overridden by setting a variable for this task (see `setting the environment `_), or by using the use_proxy option.\nHTTP redirects can redirect from HTTP to HTTPS so you should be sure that your proxy environment for both protocols is correct.", "properties": { "url_password": { "type": "string", "description": "The password for use in HTTP basic authentication. If the C(url_username) parameter is not specified, the C(url_password) parameter will not be used." }, "force": { "type": "string", "description": "Default: no\n\nIf C(yes) and C(dest) is not a directory, will download the file every time and replace the file if the contents change. If C(no), the file will only be downloaded if the destination does not exist. Generally should be C(yes) only for small local files. Prior to 0.6, this module behaved as if C(yes) was the default." }, "use_proxy": { "type": "string", "description": "Default: yes\n\nif C(no), it will not use a proxy, even if one is defined in an environment variable on the target hosts." }, "thirsty": { "type": "string", "description": "Default: no\n\nIf C(yes) and C(dest) is not a directory, will download the file every time and replace the file if the contents change. If C(no), the file will only be downloaded if the destination does not exist. Generally should be C(yes) only for small local files. Prior to 0.6, this module behaved as if C(yes) was the default." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "url": { "type": "string", "description": "HTTP, HTTPS, or FTP URL in the form (http|https|ftp)://[user[:pass]]@host.domain[:port]/path" }, "checksum": { "type": "string", "description": "If a checksum is passed to this parameter, the digest of the destination file will be calculated after it is downloaded to ensure its integrity and verify that the transfer completed successfully. Format: :, e.g.: checksum=\"sha256:D98291AC[...]B6DC7B97\" If you worry about portability, only the sha1 algorithm is available on all platforms and python versions. The third party hashlib library can be installed for access to additional algorithms. Additionally, if a checksum is passed to this parameter, and the file exist under the C(dest) location, the destination_checksum would be calculated, and if checksum equals destination_checksum, the file download would be skipped (unless C(force) is true). " }, "force_basic_auth": { "type": "string", "description": "Default: no\n\nhttplib2, the library used by the uri module only sends authentication information when a webservice responds to an initial request with a 401 status. Since some basic auth services do not properly send a 401, logins will fail. This option forces the sending of the Basic authentication header upon initial request." }, "sha256sum": { "type": "string", "description": "If a SHA-256 checksum is passed to this parameter, the digest of the destination file will be calculated after it is downloaded to ensure its integrity and verify that the transfer completed successfully. This option is deprecated. Use 'checksum'." }, "dest": { "type": "string", "description": "absolute path of where to download the file to.\nIf C(dest) is a directory, either the server provided filename or, if none provided, the base name of the URL on the remote server will be used. If a directory, C(force) has no effect. If C(dest) is a directory, the file will always be downloaded (regardless of the force option), but replaced only if the contents changed." }, "headers": { "type": "string", "description": "Add custom HTTP headers to a request in the format \"key:value,key:value\"" }, "timeout": { "type": "string", "description": "Default: 10\n\nTimeout in seconds for URL request" }, "others": { "type": "string", "description": "all arguments accepted by the M(file) module also work here" }, "url_username": { "type": "string", "description": "The username for use in HTTP basic authentication. This parameter can be used without C(url_password) for sites that allow empty passwords." }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." }, "tmp_dest": { "type": "string", "description": "absolute path of where temporary file is downloaded to.\nDefaults to TMPDIR, TEMP or TMP env variables or a platform specific value\nhttps://docs.python.org/2/library/tempfile.html#tempfile.tempdir" } } }, "oneview_fc_network_facts": { "type": "object", "description": "Retrieve the facts about one or more of the Fibre Channel Networks from OneView.", "properties": { "name": { "type": "string", "description": "Fibre Channel Network name." } } }, "ovirt_templates": { "allOf": [ { "allOf": [ { "not": { "required": [ "image_disk", "glance_image_disk_name" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage virtual machine templates in oVirt/RHV.", "properties": { "exclusive": { "type": "string", "description": "When C(state) is I(exported) this parameter indicates if the existing templates with the same name should be overwritten." }, "domain_mappings": { "type": "string", "description": "Mapper which maps aaa domain name between Template's OVF and the destination aaa domain this Template should be registered to, relevant when C(state) is registered. The aaa domain mapping is described by the following dictionary:\nC(source_name): The name of the source aaa domain.\nC(dest_name): The name of the destination aaa domain." }, "cpu_profile": { "type": "string", "description": "CPU profile to be set to template." }, "storage_domain": { "type": "string", "description": "When C(state) is I(imported) this parameter specifies the name of the destination data storage domain. When C(state) is I(registered) this parameter specifies the name of the data storage domain of the unregistered template." }, "description": { "type": "string", "description": "Description of the template." }, "allow_partial_import": { "type": "string", "description": "Boolean indication whether to allow partial registration of a template when C(state) is registered." }, "export_domain": { "type": "string", "description": "When C(state) is I(exported) or I(imported) this parameter specifies the name of the export storage domain." }, "template_image_disk_name": { "type": "string", "description": "When C(state) is I(imported) and C(image_provider) is used this parameter specifies the new name for imported disk, if omitted then I(image_disk) name is used by default. This parameter is used only in case of importing disk image from Glance domain." }, "image_disk": { "type": "string", "description": "When C(state) is I(imported) and C(image_provider) is used this parameter specifies the name of disk to be imported as template." }, "vm": { "type": "string", "description": "Name of the VM, which will be used to create template." }, "vnic_profile_mappings": { "type": "string", "description": "Mapper which maps an external virtual NIC profile to one that exists in the engine when C(state) is registered. vnic_profile is described by the following dictionary:\nC(source_network_name): The network name of the source network.\nC(source_profile_name): The prfile name related to the source network.\nC(target_profile_id): The id of the target profile id to be mapped to in the engine." }, "name": { "type": "string", "description": "Name of the template to manage." }, "cluster": { "type": "string", "description": "Name of the cluster, where template should be created/imported." }, "state": { "type": "string", "description": "Default: present\n\nShould the template be present/absent/exported/imported/registered. When C(state) is I(registered) and the unregistered template's name belongs to an already registered in engine template in the same DC then we fail to register the unregistered template." }, "role_mappings": { "type": "string", "description": "Mapper which maps role name between Template's OVF and the destination role this Template should be registered to, relevant when C(state) is registered. Role mapping is described by the following dictionary:\nC(source_name): The name of the source role.\nC(dest_name): The name of the destination role." }, "seal": { "type": "string", "description": "'Sealing' is an operation that erases all machine-specific configurations from a filesystem: This includes SSH keys, UDEV rules, MAC addresses, system ID, hostname, etc. If I(true) subsequent virtual machines made from this template will avoid configuration inheritance.\nThis parameter is used only when C(state) I(present)." }, "cluster_mappings": { "type": "string", "description": "Mapper which maps cluster name between Template's OVF and the destination cluster this Template should be registered to, relevant when C(state) is registered. Cluster mapping is described by the following dictionary:\nC(source_name): The name of the source cluster.\nC(dest_name): The name of the destination cluster." }, "glance_image_disk_name": { "type": "string", "description": "When C(state) is I(imported) and C(image_provider) is used this parameter specifies the name of disk to be imported as template." }, "clone_permissions": { "type": "string", "description": "If I(True) then the permissions of the VM (only the direct ones, not the inherited ones) will be copied to the created template.\nThis parameter is used only when C(state) I(present)." }, "id": { "type": "string", "description": "ID of the template to be registered." }, "image_provider": { "type": "string", "description": "When C(state) is I(imported) this parameter specifies the name of the image provider to be used." } } }, "acl": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "path" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "path" ], "type": "object" } ] } ] } ], "type": "object", "description": "Sets and retrieves file ACL information.", "properties": { "entry": { "type": "string", "description": "DEPRECATED. The acl to set or remove. This must always be quoted in the form of '::'. The qualifier may be empty for some types, but the type and perms are always required. '-' can be used as placeholder when you do not care about permissions. This is now superseded by entity, type and permissions fields." }, "name": { "type": "string", "description": "The full path of the file or object." }, "default": { "type": "string", "description": "if the target is a directory, setting this to yes will make it the default acl for entities created inside the directory. It causes an error if name is a file." }, "recursive": { "type": "string", "description": "Recursively sets the specified ACL (added in Ansible 2.0). Incompatible with C(state=query)." }, "entity": { "type": "string", "description": "actual user or group that the ACL applies to when matching entity types user or group are selected." }, "state": { "type": "string", "description": "Default: query\n\ndefines whether the ACL should be present or not. The C(query) state gets the current acl without changing it, for use in 'register' operations." }, "follow": { "type": "string", "description": "Default: True\n\nwhether to follow symlinks on the path if a symlink is encountered." }, "etype": { "type": "string", "description": "the entity type of the ACL to apply, see setfacl documentation for more info." }, "path": { "type": "string", "description": "The full path of the file or object." }, "permissions": { "type": "string", "description": "Permissions to apply/remove can be any combination of r, w and x (read, write and execute respectively)" } } }, "gitlab_project": { "allOf": [ { "allOf": [ { "not": { "required": [ "validate_certs", "verify_ssl" ], "type": "object" } } ] } ], "type": "object", "description": "When the project does not exist in Gitlab, it will be created.\nWhen the project does exists and state=absent, the project will be deleted.\nWhen changes are made to the project, the project will be updated.", "properties": { "verify_ssl": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." }, "group": { "type": "string", "description": "The name of the group of which this projects belongs to.\nWhen not provided, project will belong to user which is configured in 'login_user' or 'login_token'\nWhen provided with username, project will be created for this user. 'login_user' or 'login_token' needs admin rights." }, "merge_requests_enabled": { "type": "string", "description": "Default: True\n\nIf merge requests can be made or not.\nPossible values are true and false." }, "import_url": { "type": "string", "description": "Git repository which will be imported into gitlab.\nGitlab server needs read access to this git repository." }, "login_user": { "type": "string", "description": "Gitlab user name." }, "login_token": { "type": "string", "description": "Gitlab token for logging in." }, "server_url": { "type": "string", "description": "Url of Gitlab server, with protocol (http or https)." }, "name": { "type": "string", "description": "The name of the project" }, "path": { "type": "string", "description": "The path of the project you want to create, this will be server_url//path\nIf not supplied, name will be used." }, "state": { "type": "string", "description": "Default: present\n\ncreate or delete project.\nPossible values are present and absent." }, "issues_enabled": { "type": "string", "description": "Default: True\n\nWhether you want to create issues or not.\nPossible values are true and false." }, "login_password": { "type": "string", "description": "Gitlab password for login_user" }, "snippets_enabled": { "type": "string", "description": "Default: True\n\nIf creating snippets should be available or not.\nPossible values are true and false." }, "wiki_enabled": { "type": "string", "description": "Default: True\n\nIf an wiki for this project should be available or not.\nPossible values are true and false." }, "visibility_level": { "type": "string", "description": "Private. visibility_level is 0. Project access must be granted explicitly for each user.\nInternal. visibility_level is 10. The project can be cloned by any logged in user.\nPublic. visibility_level is 20. The project can be cloned without any authentication.\nPossible values are 0, 10 and 20." }, "validate_certs": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." }, "public": { "type": "string", "description": "If the project is public available or not.\nSetting this to true is same as setting visibility_level to 20.\nPossible values are true and false." }, "description": { "type": "string", "description": "An description for the project." } } }, "oneview_san_manager_facts": { "type": "object", "description": "Retrieve facts about one or more of the SAN Managers from OneView", "properties": { "provider_display_name": { "type": "string", "description": "Provider Display Name." }, "params": { "type": "array", "description": "List of params to delimit, filter and sort the list of resources.\nparams allowed: - C(start): The first item to return, using 0-based indexing. - C(count): The number of resources to return. - C(query): A general query string to narrow the list of resources returned. - C(sort): The sort order of the returned data set." } } }, "cnos_reload": { "type": "object", "description": "This module allows you to restart the switch using the current startup configuration. The module is usually invoked after the running configuration has been saved over the startup configuration. This module uses SSH to manage network device configuration. The results of the operation can be viewed in results directory. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_reload.html)", "properties": {} }, "influxdb_write": { "required": [ "data_points", "database_name" ], "type": "object", "description": "Write data points into InfluxDB.", "properties": { "data_points": { "type": "string", "description": "Data points as dict to write into the database." }, "database_name": { "type": "string", "description": "Name of the database." } } }, "azure_rm_image": { "required": [ "source", "name", "resource_group" ], "type": "object", "description": "Create, delete an image from virtual machine, blob uri, managed disk or snapshot.", "properties": { "name": { "type": "string", "description": "Name of the image." }, "resource_group": { "type": "string", "description": "Name of resource group." }, "data_disk_sources": { "type": "array", "description": "List of data disk sources, including unmanaged blob uri, managed disk id or name, or snapshot id or name." }, "source": { "type": "string", "description": "OS disk source from the same region, including a virtual machine id or name, OS disk blob uri, managed OS disk id or name, or OS snapshot id or name." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the image. Use C(present) to create or update a image and C(absent) to delete an image." }, "location": { "type": "string", "description": "Location of the image. Derived from I(resource_group) if not specified." }, "os_type": { "type": "string", "description": "The OS type of image." } } }, "oneandone_firewall_policy": { "required": [ "firewall_policy", "name", "auth_token" ], "type": "object", "description": "Create, remove, reconfigure, update firewall policies. This module has a dependency on 1and1 >= 1.0", "properties": { "add_rules": { "type": "string", "description": "A list of rules that will be added to an existing firewall policy. It is syntax is the same as the one used for rules parameter. Used in combination with update state." }, "firewall_policy": { "type": "string", "description": "The identifier (id or name) of the firewall policy used with update state." }, "name": { "type": "string", "description": "Firewall policy name used with present state. Used as identifier (id or name) when used with absent state. maxLength=128" }, "rules": { "type": "string", "description": "A list of rules that will be set for the firewall policy. Each rule must contain protocol parameter, in addition to three optional parameters (port_from, port_to, and source)" }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1." }, "description": { "type": "string", "description": "Firewall policy description. maxLength=256" }, "remove_server_ips": { "type": "string", "description": "A list of server IP ids to be unassigned from a firewall policy. Used in combination with update state." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the _wait_for methods" }, "state": { "type": "string", "description": "Default: present\n\nDefine a firewall policy state to create, remove, or update." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "add_server_ips": { "type": "string", "description": "A list of server identifiers (id or name) to be assigned to a firewall policy. Used in combination with update state." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" }, "remove_rules": { "type": "string", "description": "A list of rule ids that will be removed from an existing firewall policy. Used in combination with update state." }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." } } }, "github_hooks": { "required": [ "repo", "oauthkey", "user", "action" ], "type": "object", "description": "Adds service hooks and removes service hooks that have an error status.", "properties": { "oauthkey": { "type": "string", "description": "The oauth key provided by github. It can be found/generated on github under \"Edit Your Profile\" >> \"Applications\" >> \"Personal Access Tokens\"" }, "hookurl": { "type": "string", "description": "When creating a new hook, this is the url that you want github to post to. It is only required when creating a new hook." }, "repo": { "type": "string", "description": "This is the API url for the repository you want to manage hooks for. It should be in the form of: https://api.github.com/repos/user:/repo:. Note this is different than the normal repo url." }, "user": { "type": "string", "description": "Github username." }, "content_type": { "type": "string", "description": "Default: json\n\nContent type to use for requests made to the webhook" }, "action": { "type": "string", "description": "This tells the githooks module what you want it to do." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates for the target repo will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "redshift": { "allOf": [ { "allOf": [ { "not": { "required": [ "cluster_parameter_group_name", "param_group_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "new_cluster_identifier", "new_identifier" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "availability_zone", "zone", "aws_zone" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "allow_version_upgrade", "version_upgrade" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "cluster_subnet_group_name", "subnet" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "cluster_security_groups", "security_groups" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "automated_snapshot_retention_period", "retention_period" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "cluster_version", "version" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "preferred_maintenance_window", "maintance_window", "maint_window" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vpc_security_group_ids", "vpc_security_groups" ], "type": "object" } } ] } ], "type": "object", "description": "Creates, deletes, or modifies amazon Redshift cluster instances.", "properties": { "cluster_parameter_group_name": { "type": "string", "description": "name of the cluster parameter group" }, "maint_window": { "type": "string", "description": "maintenance window" }, "availability_zone": { "type": "string", "description": "availability zone in which to launch cluster" }, "encrypted": { "type": "string", "description": "if the cluster is encrypted or not" }, "retention_period": { "type": "string", "description": "period when the snapshot take place" }, "node_type": { "type": "string", "description": "The node type of the cluster. Must be specified when command=create." }, "publicly_accessible": { "type": "string", "description": "if the cluster is accessible publicly or not" }, "port": { "type": "string", "description": "which port the cluster is listining" }, "security_groups": { "type": "string", "description": "in which security group the cluster belongs" }, "subnet": { "type": "string", "description": "which subnet to place the cluster" }, "vpc_security_groups": { "type": "string", "description": "VPC security group" }, "allow_version_upgrade": { "type": "string", "description": "Default: True\n\nflag to determinate if upgrade of version is possible" }, "cluster_type": { "type": "string", "description": "Default: single-node\n\nThe type of cluster." }, "version": { "type": "string", "description": "which version the cluster should have" }, "vpc_security_group_ids": { "type": "string", "description": "VPC security group" }, "username": { "type": "string", "description": "Master database username. Used only when command=create." }, "new_cluster_identifier": { "type": "string", "description": "Only used when command=modify." }, "number_of_nodes": { "type": "string", "description": "Number of nodes. Only used when cluster_type=multi-node." }, "version_upgrade": { "type": "string", "description": "Default: True\n\nflag to determinate if upgrade of version is possible" }, "db_name": { "type": "string", "description": "Name of the database." }, "param_group_name": { "type": "string", "description": "name of the cluster parameter group" }, "password": { "type": "string", "description": "Master database password. Used only when command=create." }, "cluster_subnet_group_name": { "type": "string", "description": "which subnet to place the cluster" }, "wait": { "type": "string", "description": "Default: no\n\nWhen command=create, modify or restore then wait for the database to enter the 'available' state. When command=delete wait for the database to be terminated." }, "aws_zone": { "type": "string", "description": "availability zone in which to launch cluster" }, "zone": { "type": "string", "description": "availability zone in which to launch cluster" }, "cluster_security_groups": { "type": "string", "description": "in which security group the cluster belongs" }, "maintance_window": { "type": "string", "description": "maintenance window" }, "elastic_ip": { "type": "string", "description": "if the cluster has an elastic IP or not" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "command": { "type": "string", "description": "Specifies the action to take." }, "new_identifier": { "type": "string", "description": "Only used when command=modify." }, "automated_snapshot_retention_period": { "type": "string", "description": "period when the snapshot take place" }, "identifier": { "type": "string", "description": "Redshift cluster identifier." }, "cluster_version": { "type": "string", "description": "which version the cluster should have" }, "preferred_maintenance_window": { "type": "string", "description": "maintenance window" } } }, "cnos_image": { "required": [ "protocol", "serverusername", "imgtype", "serverip", "imgpath" ], "type": "object", "description": "This module allows you to work with switch firmware images. It provides a way to download a firmware image to a network device from a remote server using FTP, SFTP, TFTP, or SCP. The first step is to create a directory from where the remote server can be reached. The next step is to provide the full file path of the image's location. Authentication details required by the remote server must be provided as well. By default, this method makes the newly downloaded firmware image the active image, which will be used by the switch during the next restart. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_image.html)", "properties": { "serverpassword": { "type": "string", "description": "Specify the password for the server relating to the protocol used." }, "protocol": { "type": "string", "description": "This refers to the protocol used by the network device to interact with the remote server from where to download the firmware image. The choices are FTP, SFTP, TFTP, or SCP. Any other protocols will result in error. If this parameter is not specified, there is no default value to be used." }, "serverip": { "type": "string", "description": "This specifies the IP Address of the remote server from where the software image will be downloaded." }, "imgpath": { "type": "string", "description": "This specifies the full file path of the image located on the remote server. In case the relative path is used as the variable value, the root folder for the user of the server needs to be specified." }, "serverusername": { "type": "string", "description": "Specify the username for the server relating to the protocol used." }, "imgtype": { "type": "string", "description": "This specifies the firmware image type to be downloaded" } } }, "aci_domain_to_vlan_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain", "domain_name", "domain_profile" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool_allocation_mode", "allocation_mode", "mode" ], "type": "object" } }, { "oneOf": [ { "required": [ "pool_allocation_mode" ], "type": "object" }, { "required": [ "allocation_mode" ], "type": "object" }, { "required": [ "mode" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "pool", "pool_name", "vlan_pool" ], "type": "object" } } ] } ], "type": "object", "description": "Bind Domain to VLAN Pools on Cisco ACI fabrics.", "properties": { "domain_profile": { "type": "string", "description": "Name of the domain being associated with the VLAN Pool." }, "pool_name": { "type": "string", "description": "The name of the pool." }, "domain": { "type": "string", "description": "Name of the domain being associated with the VLAN Pool." }, "pool_allocation_mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "domain_name": { "type": "string", "description": "Name of the domain being associated with the VLAN Pool." }, "vlan_pool": { "type": "string", "description": "The name of the pool." }, "domain_type": { "type": "string", "description": "Determines if the Domain is physical (phys) or virtual (vmm)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "vm_provider": { "type": "string", "description": "The VM platform for VMM Domains.\nSupport for Kubernetes was added in ACI v3.0.\nSupport for CloudFoundry, OpenShift and Red Hat was added in ACI v3.1." }, "allocation_mode": { "type": "string", "description": "The method used for allocating VLANs to resources." }, "pool": { "type": "string", "description": "The name of the pool." } } }, "vmware_vmotion": { "allOf": [ { "allOf": [ { "not": { "required": [ "vm_name", "vm" ], "type": "object" } }, { "oneOf": [ { "required": [ "vm_name" ], "type": "object" }, { "required": [ "vm" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "destination_host", "destination" ], "type": "object" } }, { "oneOf": [ { "required": [ "destination_host" ], "type": "object" }, { "required": [ "destination" ], "type": "object" } ] } ] } ], "type": "object", "description": "Using VMware vCenter, move a virtual machine using vMotion to a different host.", "properties": { "vm_name": { "type": "string", "description": "Name of the VM to perform a vMotion on" }, "destination": { "type": "string", "description": "Name of the end host the VM should be running on" }, "vm": { "type": "string", "description": "Name of the VM to perform a vMotion on" }, "destination_host": { "type": "string", "description": "Name of the end host the VM should be running on" } } }, "zabbix_hostmacro": { "required": [ "macro_name", "macro_value", "host_name" ], "type": "object", "description": "manages Zabbix host macros, it can create, update or delete them.", "properties": { "macro_value": { "type": "string", "description": "Value of the host macro." }, "state": { "type": "string", "description": "Default: present\n\nState of the macro.\nOn C(present), it will create if macro does not exist or update the macro if the associated data is different.\nOn C(absent) will remove a macro if it exists." }, "force": { "type": "string", "description": "Default: yes\n\nOnly updates an existing macro if set to C(yes)." }, "macro_name": { "type": "string", "description": "Name of the host macro." }, "host_name": { "type": "string", "description": "Name of the host." } } }, "consul_acl": { "type": "object", "description": "Allows the addition, modification and deletion of ACL keys and associated rules in a consul cluster via the agent. For more details on using and configuring ACLs, see https://www.consul.io/docs/guides/acl.html.", "properties": { "name": { "type": "string", "description": "the name that should be associated with the acl key, this is opaque to Consul" }, "rules": { "type": "string", "description": "a list of the rules that should be associated with a given token" }, "token": { "type": "string", "description": "the token key indentifying an ACL rule set. If generated by consul this will be a UUID" }, "token_type": { "type": "string", "description": "Default: client\n\nthe type of token that should be created, either management or client" }, "state": { "type": "string", "description": "Default: present\n\nwhether the ACL pair should be present or absent" }, "mgmt_token": { "type": "string", "description": "a management token is required to manipulate the acl lists" }, "host": { "type": "string", "description": "Default: localhost\n\nhost of the consul agent defaults to localhost" }, "scheme": { "type": "string", "description": "Default: http\n\nthe protocol scheme on which the consul agent is running" }, "validate_certs": { "type": "string", "description": "Default: True\n\nwhether to verify the tls certificate of the consul agent" }, "port": { "type": "string", "description": "Default: 8500\n\nthe port on which the consul agent is running" } } }, "cs_region": { "required": [ "id" ], "type": "object", "description": "Add, update and remove regions.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the region." }, "endpoint": { "type": "string", "description": "Endpoint URL of the region.\nRequired if C(state=present)" }, "id": { "type": "string", "description": "ID of the region.\nMust be an number (int)." }, "name": { "type": "string", "description": "Name of the region.\nRequired if C(state=present)" } } }, "nxos_snmp_user": { "required": [ "user", "group" ], "type": "object", "description": "Manages SNMP user configuration.", "properties": { "group": { "type": "string", "description": "Group to which the user will belong to." }, "privacy": { "type": "string", "description": "Privacy password for the user." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "auth": { "type": "string", "description": "Auth parameters for the user." }, "pwd": { "type": "string", "description": "Auth password when using md5 or sha." }, "user": { "type": "string", "description": "Name of the user." }, "encrypt": { "type": "string", "description": "Enables AES-128 bit encryption when using privacy password." } } }, "azure_rm_virtualnetwork_facts": { "type": "object", "description": "Get facts for a specific virtual network or all virtual networks within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific security group." }, "resource_group": { "type": "string", "description": "Limit results by resource group. Required when filtering by name." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "cnos_command": { "required": [ "clicommand" ], "type": "object", "description": "This module allows you to modify the switch running configuration. It provides a way to execute a single CNOS command on a switch by evaluating the current running configuration and executing the command only if the specific setting has not been already configured. The CNOS command is passed as an argument of the method. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_command.html)", "properties": { "clicommand": { "type": "string", "description": "This specifies the CLI command as an attribute to this method. The command is passed using double quotes. The variables can be placed directly on to the CLI commands or can be invoked from the vars directory." } } }, "vmware_host_datastore": { "required": [ "datacenter_name", "esxi_hostname", "datastore_type", "datastore_name" ], "type": "object", "description": "This module can be used to mount/umount datastore on ESXi host.\nThis module only support NFS/VMFS type of datastores.\nFor VMFS datastore, available device must already be connected on ESXi host.\nAll parameters and VMware object names are case sensitive.", "properties": { "datacenter_name": { "type": "string", "description": "Name of the datacenter to add the datastore." }, "vmfs_version": { "type": "string", "description": "VMFS version to use for datastore creation.\nUnused if datastore type is not set to C(vmfs) and state is not set to C(present)." }, "nfs_path": { "type": "string", "description": "Resource path on NFS host.\nRequired if datastore type is set to C(nfs) and state is set to C(present), else unused." }, "state": { "type": "string", "description": "Default: present\n\npresent: Mount datastore on host if datastore is absent else do nothing.\nabsent: Umount datastore if datastore is present else do nothing." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to manage the datastore." }, "datastore_type": { "type": "string", "description": "Type of the datastore to configure (nfs/vmfs)." }, "nfs_server": { "type": "string", "description": "NFS host serving nfs datastore.\nRequired if datastore type is set to C(nfs) and state is set to C(present), else unused." }, "vmfs_device_name": { "type": "string", "description": "Name of the device to be used as VMFS datastore.\nRequired for VMFS datastore type and state is set to C(present), else unused." }, "nfs_ro": { "description": "ReadOnly or ReadWrite mount.\nUnused if datastore type is not set to C(nfs) and state is not set to C(present).", "$ref": "#/definitions/ansible_truth" }, "datastore_name": { "type": "string", "description": "Name of the datastore to add/remove." } } }, "vyos_static_route": { "type": "object", "description": "This module provides declarative management of static IP routes on Vyatta VyOS network devices.", "properties": { "mask": { "type": "string", "description": "Network prefix mask of the static route." }, "prefix": { "type": "string", "description": "Network prefix of the static route. C(mask) param should be ignored if C(prefix) is provided with C(mask) value C(prefix/mask)." }, "admin_distance": { "type": "string", "description": "Admin distance of the static route." }, "state": { "type": "string", "description": "Default: present\n\nState of the static route configuration." }, "next_hop": { "type": "string", "description": "Next hop IP of the static route." }, "aggregate": { "type": "array", "description": "List of static route definitions" } } }, "aci_bd": { "allOf": [ { "allOf": [ { "not": { "required": [ "bd", "bd_name", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vrf", "vrf_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mac_address", "mac" ], "type": "object" } } ] } ], "type": "object", "description": "Manages Bridge Domains (BD) on Cisco ACI fabrics.", "properties": { "igmp_snoop_policy": { "type": "string", "description": "The name of the IGMP Snooping Policy the Bridge Domain should use when overriding the default IGMP Snooping Policy." }, "l2_unknown_unicast": { "type": "string", "description": "Default: proxy\n\nDetermines what forwarding method to use for unknown l2 destinations.\nThe APIC defaults new Bridge domains to C(proxy)." }, "tenant_name": { "type": "string", "description": "The name of the Tenant." }, "endpoint_clear": { "description": "Default: no\n\nClears all End Points in all Leaves when C(yes).\nThe APIC defaults new Bridge Domains to C(no).\nThe value is not reset to disabled once End Points have been cleared; that requires a second task.", "$ref": "#/definitions/ansible_truth" }, "endpoint_retention_policy": { "type": "string", "description": "The name of the End Point Retention Policy the Bridge Domain should use when overriding the default End Point Retention Policy." }, "ip_learning": { "description": "Determines if the Bridge Domain should learn End Point IPs.\nThe APIC defaults new Bridge Domains to C(yes).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "ipv6_nd_policy": { "type": "string", "description": "The name of the IPv6 Neighbor Discovery Policy the Bridge Domain should use when overridding the default IPV6 ND Policy." }, "mac_address": { "type": "string", "description": "Default: 00:22:BD:F8:19:FF\n\nThe MAC Address to assign to the C(bd) instead of using the default." }, "endpoint_move_detect": { "type": "string", "description": "Default: garp\n\nDetermines if GARP should be enabled to detect when End Points move.\nThe APIC defaults new Bridge Domains to C(garp)." }, "enable_multicast": { "description": "Default: no\n\nDetermines if PIM is enabled\nThe APIC defaults new Bridge Domains to C(no).", "$ref": "#/definitions/ansible_truth" }, "limit_ip_learn": { "description": "Default: yes\n\nDetermines if the BD should limit IP learning to only subnets owned by the Bridge Domain.\nThe APIC defaults new Bridge Domains to C(yes).", "$ref": "#/definitions/ansible_truth" }, "bd": { "type": "string", "description": "The name of the Bridge Domain." }, "arp_flooding": { "description": "Default: no\n\nDetermines if the Bridge Domain should flood ARP traffic.\nThe APIC defaults new Bridge Domains to C(no).", "$ref": "#/definitions/ansible_truth" }, "endpoint_retention_action": { "type": "string", "description": "Default: resolve\n\nDetermines if the Bridge Domain should inherit or resolve the End Point Retention Policy.\nThe APIC defaults new Bridge Domain to End Point Retention Policies to C(resolve)." }, "description": { "type": "string", "description": "Description for the Bridge Domain." }, "l3_unknown_multicast": { "type": "string", "description": "Default: flood\n\nDetermines the forwarding method to use for unknown multicast destinations.\nThe APCI defaults new Bridge Domains to C(flood)." }, "enable_routing": { "description": "Default: yes\n\nDetermines if IP forwarding should be allowed.\nThe APIC defaults new Bridge Domains to C(yes).", "$ref": "#/definitions/ansible_truth" }, "mac": { "type": "string", "description": "Default: 00:22:BD:F8:19:FF\n\nThe MAC Address to assign to the C(bd) instead of using the default." }, "vrf": { "type": "string", "description": "The name of the VRF." }, "bd_type": { "type": "string", "description": "Default: ethernet\n\nThe type of traffic on the Bridge Domain.\nThe APIC defaults new Bridge Domains to C(ethernet)." }, "tenant": { "type": "string", "description": "The name of the Tenant." }, "name": { "type": "string", "description": "The name of the Bridge Domain." }, "multi_dest": { "type": "string", "description": "Default: bd-flood\n\nDetermines the forwarding method for L2 multicast, broadcast, and link layer traffic.\nThe APIC defaults new Bridge Domains to C(bd-flood)." }, "vrf_name": { "type": "string", "description": "The name of the VRF." }, "bd_name": { "type": "string", "description": "The name of the Bridge Domain." } } }, "htpasswd": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "username" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "username" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "path", "dest", "destfile" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "destfile" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and remove username/password entries in a password file using htpasswd.\nThis is used by web servers such as Apache and Nginx for basic authentication.", "properties": { "username": { "type": "string", "description": "User name to add or remove" }, "name": { "type": "string", "description": "User name to add or remove" }, "dest": { "type": "string", "description": "Path to the file that contains the usernames and passwords" }, "create": { "type": "string", "description": "Default: yes\n\nUsed with C(state=present). If specified, the file will be created if it does not already exist. If set to \"no\", will fail if the file does not exist" }, "destfile": { "type": "string", "description": "Path to the file that contains the usernames and passwords" }, "state": { "type": "string", "description": "Default: present\n\nWhether the user entry should be present or not" }, "path": { "type": "string", "description": "Path to the file that contains the usernames and passwords" }, "password": { "type": "string", "description": "Password associated with user.\nMust be specified if user does not exist yet." }, "crypt_scheme": { "type": "string", "description": "Default: apr_md5_crypt\n\nEncryption scheme to be used. As well as the four choices listed here, you can also use any other hash supported by passlib, such as md5_crypt and sha256_crypt, which are linux passwd hashes. If you do so the password file will not be compatible with Apache or Nginx" } } }, "cyberark_authentication": { "type": "object", "description": "Authenticates to CyberArk Vault using Privileged Account Security Web Services SDK and creates a session fact that can be used by other modules. It returns an Ansible fact called I(cyberark_session). Every module can use this fact as C(cyberark_session) parameter.", "properties": { "username": { "type": "string", "description": "The name of the user who will logon to the Vault." }, "use_radius_authentication": { "description": "Default: no\n\nWhether or not users will be authenticated via a RADIUS server. Valid values are true/false.", "$ref": "#/definitions/ansible_truth" }, "new_password": { "type": "string", "description": "The new password of the user. This parameter is optional, and enables you to change a password." }, "cyberark_session": { "type": "object", "description": "Dictionary set by a CyberArk authentication containing the different values to perform actions on a logged-on CyberArk session." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies if an authentication logon/logoff and a cyberark_session should be added/removed." }, "password": { "type": "string", "description": "The password of the user." }, "validate_certs": { "description": "Default: yes\n\nIf C(false), SSL certificates will not be validated. This should only set to C(false) used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "use_shared_logon_authentication": { "description": "Default: no\n\nWhether or not Shared Logon Authentication will be used.", "$ref": "#/definitions/ansible_truth" }, "api_base_url": { "type": "string", "description": "A string containing the base URL of the server hosting CyberArk's Privileged Account Security Web Services SDK." } } }, "bigip_gtm_virtual_server": { "allOf": [ { "allOf": [ { "not": { "required": [ "host", "address" ], "type": "object" } } ] } ], "type": "object", "description": "Manages F5 BIG-IP GTM virtual servers.", "properties": { "virtual_server_name": { "type": "string", "description": "Virtual server name." }, "state": { "type": "string", "description": "Default: present\n\nVirtual server state." }, "host": { "type": "string", "description": "Virtual server host." }, "address": { "type": "string", "description": "Virtual server host." }, "virtual_server_server": { "type": "string", "description": "Virtual server server." }, "port": { "type": "string", "description": "Virtual server port." } } }, "nxos_interface_ospf": { "required": [ "area", "interface", "ospf" ], "type": "object", "description": "Manages configuration of an OSPF interface instance.", "properties": { "cost": { "type": "string", "description": "The cost associated with this cisco_interface_ospf instance." }, "passive_interface": { "type": "string", "description": "Setting to true will prevent this interface from receiving HELLO packets. Valid values are 'true' and 'false'." }, "area": { "type": "string", "description": "Ospf area associated with this cisco_interface_ospf instance. Valid values are a string, formatted as an IP address (i.e. \"0.0.0.0\") or as an integer." }, "message_digest_algorithm_type": { "type": "string", "description": "Algorithm used for authentication among neighboring routers within an area. Valid values are 'md5' and 'default'." }, "message_digest_key_id": { "type": "string", "description": "Md5 authentication key-id associated with the ospf instance. If this is present, message_digest_encryption_type, message_digest_algorithm_type and message_digest_password are mandatory. Valid value is an integer and 'default'." }, "message_digest_encryption_type": { "type": "string", "description": "Specifies the scheme used for encrypting message_digest_password. Valid values are '3des' or 'cisco_type_7' encryption or 'default'." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "dead_interval": { "type": "string", "description": "Time interval an ospf neighbor waits for a hello packet before tearing down adjacencies. Valid values are an integer or the keyword 'default'." }, "hello_interval": { "type": "string", "description": "Time between sending successive hello packets. Valid values are an integer or the keyword 'default'." }, "message_digest_password": { "type": "string", "description": "Specifies the message_digest password. Valid value is a string." }, "interface": { "type": "string", "description": "Name of this cisco_interface resource. Valid value is a string." }, "ospf": { "type": "string", "description": "Name of the ospf instance." }, "message_digest": { "type": "string", "description": "Enables or disables the usage of message digest authentication. Valid values are 'true' and 'false'." } } }, "netscaler_servicegroup": { "type": "object", "description": "Manage service group configuration in Netscaler.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.", "properties": { "comment": { "type": "string", "description": "Any information about the service group." }, "tcpb": { "description": "Enable TCP buffering for the service group.", "$ref": "#/definitions/ansible_truth" }, "cachetype": { "type": "string", "description": "Cache type supported by the cache server." }, "disabled": { "description": "When set to C(yes) the service group state will be set to DISABLED.\nWhen set to C(no) the service group state will be set to ENABLED.\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "maxreq": { "type": "string", "description": "Maximum number of requests that can be sent on a persistent connection to the service group.\nNote: Connection requests beyond this value are rejected.\nMinimum value = C(0)\nMaximum value = C(65535)" }, "maxbandwidth": { "type": "string", "description": "Maximum bandwidth, in Kbps, allocated for all the services in the service group.\nMinimum value = C(0)\nMaximum value = C(4294967287)" }, "graceful": { "description": "Wait for all existing connections to the service to terminate before shutting down the service.", "$ref": "#/definitions/ansible_truth" }, "svrtimeout": { "type": "string", "description": "Time, in seconds, after which to terminate an idle server connection.\nMinimum value = C(0)\nMaximum value = C(31536000)" }, "clttimeout": { "type": "string", "description": "Time, in seconds, after which to terminate an idle client connection.\nMinimum value = C(0)\nMaximum value = C(31536000)" }, "servicetype": { "type": "string", "description": "Protocol used to exchange data with the service." }, "cacheable": { "description": "Use the transparent cache redirection virtual server to forward the request to the cache server.\nNote: Do not set this parameter if you set the Cache Type.", "$ref": "#/definitions/ansible_truth" }, "autoscale": { "type": "string", "description": "Auto scale option for a servicegroup." }, "maxclient": { "type": "string", "description": "Maximum number of simultaneous open connections for the service group.\nMinimum value = C(0)\nMaximum value = C(4294967294)" }, "monitorbindings": { "type": "string", "description": "A list of monitornames to bind to this service\nNote that the monitors must have already been setup possibly using the M(netscaler_lb_monitor) module or some other method" }, "servicegroupname": { "type": "string", "description": "Name of the service group. Must begin with an ASCII alphabetic or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Can be changed after the name is created.\nMinimum length = 1" }, "usip": { "type": "string", "description": "Use client's IP address as the source IP address when initiating connection to the server. With the NO setting, which is the default, a mapped IP (MIP) address or subnet IP (SNIP) address is used as the source IP address to initiate server side connections." }, "netprofile": { "type": "string", "description": "Network profile for the service group.\nMinimum length = 1\nMaximum length = 127" }, "rtspsessionidremap": { "description": "Enable RTSP session ID mapping for the service group.", "$ref": "#/definitions/ansible_truth" }, "httpprofilename": { "type": "string", "description": "Name of the HTTP profile that contains HTTP configuration settings for the service group.\nMinimum length = 1\nMaximum length = 127" }, "pathmonitorindv": { "type": "string", "description": "Individual Path monitoring decisions." }, "pathmonitor": { "type": "string", "description": "Path monitoring for clustering." }, "appflowlog": { "type": "string", "description": "Enable logging of AppFlow information for the specified service group." }, "servicemembers": { "type": "string", "description": "A list of dictionaries describing each service member of the service group." }, "monthreshold": { "type": "string", "description": "Minimum sum of weights of the monitors that are bound to this service. Used to determine whether to mark a service as UP or DOWN.\nMinimum value = C(0)\nMaximum value = C(65535)" }, "memberport": { "type": "string", "description": "member port." }, "cka": { "description": "Enable client keep-alive for the service group.", "$ref": "#/definitions/ansible_truth" }, "tcpprofilename": { "type": "string", "description": "Name of the TCP profile that contains TCP configuration settings for the service group.\nMinimum length = 1\nMaximum length = 127" }, "sp": { "description": "Enable surge protection for the service group.", "$ref": "#/definitions/ansible_truth" }, "downstateflush": { "type": "string", "description": "Flush all active transactions associated with all the services in the service group whose state transitions from UP to DOWN. Do not enable this option for applications that must complete their transactions." }, "cipheader": { "type": "string", "description": "Name of the HTTP header whose value must be set to the IP address of the client. Used with the Client IP parameter. If client IP insertion is enabled, and the client IP header is not specified, the value of Client IP Header parameter or the value set by the set ns config command is used as client's IP header name.\nMinimum length = 1" }, "cip": { "type": "string", "description": "Insert the Client IP header in requests forwarded to the service." }, "healthmonitor": { "description": "Monitor the health of this service. Available settings function as follows:\nC(yes) - Send probes to check the health of the service.\nC(no) - Do not send probes to check the health of the service. With the NO option, the appliance shows the service as UP at all times.", "$ref": "#/definitions/ansible_truth" }, "useproxyport": { "description": "Use the proxy port as the source port when initiating connections with the server. With the NO setting, the client-side connection port is used as the source port for the server-side connection.\nNote: This parameter is available only when the Use Source IP C(usip) parameter is set to C(yes).", "$ref": "#/definitions/ansible_truth" }, "cmp": { "description": "Enable compression for the specified service.", "$ref": "#/definitions/ansible_truth" } } }, "aix_lvol": { "required": [ "vg", "lv" ], "type": "object", "description": "This module creates, removes or resizes AIX logical volumes. Inspired by lvol module.", "properties": { "pvs": { "type": "string", "description": "Comma separated list of physical volumes e.g. C(hdisk1,hdisk2)." }, "lv_type": { "type": "string", "description": "Default: jfs2\n\nThe type of the logical volume." }, "vg": { "type": "string", "description": "The volume group this logical volume is part of." }, "copies": { "type": "string", "description": "Default: 1\n\nThe number of copies of the logical volume. Maximum copies are 3." }, "lv": { "type": "string", "description": "The name of the logical volume." }, "state": { "type": "string", "description": "Default: present\n\nControl if the logical volume exists. If C(present) and the volume does not already exist then the C(size) option is required." }, "policy": { "type": "string", "description": "Default: maximum\n\nSets the interphysical volume allocation policy. C(maximum) allocates logical partitions across the maximum number of physical volumes. C(minimum) allocates logical partitions across the minimum number of physical volumes." }, "opts": { "type": "string", "description": "Free-form options to be passed to the mklv command." }, "size": { "type": "string", "description": "The size of the logical volume with one of the [MGT] units." } } }, "zabbix_screen": { "required": [ "screens" ], "type": "object", "description": "This module allows you to create, modify and delete Zabbix screens and associated graph data.", "properties": { "screens": { "type": "array", "description": "List of screens to be created/updated/deleted(see example).\nIf the screen(s) already been added, the screen(s) name won't be updated.\nWhen creating or updating screen(s), C(screen_name), C(host_group) are required.\nWhen deleting screen(s), the C(screen_name) is required.\nThe available states are: C(present) (default) and C(absent). If the screen(s) already exists, and the state is not C(absent), the screen(s) will just be updated as needed.\n" } } }, "ce_dldp_interface": { "required": [ "interface" ], "type": "object", "description": "Manages interface DLDP configuration on HUAWEI CloudEngine switches.", "properties": { "reset": { "type": "string", "description": "Specify whether reseting interface DLDP state." }, "enable": { "type": "string", "description": "Set interface DLDP enable state." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "interface": { "type": "string", "description": "Must be fully qualified interface name, i.e. GE1/0/1, 10GE1/0/1, 40GE1/0/22, 100GE1/0/1." }, "mode_enable": { "type": "string", "description": "Set DLDP compatible-mode enable state." }, "local_mac": { "type": "string", "description": "Set the source MAC address for DLDP packets sent in the DLDP-compatible mode. The value of MAC address is in H-H-H format. H contains 1 to 4 hexadecimal digits." } } }, "pacman": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "package", "pkg" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "update_cache", "update-cache" ], "type": "object" } } ] } ], "type": "object", "description": "Manage packages with the I(pacman) package manager, which is used by Arch Linux and its variants.", "properties": { "upgrade": { "description": "Whether or not to upgrade whole system.", "$ref": "#/definitions/ansible_truth" }, "force": { "description": "When removing package - force remove package, without any checks. When update_cache - force redownload repo databases.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name or list of names of the packages to install, upgrade, or remove." }, "package": { "type": "string", "description": "Name or list of names of the packages to install, upgrade, or remove." }, "recurse": { "description": "When removing a package, also remove its dependencies, provided that they are not required by other packages and were not explicitly installed by a user.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the package." }, "update_cache": { "description": "Whether or not to refresh the master package lists. This can be run as part of a package installation or as a separate step.", "$ref": "#/definitions/ansible_truth" }, "pkg": { "type": "string", "description": "Name or list of names of the packages to install, upgrade, or remove." }, "update-cache": { "description": "Whether or not to refresh the master package lists. This can be run as part of a package installation or as a separate step.", "$ref": "#/definitions/ansible_truth" } } }, "nxos_snmp_host": { "required": [ "snmp_host", "state" ], "type": "object", "description": "Manages SNMP host configuration parameters.", "properties": { "vrf_filter": { "type": "string", "description": "Name of VRF to filter." }, "udp": { "type": "string", "description": "UDP port number (0-65535)." }, "src_intf": { "type": "string", "description": "Source interface." }, "snmp_host": { "type": "string", "description": "IP address of hostname of target host." }, "community": { "type": "string", "description": "Community string or v3 username." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "version": { "type": "string", "description": "Default: v2c\n\nSNMP version." }, "vrf": { "type": "string", "description": "VRF to use to source traffic to source." }, "snmp_type": { "type": "string", "description": "Default: traps\n\ntype of message to send to host." } } }, "expect": { "required": [ "command", "responses" ], "type": "object", "description": "The M(expect) module executes a command and responds to prompts\nThe given command will be executed on all selected nodes. It will not be processed through the shell, so variables like C($HOME) and operations like C(\"<\"), C(\">\"), C(\"|\"), and C(\"&\") will not work", "properties": { "chdir": { "type": "string", "description": "cd into this directory before running the command" }, "responses": { "type": "string", "description": "Mapping of expected string/regex and string to respond with. If the response is a list, successive matches return successive responses. List functionality is new in 2.1." }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will B(not) be run." }, "echo": { "type": "string", "description": "Whether or not to echo out your response strings" }, "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "command": { "type": "string", "description": "the command module takes command to run." }, "timeout": { "type": "string", "description": "Default: 30\n\nAmount of time in seconds to wait for the expected strings" } } }, "win_certificate_store": { "type": "object", "description": "Used to import/export and remove certificates and keys from the local certificate store.\nThis module is not used to create certificates and will only manage existing certs as a file or in the store.\nIt can be used to import PEM, DER, P7B, PKCS12 (PFX) certificates and export PEM, DER and PKCS12 certificates.", "properties": { "key_exportable": { "description": "Default: yes\n\nWhether to allow the private key to be exported.\nIf C(no), then this module and other process will only be able to export the certificate and the private key cannot be exported.\nUsed when C(state=present) only.", "$ref": "#/definitions/ansible_truth" }, "key_storage": { "type": "string", "description": "Default: default\n\nSpecifies where Windows will store the private key when it is imported.\nWhen set to C(default), the default option as set by Windows is used.\nWhen set to C(machine), the key is stored in a path accessible by various users.\nWhen set to C(user), the key is stored in a path only accessible by the current user.\nUsed when C(state=present) only and cannot be changed once imported.\nSee U(https://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509keystorageflags.aspx) for more details." }, "file_type": { "type": "string", "description": "Default: der\n\nThe file type to export the certificate as when C(state=exported).\nC(der) is a binary ASN.1 encoded file.\nC(pem) is a base64 encoded file of a der file in the OpenSSL form.\nC(pkcs12) (also known as pfx) is a binary container that contains both the certificate and private key unlike the other options.\nWhen C(pkcs12) is set and the private key is not exportable or accessible by the current user, it will throw an exception." }, "store_location": { "type": "string", "description": "Default: LocalMachine\n\nThe store location to use when importing a certificate or searching for a certificate." }, "store_name": { "type": "string", "description": "Default: My\n\nThe store name to use when importing a certificate or searching for a certificate.\nC(AddressBook): The X.509 certificate store for other users\nC(AuthRoot): The X.509 certificate store for third-party certificate authorities (CAs)\nC(CertificateAuthority): The X.509 certificate store for intermediate certificate authorities (CAs)\nC(Disallowed): The X.509 certificate store for revoked certificates\nC(My): The X.509 certificate store for personal certificates\nC(Root): The X.509 certificate store for trusted root certificate authorities (CAs)\nC(TrustedPeople): The X.509 certificate store for directly trusted people and resources\nC(TrustedPublisher): The X.509 certificate store for directly trusted publishers" }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will ensure that the certificate at I(path) is imported into the certificate store specified.\nIf C(absent), will ensure that the certificate specified by I(thumbprint) or the thumbprint of the cert at I(path) is removed from the store specified.\nIf C(exported), will ensure the file at I(path) is a certificate specified by I(thumbprint).\nWhen exporting a certificate, if I(path) is a directory then the module will fail, otherwise the file will be replaced if needed." }, "thumbprint": { "type": "string", "description": "The thumbprint as a hex string to either export or remove.\nSee the examples for how to specify the thumbprint." }, "path": { "type": "string", "description": "The path to a certificate file.\nThis is required when I(state) is C(present) or C(exported).\nWhen I(state) is C(absent) and I(thumbprint) is not specified, the thumbprint is derived from the certificate at this path." }, "password": { "type": "string", "description": "The password of the pkcs12 certificate key.\nThis is used when reading a pkcs12 certificate file or the password to set when C(state=exported) and C(file_type=pkcs12).\nIf the pkcs12 file has no password set or no password should be set on the exported file, do not set this option." } } }, "mysql_variables": { "required": [ "variable" ], "type": "object", "description": "Query / Set MySQL variables", "properties": { "variable": { "type": "string", "description": "Variable name to operate" }, "value": { "type": "string", "description": "If set, then sets variable value to this" } } }, "nagios": { "allOf": [ { "allOf": [ { "not": { "required": [ "services", "service" ], "type": "object" } }, { "oneOf": [ { "required": [ "services" ], "type": "object" }, { "required": [ "service" ], "type": "object" } ] } ] } ], "type": "object", "description": "The M(nagios) module has two basic functions: scheduling downtime and toggling alerts for services or hosts.\nAll actions require the I(host) parameter to be given explicitly. In playbooks you can use the C({{inventory_hostname}}) variable to refer to the host the playbook is currently running on.\nYou can specify multiple services at once by separating them with commas, .e.g., C(services=httpd,nfs,puppet).\nWhen specifying what service to handle there is a special service value, I(host), which will handle alerts/downtime for the I(host itself), e.g., C(service=host). This keyword may not be given with other services at the same time. I(Setting alerts/downtime for a host does not affect alerts/downtime for any of the services running on it.) To schedule downtime for all services on particular host use keyword \"all\", e.g., C(service=all).\nWhen using the M(nagios) module you will need to specify your Nagios server using the C(delegate_to) parameter.", "properties": { "comment": { "type": "string", "description": "Default: Scheduling downtime\n\nComment for C(downtime) action." }, "servicegroup": { "type": "string", "description": "The Servicegroup we want to set downtimes/alerts for. B(Required) option when using the C(servicegroup_service_downtime) amd C(servicegroup_host_downtime)." }, "service": { "type": "string", "description": "What to manage downtime/alerts for. Separate multiple services with commas. C(service) is an alias for C(services). B(Required) option when using the C(downtime), C(enable_alerts), and C(disable_alerts) actions." }, "author": { "type": "string", "description": "Default: Ansible\n\nAuthor to leave downtime comments as. Only usable with the C(downtime) action." }, "services": { "type": "string", "description": "What to manage downtime/alerts for. Separate multiple services with commas. C(service) is an alias for C(services). B(Required) option when using the C(downtime), C(enable_alerts), and C(disable_alerts) actions." }, "host": { "type": "string", "description": "Host to operate on in Nagios." }, "command": { "type": "string", "description": "The raw command to send to nagios, which should not include the submitted time header or the line-feed B(Required) option when using the C(command) action." }, "action": { "type": "string", "description": "Action to take.\nservicegroup options were added in 2.0.\ndelete_downtime options were added in 2.2." }, "minutes": { "type": "string", "description": "Default: 30\n\nMinutes to schedule downtime for.\nOnly usable with the C(downtime) action." }, "cmdfile": { "type": "string", "description": "Default: auto-detected\n\nPath to the nagios I(command file) (FIFO pipe). Only required if auto-detection fails." } } }, "aci_interface_policy_leaf_policy_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "stp_interface_policy", "stp_interface_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "egress_data_plane_policing_policy", "egress_data_plane_policing_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "cdp_policy", "cdp_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "storm_control_interface_policy", "storm_control_interface_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "port_channel_policy", "port_channel_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mcp_policy", "mcp_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "lag_type", "lag_type_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "monitoring_policy", "monitoring_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aep", "aep_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "priority_flow_control_policy", "priority_flow_control_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "fibre_channel_interface_policy", "fibre_channel_interface_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "l2_interface_policy", "l2_interface_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "policy_group", "name", "policy_group_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "port_security_policy", "port_security_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "link_level_policy", "link_level_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ingress_data_plane_policing_policy", "ingress_data_plane_policing_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "slow_drain_policy", "slow_drain_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "lldp_policy", "lldp_policy_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage fabric interface policy leaf policy groups on Cisco ACI fabrics.", "properties": { "policy_group_name": { "type": "string", "description": "Name of the leaf policy group to be added/deleted." }, "stp_interface_policy": { "type": "string", "description": "Choice of stp_interface_policy to be used as part of the leaf policy group to be created." }, "egress_data_plane_policing_policy": { "type": "string", "description": "Choice of egress_data_plane_policing_policy to be used as part of the leaf policy group to be created." }, "lldp_policy": { "type": "string", "description": "Choice of lldp_policy to be used as part of the leaf policy group to be created." }, "mcp_policy_name": { "type": "string", "description": "Choice of mcp_policy to be used as part of the leaf policy group to be created." }, "mcp_policy": { "type": "string", "description": "Choice of mcp_policy to be used as part of the leaf policy group to be created." }, "lag_type": { "type": "string", "description": "Selector for the type of leaf policy group we want to create.\nC(leaf) for Leaf Access Port Policy Group\nC(link) for Port Channel (PC)\nC(node) for Virtual Port Channel (VPC)" }, "ingress_data_plane_policing_policy_name": { "type": "string", "description": "Choice of ingress_data_plane_policing_policy to be used as part of the leaf policy group to be created." }, "lag_type_name": { "type": "string", "description": "Selector for the type of leaf policy group we want to create.\nC(leaf) for Leaf Access Port Policy Group\nC(link) for Port Channel (PC)\nC(node) for Virtual Port Channel (VPC)" }, "cdp_policy_name": { "type": "string", "description": "Choice of cdp_policy to be used as part of the leaf policy group to be created." }, "descr": { "type": "string", "description": "Description for the leaf policy group to be created." }, "egress_data_plane_policing_policy_name": { "type": "string", "description": "Choice of egress_data_plane_policing_policy to be used as part of the leaf policy group to be created." }, "fibre_channel_interface_policy": { "type": "string", "description": "Choice of fibre_channel_interface_policy to be used as part of the leaf policy group to be created." }, "l2_interface_policy": { "type": "string", "description": "Choice of l2_interface_policy to be used as part of the leaf policy group to be created." }, "policy_group": { "type": "string", "description": "Name of the leaf policy group to be added/deleted." }, "l2_interface_policy_name": { "type": "string", "description": "Choice of l2_interface_policy to be used as part of the leaf policy group to be created." }, "link_level_policy": { "type": "string", "description": "Choice of link_level_policy to be used as part of the leaf policy group to be created." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "ingress_data_plane_policing_policy": { "type": "string", "description": "Choice of ingress_data_plane_policing_policy to be used as part of the leaf policy group to be created." }, "lldp_policy_name": { "type": "string", "description": "Choice of lldp_policy to be used as part of the leaf policy group to be created." }, "slow_drain_policy": { "type": "string", "description": "Choice of slow_drain_policy to be used as part of the leaf policy group to be created." }, "fibre_channel_interface_policy_name": { "type": "string", "description": "Choice of fibre_channel_interface_policy to be used as part of the leaf policy group to be created." }, "description": { "type": "string", "description": "Description for the leaf policy group to be created." }, "priority_flow_control_policy_name": { "type": "string", "description": "Choice of priority_flow_control_policy to be used as part of the leaf policy group to be created." }, "cdp_policy": { "type": "string", "description": "Choice of cdp_policy to be used as part of the leaf policy group to be created." }, "storm_control_interface_policy": { "type": "string", "description": "Choice of storm_control_interface_policy to be used as part of the leaf policy group to be created." }, "port_channel_policy": { "type": "string", "description": "Choice of port_channel_policy to be used as part of the leaf policy group to be created." }, "storm_control_interface_policy_name": { "type": "string", "description": "Choice of storm_control_interface_policy to be used as part of the leaf policy group to be created." }, "aep_name": { "type": "string", "description": "Choice of attached_entity_profile (AEP) to be used as part of the leaf policy group to be created." }, "monitoring_policy": { "type": "string", "description": "Choice of monitoring_policy to be used as part of the leaf policy group to be created." }, "link_level_policy_name": { "type": "string", "description": "Choice of link_level_policy to be used as part of the leaf policy group to be created." }, "monitoring_policy_name": { "type": "string", "description": "Choice of monitoring_policy to be used as part of the leaf policy group to be created." }, "name": { "type": "string", "description": "Name of the leaf policy group to be added/deleted." }, "aep": { "type": "string", "description": "Choice of attached_entity_profile (AEP) to be used as part of the leaf policy group to be created." }, "port_security_policy_name": { "type": "string", "description": "Choice of port_security_policy to be used as part of the leaf policy group to be created." }, "stp_interface_policy_name": { "type": "string", "description": "Choice of stp_interface_policy to be used as part of the leaf policy group to be created." }, "priority_flow_control_policy": { "type": "string", "description": "Choice of priority_flow_control_policy to be used as part of the leaf policy group to be created." }, "port_security_policy": { "type": "string", "description": "Choice of port_security_policy to be used as part of the leaf policy group to be created." }, "slow_drain_policy_name": { "type": "string", "description": "Choice of slow_drain_policy to be used as part of the leaf policy group to be created." }, "port_channel_policy_name": { "type": "string", "description": "Choice of port_channel_policy to be used as part of the leaf policy group to be created." } } }, "at": { "required": [ "count", "units" ], "type": "object", "description": "Use this module to schedule a command or script file to run once in the future.\nAll jobs are executed in the 'a' queue.", "properties": { "count": { "type": "string", "description": "The count of units in the future to execute the command or script file." }, "state": { "type": "string", "description": "Default: present\n\nThe state dictates if the command or script file should be evaluated as present(added) or absent(deleted)." }, "command": { "type": "string", "description": "A command to be executed in the future." }, "units": { "type": "string", "description": "The type of units in the future to execute the command or script file." }, "unique": { "description": "Default: no\n\nIf a matching job is present a new job will not be added.", "$ref": "#/definitions/ansible_truth" }, "script_file": { "type": "string", "description": "An existing script file to be executed in the future." } } }, "file": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Sets attributes of files, symlinks, and directories, or removes files/symlinks/directories. Many other modules support the same options as the C(file) module - including M(copy), M(template), and M(assemble).\nFor Windows targets, use the M(win_file) module instead.", "properties": { "src": { "type": "string", "description": "path of the file to link to (applies only to C(state=link) and C(state=hard)). Will accept absolute, relative and nonexisting paths. Relative paths are not expanded." }, "force": { "description": "Default: no\n\nforce the creation of the symlinks in two cases: the source file does not exist (but will appear later); the destination exists and is a file (so, we need to unlink the \"path\" file and create symlink to the \"src\" file in place of it).", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" }, "dest": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" }, "recurse": { "description": "Default: no\n\nrecursively set the specified file attributes (applies only to directories)", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: file\n\nIf C(directory), all intermediate subdirectories will be created if they do not exist. Since Ansible 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 C(touch) value or 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. Note that C(absent) will not cause C(file) to fail if the C(path) does not exist as the state did not change. 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)." }, "follow": { "description": "Default: yes\n\nThis flag indicates that filesystem links, if they exist, should be followed.\nPrevious to Ansible 2.5, this was C(no) by default.", "$ref": "#/definitions/ansible_truth" }, "path": { "type": "string", "description": "path to the file being managed. Aliases: I(dest), I(name)" } } }, "win_stat": { "required": [ "path" ], "type": "object", "description": "Returns information about a Windows file.\nFor non-Windows targets, use the M(stat) module instead.", "properties": { "path": { "type": "string", "description": "The full path of the file/object to get the facts of; both forward and back slashes are accepted." }, "get_md5": { "description": "Default: no\n\nWhether to return the checksum sum of the file. Between Ansible 1.9 and 2.2 this is no longer an MD5, but a SHA1 instead. As of Ansible 2.3 this is back to an MD5. Will return None if host is unable to use specified algorithm.\nThe default of this option changed from C(yes) to C(no) in Ansible 2.5 and will be removed altogether in Ansible 2.9.\nUse C(get_checksum=true) with C(checksum_algorithm=md5) to return an md5 hash under the C(checksum) return value.", "$ref": "#/definitions/ansible_truth" }, "get_checksum": { "description": "Default: yes\n\nWhether to return a checksum of the file (default sha1)", "$ref": "#/definitions/ansible_truth" }, "checksum_algorithm": { "type": "string", "description": "Default: sha1\n\nAlgorithm to determine checksum of file. Will throw an error if the host is unable to use specified algorithm." } } }, "wakeonlan": { "required": [ "mac" ], "type": "object", "description": "The M(wakeonlan) module sends magic Wake-on-LAN (WoL) broadcast packets.", "properties": { "broadcast": { "type": "string", "description": "Default: 255.255.255.255\n\nNetwork broadcast address to use for broadcasting magic Wake-on-LAN packet" }, "mac": { "type": "string", "description": "MAC address to send Wake-on-LAN broadcast packet for" }, "port": { "type": "string", "description": "Default: 7\n\nUDP port to use for magic Wake-on-LAN packet" } } }, "cs_nic": { "allOf": [ { "allOf": [ { "not": { "required": [ "vm_guest_ip", "secondary_ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "vm", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "vm" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and remove secondary IPs to and from a NIC.", "properties": { "secondary_ip": { "type": "string", "description": "Secondary IP address to be added to the instance nic.\nIf not set, the API always returns a new IP address and idempotency is not given." }, "vm_guest_ip": { "type": "string", "description": "Secondary IP address to be added to the instance nic.\nIf not set, the API always returns a new IP address and idempotency is not given." }, "account": { "type": "string", "description": "Account the instance is related to." }, "poll_async": { "description": "Default: yes\n\nPoll async jobs until job has finished.", "$ref": "#/definitions/ansible_truth" }, "network": { "type": "string", "description": "Name of the network.\nRequired to find the NIC if instance has multiple networks assigned." }, "zone": { "type": "string", "description": "Name of the zone in which the instance is deployed in.\nIf not set, default zone is used." }, "domain": { "type": "string", "description": "Domain the instance is related to." }, "vm": { "type": "string", "description": "Name of instance." }, "project": { "type": "string", "description": "Name of the project the instance is deployed in." }, "state": { "type": "string", "description": "Default: present\n\nState of the ipaddress." }, "vpc": { "type": "string", "description": "Name of the VPC the C(vm) is related to." }, "name": { "type": "string", "description": "Name of instance." } } }, "quantum_router_gateway": { "required": [ "router_name", "login_tenant_name", "login_password", "login_username", "network_name" ], "type": "object", "description": "Creates/Removes a gateway interface from the router, used to associate a external network with a router to route external traffic.", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "network_name": { "type": "string", "description": "Default: None\n\nName of the external network which should be attached to the router." }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone URL for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "router_name": { "type": "string", "description": "Default: None\n\nName of the router to which the gateway should be attached." } } }, "aos_blueprint_param": { "required": [ "blueprint", "session" ], "type": "object", "description": "Apstra AOS Blueprint Parameter module let you manage your Blueprint Parameter easily. You can create access, define and delete Blueprint Parameter. The list of Parameters supported is different per Blueprint. The option I(get_param_list) can help you to access the list of supported Parameters for your blueprint. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "blueprint": { "type": "string", "description": "Blueprint Name or Id as defined in AOS." }, "name": { "type": "string", "description": "Name of blueprint parameter, as defined by AOS design template. You can use the option I(get_param_list) to get the complete list of supported parameters for your blueprint." }, "value": { "type": "string", "description": "Blueprint parameter value. This value may be transformed by using the I(param_map) field; used when the blueprint parameter requires an AOS unique ID value." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Blueprint Parameter (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "param_map": { "type": "string", "description": "Defines the aos-pyez collection that will is used to map the user-defined item name into the AOS unique ID value. For example, if the caller provides an IP address pool I(param_value) called \"Server-IpAddrs\", then the aos-pyez collection is 'IpPools'. Some I(param_map) are already defined by default like I(logical_device_maps)." }, "get_param_list": { "type": "string", "description": "Get the complete list of supported parameters for this blueprint and the description of those parameters." } } }, "nxos_acl_interface": { "required": [ "interface", "direction", "name" ], "type": "object", "description": "Manages applying ACLs to interfaces.", "properties": { "interface": { "type": "string", "description": "Full name of interface, e.g. I(Ethernet1/1)." }, "direction": { "type": "string", "description": "Direction ACL to be applied in on the interface." }, "name": { "type": "string", "description": "Case sensitive name of the access list (ACL)." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." } } }, "win_iis_virtualdirectory": { "required": [ "name", "site" ], "type": "object", "description": "Creates, Removes and configures a virtual directory in IIS.", "properties": { "application": { "type": "string", "description": "The application under which the virtual directory is created or exists." }, "state": { "type": "string", "description": "Default: present\n\nWhether to add or remove the specified virtual directory" }, "name": { "type": "string", "description": "The name of the virtual directory to create or remove" }, "physical_path": { "type": "string", "description": "The physical path to the folder in which the new virtual directory is created. The specified folder must already exist." }, "site": { "type": "string", "description": "The site name under which the virtual directory is created or exists." } } }, "pear": { "required": [ "name" ], "type": "object", "description": "Manage PHP packages with the pear package manager.", "properties": { "state": { "type": "string", "description": "Default: present\n\nDesired state of the package." }, "executable": { "type": "string", "description": "Path to the pear executable" }, "name": { "type": "string", "description": "Name of the package to install, upgrade, or remove." } } }, "bigip_hostname": { "required": [ "hostname" ], "type": "object", "description": "Manage the hostname of a BIG-IP.", "properties": { "hostname": { "type": "string", "description": "Hostname of the BIG-IP host." } } }, "nso_show": { "required": [ "path" ], "type": "object", "description": "This module provides support for displaying data from Cisco NSO.", "properties": { "path": { "type": "string", "description": "Path to NSO data." }, "operational": { "description": "Controls whether or not operational data is included in the result.\n", "$ref": "#/definitions/ansible_truth" } } }, "infini_export": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "export", "path" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "export" ], "type": "object" }, { "required": [ "path" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module creates, deletes or modifies NFS exports on Infinibox.", "properties": { "inner_path": { "type": "string", "description": "Default: /\n\nInternal path of the export." }, "client_list": { "type": "array", "description": "Default: All Hosts(*), RW, no_root_squash: True\n\nList of dictionaries with client entries. See examples. Check infini_export_client module to modify individual NFS client entries for export." }, "name": { "type": "string", "description": "Export name. Should always start with C(/). (ex. name=/data)" }, "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies export when present and removes when absent." }, "export": { "type": "string", "description": "Export name. Should always start with C(/). (ex. name=/data)" }, "filesystem": { "type": "string", "description": "Name of exported file system." }, "path": { "type": "string", "description": "Export name. Should always start with C(/). (ex. name=/data)" } } }, "oneview_logical_interconnect_group_facts": { "type": "object", "description": "Retrieve facts about one or more of the Logical Interconnect Groups from OneView", "properties": { "name": { "type": "string", "description": "Logical Interconnect Group name." } } }, "aws_api_gateway": { "type": "object", "description": "Allows for the management of API Gateway APIs\nNormally you should give the api_id since there is no other stable guaranteed unique identifier for the API. If you do not give api_id then a new API will be create each time this is run.\nBeware that there are very hard limits on the rate that you can call API Gateway's REST API. You may need to patch your boto. See https://github.com/boto/boto3/issues/876 and discuss with your AWS rep.\nswagger_file and swagger_text are passed directly on to AWS transparently whilst swagger_dict is an ansible dict which is converted to JSON before the API definitions are uploaded.", "properties": { "swagger_file": { "type": "string", "description": "JSON or YAML file containing swagger definitions for API. Exactly one of swagger_file, swagger_text or swagger_dict must be present." }, "swagger_dict": { "type": "string", "description": "Swagger definitions API ansible dictionary which will be converted to JSON and uploaded." }, "deploy_desc": { "type": "string", "description": "Default: Automatic deployment by Ansible.\n\nDescription of the deployment - recorded and visible in the AWS console." }, "api_id": { "type": "string", "description": "The ID of the API you want to manage." }, "state": { "type": "string", "description": "Default: present\n\nNOT IMPLEMENTED Create or delete API - currently we always create." }, "swagger_text": { "type": "string", "description": "Swagger definitions for API in JSON or YAML as a string direct from playbook." }, "stage": { "type": "string", "description": "The name of the stage the API should be deployed to." } } }, "nxos_aaa_server": { "required": [ "state", "server_type" ], "type": "object", "description": "Manages AAA server global configuration", "properties": { "server_timeout": { "type": "string", "description": "Global AAA server timeout period, in seconds. Range is 1-60. Device default is 5." }, "server_type": { "type": "string", "description": "The server type is either radius or tacacs." }, "encrypt_type": { "type": "string", "description": "The state of encryption applied to the entered global key. O clear text, 7 encrypted. Type-6 encryption is not supported." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "deadtime": { "type": "string", "description": "Duration for which a non-reachable AAA server is skipped, in minutes. Range is 1-1440. Device default is 0." }, "directed_request": { "type": "string", "description": "Enables direct authentication requests to AAA server. Device default is disabled." }, "global_key": { "type": "string", "description": "Global AAA shared secret." } } }, "aws_waf_web_acl": { "required": [ "name" ], "type": "object", "description": "Read the AWS documentation for WAF U(https://aws.amazon.com/documentation/waf/)", "properties": { "metric_name": { "type": "string", "description": "A friendly name or description for the metrics for this WebACL\nThe name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.\nYou can't change metric_name after you create the WebACL\nMetric name will default to I(name) with disallowed characters stripped out" }, "purge_rules": { "type": "string", "description": "Whether to remove rules that aren't passed with C(rules). Defaults to false" }, "rules": { "type": "string", "description": "A list of rules that the Web ACL will enforce.\nEach rule must contain I(name), I(action), I(priority) keys.\nPriorities must be unique, but not necessarily consecutive. Lower numbered priorities are evalauted first.\nThe I(type) key can be passed as C(rate_based), it defaults to C(regular)" }, "state": { "type": "string", "description": "Default: present\n\nwhether the Web ACL should be present or absent" }, "default_action": { "type": "string", "description": "The action that you want AWS WAF to take when a request doesn't match the criteria specified in any of the Rule objects that are associated with the WebACL" }, "name": { "type": "string", "description": "Name of the Web Application Firewall ACL to manage" } } }, "azure_rm_containerinstance": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete an Azure Container Instance.", "properties": { "registry_username": { "type": "string", "description": "The username to log in container image registry server." }, "name": { "type": "string", "description": "The name of the container group." }, "resource_group": { "type": "string", "description": "Name of resource group." }, "force_update": { "description": "Force update of existing container instance. Any update will result in deletion and recreation of existing containers.", "$ref": "#/definitions/ansible_truth" }, "ports": { "type": "array", "description": "List of ports exposed within the container group." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the container instance. Use 'present' to create or update an container instance and 'absent' to delete it." }, "registry_login_server": { "type": "string", "description": "The container image registry login server." }, "location": { "type": "string", "description": "Valid azure location. Defaults to location of the resource group." }, "registry_password": { "type": "string", "description": "The password to log in container image registry server." }, "ip_address": { "type": "string", "description": "Default: None\n\nThe IP address type of the container group (default is 'none')" }, "os_type": { "type": "string", "description": "Default: linux\n\nThe OS type of containers." }, "containers": { "type": "array", "description": "List of containers." } } }, "azure_rm_virtualnetwork": { "allOf": [ { "allOf": [ { "not": { "required": [ "address_prefixes_cidr", "address_prefixes" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update or delete a virtual networks. Allows setting and updating the available IPv4 address ranges and setting custom DNS servers. Use the azure_rm_subnet module to associate subnets with a virtual network.", "properties": { "dns_servers": { "type": "string", "description": "Custom list of DNS servers. Maximum length of two. The first server in the list will be treated as the Primary server. This is an explicit list. Existing DNS servers will be replaced with the specified list. Use the purge_dns_servers option to remove all custom DNS servers and revert to default Azure servers." }, "name": { "type": "string", "description": "name of the virtual network." }, "resource_group": { "type": "string", "description": "name of resource group." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the virtual network. Use 'present' to create or update and 'absent' to delete." }, "address_prefixes_cidr": { "type": "array", "description": "List of IPv4 address ranges where each is formatted using CIDR notation. Required when creating a new virtual network or using purge_address_prefixes." }, "purge_dns_servers": { "type": "string", "description": "Use with state present to remove existing DNS servers, reverting to default Azure servers. Mutually exclusive with dns_servers." }, "purge_address_prefixes": { "type": "string", "description": "Use with state present to remove any existing address_prefixes." }, "address_prefixes": { "type": "array", "description": "List of IPv4 address ranges where each is formatted using CIDR notation. Required when creating a new virtual network or using purge_address_prefixes." } } }, "nxos_igmp": { "type": "object", "description": "Manages IGMP global configuration configuration settings.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManages desired state of the resource." }, "enforce_rtr_alert": { "type": "string", "description": "Enables or disables the enforce router alert option check for IGMPv2 and IGMPv3 packets." }, "restart": { "type": "string", "description": "Restarts the igmp process (using an exec config command)." }, "flush_routes": { "type": "string", "description": "Removes routes when the IGMP process is restarted. By default, routes are not flushed." } } }, "aci_encap_pool_range": { "allOf": [ { "allOf": [ { "not": { "required": [ "range_end", "end" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "range_start", "start" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool_allocation_mode", "pool_mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool_type", "type" ], "type": "object" } }, { "oneOf": [ { "required": [ "pool_type" ], "type": "object" }, { "required": [ "type" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "allocation_mode", "mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pool", "pool_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "range_name", "name", "range" ], "type": "object" } } ] } ], "type": "object", "description": "Manage vlan, vxlan, and vsan ranges that are assigned to pools on Cisco ACI fabrics.", "properties": { "range_end": { "type": "string", "description": "The end of encap range." }, "range_start": { "type": "string", "description": "The start of the encap range." }, "pool_allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "end": { "type": "string", "description": "The end of encap range." }, "description": { "type": "string", "description": "Description for the pool range." }, "descr": { "type": "string", "description": "Description for the pool range." }, "pool_name": { "type": "string", "description": "The name of the pool that the range should be assigned to." }, "range": { "type": "string", "description": "The name to give to the encap range." }, "name": { "type": "string", "description": "The name to give to the encap range." }, "pool_type": { "type": "string", "description": "The encap type of C(pool)." }, "start": { "type": "string", "description": "The start of the encap range." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "allocation_mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "type": { "type": "string", "description": "The encap type of C(pool)." }, "pool_mode": { "type": "string", "description": "The method used for allocating encaps to resources.\nOnly vlan and vsan support allocation modes." }, "pool": { "type": "string", "description": "The name of the pool that the range should be assigned to." }, "range_name": { "type": "string", "description": "The name to give to the encap range." } } }, "enos_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Lenovo ENOS configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with ENOS configuration sections in a deterministic way.", "properties": { "comment": { "type": "string", "description": "Default: configured by enos_config\n\nAllows a commit description to be specified to be included when the configuration is committed. If the configuration is not changed or committed, this argument is ignored." }, "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "admin": { "type": "string", "description": "Enters into administration configuration mode for making config changes to the device." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "selinux": { "required": [ "state" ], "type": "object", "description": "Configures the SELinux mode and policy. A reboot may be required after usage. Ansible will not issue this reboot but will let you know when it is required.", "properties": { "policy": { "type": "string", "description": "name of the SELinux policy to use (example: C(targeted)) will be required if state is not C(disabled)" }, "state": { "type": "string", "description": "The SELinux mode" }, "conf": { "type": "string", "description": "Default: /etc/selinux/config\n\npath to the SELinux configuration file, if non-standard" } } }, "gce_lb": { "allOf": [ { "allOf": [ { "not": { "required": [ "members", "nodes" ], "type": "object" } } ] } ], "type": "object", "description": "This module can create and destroy Google Compute Engine C(loadbalancer) and C(httphealthcheck) resources. The primary LB resource is the C(load_balancer) resource and the health check parameters are all prefixed with I(httphealthcheck). The full documentation for Google Compute Engine load balancing is at U(https://developers.google.com/compute/docs/load-balancing/). However, the ansible module simplifies the configuration by following the libcloud model. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "httphealthcheck_host": { "type": "string", "description": "host header to pass through on HTTP check requests" }, "protocol": { "type": "string", "description": "Default: tcp\n\nthe protocol used for the load-balancer packet forwarding, tcp or udp" }, "name": { "type": "string", "description": "name of the load-balancer resource" }, "external_ip": { "type": "string", "description": "the external static IPv4 (or auto-assigned) address for the LB" }, "service_account_email": { "type": "string", "description": "service account email" }, "region": { "type": "string", "description": "the GCE region where the load-balancer is defined" }, "httphealthcheck_unhealthy_count": { "type": "string", "description": "Default: 2\n\nnumber of consecutive failed checks before marking a node unhealthy" }, "httphealthcheck_healthy_count": { "type": "string", "description": "Default: 2\n\nnumber of consecutive successful checks before marking a node healthy" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'." }, "httphealthcheck_path": { "type": "string", "description": "Default: /\n\nthe url path to use for HTTP health checking" }, "port_range": { "type": "string", "description": "the port (range) to forward, e.g. 80 or 8000-8888 defaults to all ports" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the LB" }, "httphealthcheck_timeout": { "type": "string", "description": "Default: 5\n\nthe timeout in seconds before a request is considered a failed check" }, "members": { "type": "string", "description": "a list of zone/nodename pairs, e.g ['us-central1-a/www-a', ...]" }, "credentials_file": { "type": "string", "description": "path to the JSON file associated with the service account email" }, "httphealthcheck_port": { "type": "string", "description": "Default: 80\n\nthe TCP port to use for HTTP health checking" }, "httphealthcheck_name": { "type": "string", "description": "the name identifier for the HTTP health check" }, "nodes": { "type": "string", "description": "a list of zone/nodename pairs, e.g ['us-central1-a/www-a', ...]" }, "project_id": { "type": "string", "description": "your GCE project ID" }, "httphealthcheck_interval": { "type": "string", "description": "Default: 5\n\nthe duration in seconds between each health check request" } } }, "os_keystone_domain_facts": { "required": [ "name" ], "type": "object", "description": "Retrieve facts about a one or more OpenStack domains", "properties": { "name": { "type": "string", "description": "Name or ID of the domain" }, "filters": { "type": "object", "description": "Default: None\n\nA dictionary of meta data to use for further filtering. Elements of this dictionary may be additional dictionaries." } } }, "os_recordset": { "required": [ "name", "zone", "records", "recordset_type" ], "type": "object", "description": "Manage OpenStack DNS recordsets. Recordsets can be created, deleted or updated. Only the I(records), I(description), and I(ttl) values can be updated.", "properties": { "name": { "type": "string", "description": "Name of the recordset" }, "zone": { "type": "string", "description": "Zone managing the recordset" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "records": { "type": "array", "description": "List of recordset definitions" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "ttl": { "type": "string", "description": "Default: None\n\nTTL (Time To Live) value in seconds" }, "recordset_type": { "type": "string", "description": "Recordset type" }, "description": { "type": "string", "description": "Default: None\n\nDescription of the recordset" } } }, "zabbix_maintenance": { "allOf": [ { "allOf": [ { "not": { "required": [ "server_url", "url" ], "type": "object" } }, { "oneOf": [ { "required": [ "server_url" ], "type": "object" }, { "required": [ "url" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "host_names", "host_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "host_groups", "host_group" ], "type": "object" } } ] } ], "type": "object", "description": "This module will let you create Zabbix maintenance windows.", "properties": { "http_login_password": { "type": "string", "description": "Default: None\n\nBasic Auth password" }, "timeout": { "type": "string", "description": "Default: 10\n\nThe timeout of API request (seconds)." }, "name": { "type": "string", "description": "Unique name of maintenance window." }, "url": { "type": "string", "description": "Url of Zabbix server, with protocol (http or https). C(url) is an alias for C(server_url)." }, "login_user": { "type": "string", "description": "Zabbix user name." }, "http_login_user": { "type": "string", "description": "Default: None\n\nBasic Auth login" }, "server_url": { "type": "string", "description": "Url of Zabbix server, with protocol (http or https). C(url) is an alias for C(server_url)." }, "host_names": { "type": "string", "description": "Hosts to manage maintenance window for. Separate multiple hosts with commas. C(host_name) is an alias for C(host_names). B(Required) option when C(state) is I(present) and no C(host_groups) specified." }, "host_group": { "type": "string", "description": "Host groups to manage maintenance window for. Separate multiple groups with commas. C(host_group) is an alias for C(host_groups). B(Required) option when C(state) is I(present) and no C(host_names) specified." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove a maintenance window." }, "host_name": { "type": "string", "description": "Hosts to manage maintenance window for. Separate multiple hosts with commas. C(host_name) is an alias for C(host_names). B(Required) option when C(state) is I(present) and no C(host_groups) specified." }, "host_groups": { "type": "string", "description": "Host groups to manage maintenance window for. Separate multiple groups with commas. C(host_group) is an alias for C(host_groups). B(Required) option when C(state) is I(present) and no C(host_names) specified." }, "login_password": { "type": "string", "description": "Zabbix user password." }, "collect_data": { "type": "string", "description": "Default: true\n\nType of maintenance. With data collection, or without." }, "minutes": { "type": "string", "description": "Default: 10\n\nLength of maintenance window in minutes." }, "desc": { "type": "string", "description": "Default: Created by Ansible\n\nShort description of maintenance window." } } }, "cl_img_install": { "required": [ "src" ], "type": "object", "description": "install a different version of Cumulus Linux in the inactive slot. For more details go the Image Management User Guide at U(http://docs.cumulusnetworks.com/).", "properties": { "src": { "type": "string", "description": "The full path to the Cumulus Linux binary image. Can be a local path, http or https URL. If the code version is in the name of the file, the module will assume this is the version of code you wish to install." }, "version": { "type": "string", "description": "Default: None\n\nInform the module of the exact version one is installing. This overrides the automatic check of version in the file name. For example, if the binary file name is called CumulusLinux-2.2.3.bin, and version is set to '2.5.0', then the module will assume it is installing '2.5.0' not '2.2.3'. If version is not included, then the module will assume '2.2.3' is the version to install." }, "switch_slot": { "type": "string", "description": "Default: no\n\nSwitch slots after installing the image. To run the installed code, reboot the switch." } } }, "nxos_gir_profile_management": { "required": [ "mode" ], "type": "object", "description": "Manage a maintenance-mode or normal-mode profile with configuration commands that can be applied during graceful removal or graceful insertion.", "properties": { "include_defaults": { "type": "string", "description": "Specify to retrieve or not the complete running configuration for module operations." }, "commands": { "type": "array", "description": "List of commands to be included into the profile." }, "config": { "type": "string", "description": "Specify the configuration string to be used for module operations." }, "mode": { "type": "string", "description": "Configure the profile as Maintenance or Normal mode." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." } } }, "kernel_blacklist": { "required": [ "name" ], "type": "object", "description": "Add or remove kernel modules from blacklist.", "properties": { "blacklist_file": { "type": "string", "description": "If specified, use this blacklist file instead of C(/etc/modprobe.d/blacklist-ansible.conf)." }, "state": { "type": "string", "description": "Default: present\n\nWhether the module should be present in the blacklist or absent." }, "name": { "type": "string", "description": "Name of kernel module to black- or whitelist." } } }, "nxos_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends an arbitrary command to an NXOS node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditionals." }, "commands": { "type": "string", "description": "The commands to send to the remote NXOS device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retires as expired.\nThe I(commands) argument also accepts an alternative form that allows for complex values that specify the command to run and the output format to return. This can be done on a command by command basis. The complex argument supports the keywords C(command) and C(output) where C(command) is the command to run and C(output) is one of 'text' or 'json'." }, "waitfor": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditional, the interval indicates how to long to wait before trying the command again." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "bigip_ucs": { "type": "object", "description": "Manage upload, installation and removal of UCS files.", "properties": { "force": { "type": "string", "description": "If C(yes) will upload the file every time and replace the file on the device. If C(no), the file will only be uploaded if it does not already exist. Generally should be C(yes) only in cases where you have reason to believe that the image was corrupted during upload." }, "reset_trust": { "type": "string", "description": "When specified, the device and trust domain certs and keys are not loaded from the UCS. Instead, a new set is regenerated." }, "no_platform_check": { "type": "string", "description": "Bypasses the platform check and allows a UCS that was created using a different platform to be installed. By default (without this option), a UCS created from a different platform is not allowed to be installed." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(installed), ensures that the UCS is uploaded and installed, on the system. When C(present), ensures that the UCS is uploaded. When C(absent), the UCS will be removed from the system. When C(installed), the uploading of the UCS is idempotent, however the installation of that configuration is not idempotent." }, "include_chassis_level_config": { "type": "string", "description": "During restore of the UCS file, include chassis level configuration that is shared among boot volume sets. For example, cluster default configuration." }, "passphrase": { "type": "string", "description": "Specifies the passphrase that is necessary to load the specified UCS file." }, "ucs": { "type": "string", "description": "The path to the UCS file to install. The parameter must be provided if the C(state) is either C(installed) or C(activated). When C(state) is C(absent), the full path for this parameter will be ignored and only the filename will be used to select a UCS for removal. Therefore you could specify C(/mickey/mouse/test.ucs) and this module would only look for C(test.ucs)." }, "no_license": { "type": "string", "description": "Performs a full restore of the UCS file and all the files it contains, with the exception of the license file. The option must be used to restore a UCS on RMA devices (Returned Materials Authorization)." } } }, "net_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on network devices.", "properties": { "name": { "type": "string", "description": "Name of the L3 interface." }, "purge": { "type": "string", "description": "Purge L3 interfaces not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration." }, "ipv4": { "type": "string", "description": "IPv4 of the L3 interface." }, "ipv6": { "type": "string", "description": "IPv6 of the L3 interface." }, "aggregate": { "type": "array", "description": "List of L3 interfaces definitions" } } }, "logentries": { "required": [ "path" ], "type": "object", "description": "Sends logs to LogEntries in realtime", "properties": { "path": { "type": "string", "description": "path to a log file" }, "state": { "type": "string", "description": "Default: present\n\nfollowing state of the log" }, "name": { "type": "string", "description": "name of the log" }, "logtype": { "type": "string", "description": "type of the log" } } }, "bigip_pool_member": { "allOf": [ { "allOf": [ { "not": { "required": [ "host", "address", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "host" ], "type": "object" }, { "required": [ "address" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages F5 BIG-IP LTM pool members via iControl SOAP API", "properties": { "session_state": { "type": "string", "description": "Set new session availability status for pool member" }, "ratio": { "type": "string", "description": "Pool member ratio weight. Valid values range from 1 through 100. New pool members -- unless overriden with this value -- default to 1." }, "description": { "type": "string", "description": "Pool member description" }, "monitor_state": { "type": "string", "description": "Set monitor availability status for pool member" }, "partition": { "type": "string", "description": "Default: Common\n\nPartition" }, "connection_limit": { "type": "string", "description": "Pool member connection limit. Setting this to 0 disables the limit." }, "host": { "type": "string", "description": "Pool member IP" }, "state": { "type": "string", "description": "Default: present\n\nPool member state" }, "preserve_node": { "type": "string", "description": "Default: no\n\nWhen state is absent and the pool member is no longer referenced in other pools, the default behavior removes the unused node o bject. Setting this to 'yes' disables this behavior." }, "address": { "type": "string", "description": "Pool member IP" }, "rate_limit": { "type": "string", "description": "Pool member rate limit (connections-per-second). Setting this to 0 disables the limit." }, "port": { "type": "string", "description": "Pool member port" }, "pool": { "type": "string", "description": "Pool name. This pool must exist." }, "name": { "type": "string", "description": "Pool member IP" } } }, "nios_network": { "allOf": [ { "allOf": [ { "not": { "required": [ "network", "name", "cidr" ], "type": "object" } }, { "oneOf": [ { "required": [ "network" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "cidr" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds and/or removes instances of network objects from Infoblox NIOS servers. This module manages NIOS C(network) objects using the Infoblox WAPI interface over REST.", "properties": { "comment": { "type": "string", "description": "Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance." }, "network": { "type": "string", "description": "Specifies the network to add or remove from the system. The value should use CIDR notation." }, "network_view": { "type": "string", "description": "Default: default\n\nConfigures the name of the network view to associate with this configured instance." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the intended state of the instance of the object on the NIOS server. When this value is set to C(present), the object is configured on the device and when this value is set to C(absent) the value is removed (if necessary) from the device." }, "extattrs": { "type": "string", "description": "Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration." }, "cidr": { "type": "string", "description": "Specifies the network to add or remove from the system. The value should use CIDR notation." }, "options": { "type": "string", "description": "Configures the set of DHCP options to be included as part of the configured network instance. This argument accepts a list of values (see suboptions). When configuring suboptions at least one of C(name) or C(num) must be specified." }, "name": { "type": "string", "description": "Specifies the network to add or remove from the system. The value should use CIDR notation." } } }, "os_floating_ip": { "allOf": [ { "allOf": [ { "not": { "required": [ "nat_destination", "fixed_network", "internal_network" ], "type": "object" } } ] } ], "type": "object", "description": "Add or Remove a floating IP to an instance", "properties": { "purge": { "type": "string", "description": "When I(state) is absent, indicates whether or not to delete the floating IP completely, or only detach it from the server. Default is to detach only." }, "fixed_address": { "type": "string", "description": "To which fixed IP of server the floating IP address should be attached to." }, "network": { "type": "string", "description": "The name or ID of a neutron external network or a nova pool name." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "internal_network": { "type": "string", "description": "Default: None\n\nThe name or id of a neutron private network that the fixed IP to attach floating IP is on" }, "wait": { "type": "string", "description": "When attaching a floating IP address, specify whether we should wait for it to appear as attached." }, "nat_destination": { "type": "string", "description": "Default: None\n\nThe name or id of a neutron private network that the fixed IP to attach floating IP is on" }, "fixed_network": { "type": "string", "description": "Default: None\n\nThe name or id of a neutron private network that the fixed IP to attach floating IP is on" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "floating_ip_address": { "type": "string", "description": "A floating IP address to attach or to detach. Required only if I(state) is absent. When I(state) is present can be used to specify a IP address to attach." }, "timeout": { "type": "string", "description": "Default: 60\n\nTime to wait for an IP address to appear as attached. See wait." }, "server": { "type": "string", "description": "The name or ID of the instance to which the IP address should be assigned." }, "reuse": { "type": "string", "description": "When I(state) is present, and I(floating_ip_address) is not present, this parameter can be used to specify whether we should try to reuse a floating IP address already allocated to the project." } } }, "win_feature": { "required": [ "name" ], "type": "object", "description": "Installs or uninstalls Windows Roles or Features on Windows Server. This module uses the Add/Remove-WindowsFeature Cmdlets on Windows 2008 R2 and Install/Uninstall-WindowsFeature Cmdlets on Windows 2012, which are not available on client os machines.", "properties": { "name": { "type": "string", "description": "Names of roles or features to install as a single feature or a comma-separated list of features." }, "include_management_tools": { "description": "Default: no\n\nAdds the corresponding management tools to the specified feature.\nNot supported in Windows 2008 R2 and will be ignored.", "$ref": "#/definitions/ansible_truth" }, "include_sub_features": { "description": "Default: no\n\nAdds all subfeatures of the specified feature.", "$ref": "#/definitions/ansible_truth" }, "source": { "type": "string", "description": "Specify a source to install the feature from.\nNot supported in Windows 2008 R2 and will be ignored.\nCan either be C({driveletter}:\\sources\\sxs) or C(\\\\{IP}\\share\\sources\\sxs)." }, "state": { "type": "string", "description": "Default: present\n\nState of the features or roles on the system." }, "restart": { "description": "Default: no\n\nRestarts the computer automatically when installation is complete, if restarting is required by the roles or features installed.\nDEPRECATED in Ansible 2.4, as unmanaged reboots cause numerous issues under Ansible. Check the C(reboot_required) return value from this module to determine if a reboot is necessary, and if so, use the M(win_reboot) action to perform it.", "$ref": "#/definitions/ansible_truth" } } }, "win_service": { "required": [ "name" ], "type": "object", "description": "Manage and query Windows services.\nFor non-Windows targets, use the M(service) module instead.", "properties": { "username": { "type": "string", "description": "The username to set the service to start as.\nThis and the C(password) argument must be supplied together when using a local or domain account.\nSet to C(LocalSystem) to use the SYSTEM account." }, "display_name": { "type": "string", "description": "The display name to set for the service." }, "description": { "type": "string", "description": "The description to set for the service." }, "force_dependent_services": { "description": "Default: no\n\nIf C(yes), stopping or restarting a service with dependent services will force the dependent services to stop or restart also.\nIf C(no), stopping or restarting a service with dependent services may fail.", "$ref": "#/definitions/ansible_truth" }, "dependency_action": { "type": "string", "description": "Default: set\n\nUsed in conjunction with C(dependency) to either add the dependencies to the existing service dependencies.\nRemove the dependencies to the existing dependencies.\nSet the dependencies to only the values in the list replacing the existing dependencies." }, "name": { "type": "string", "description": "Name of the service.\nIf only the name parameter is specified, the module will report on whether the service exists or not without making any changes." }, "start_mode": { "type": "string", "description": "Set the startup type for the service.\nC(delayed) added in Ansible 2.3" }, "state": { "type": "string", "description": "C(started)/C(stopped)/C(absent)/C(pause) are idempotent actions that will not run commands unless necessary.\nC(restarted) will always bounce the service.\nC(absent) added in Ansible 2.3\nC(pause) was added in Ansible 2.4\nOnly services that support the paused state can be paused, you can check the return value C(can_pause_and_continue).\nYou can only pause a service that is already started." }, "dependencies": { "type": "string", "description": "A list of service dependencies to set for this particular service.\nThis should be a list of service names and not the display name of the service.\nThis works by C(dependency_action) to either add/remove or set the services in this list." }, "path": { "type": "string", "description": "The path to the executable to set for the service." }, "password": { "type": "string", "description": "The password to set the service to start as.\nThis and the C(username) argument must be supplied together.\nIf specifying LocalSystem, NetworkService or LocalService this field must be an empty string and not null." }, "desktop_interact": { "description": "Default: no\n\nWhether to allow the service user to interact with the desktop.\nThis should only be set to true when using the LocalSystem username.", "$ref": "#/definitions/ansible_truth" } } }, "ec2_elb": { "required": [ "instance_id", "state" ], "type": "object", "description": "This module de-registers or registers an AWS EC2 instance from the ELBs that it belongs to.\nReturns fact \"ec2_elbs\" which is a list of elbs attached to the instance if state=absent is passed as an argument.\nWill be marked changed when called only if there are ELBs found to operate on.", "properties": { "instance_id": { "type": "string", "description": "EC2 Instance ID" }, "state": { "type": "string", "description": "register or deregister the instance" }, "wait_timeout": { "type": "string", "description": "Number of seconds to wait for an instance to change state. If 0 then this module may return an error if a transient error occurs. If non-zero then any transient errors are ignored until the timeout is reached. Ignored when wait=no." }, "ec2_elbs": { "type": "array", "description": "Default: None\n\nList of ELB names, required for registration. The ec2_elbs fact should be used if there was a previous de-register." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to \"no\", SSL certificates will not be validated for boto versions >= 2.6.0." }, "enable_availability_zone": { "type": "string", "description": "Default: True\n\nWhether to enable the availability zone of the instance on the target ELB if the availability zone has not already been enabled. If set to no, the task will fail if the availability zone is not enabled on the ELB." }, "wait": { "type": "string", "description": "Default: True\n\nWait for instance registration or deregistration to complete successfully before returning." } } }, "ovirt_api_facts": { "type": "object", "description": "Retrieve facts about the oVirt/RHV API.", "properties": {} }, "win_tempfile": { "type": "object", "description": "Creates temporary files and directories.\nFor non-Windows targets, please use the M(tempfile) module instead.", "properties": { "path": { "type": "string", "description": "Default: %TEMP%\n\nLocation where temporary file or directory should be created.\nIf path is not specified default system temporary directory (%TEMP%) will be used." }, "state": { "type": "string", "description": "Default: file\n\nWhether to create file or directory." }, "prefix": { "type": "string", "description": "Default: ansible.\n\nPrefix of file/directory name created by module." }, "suffix": { "type": "string", "description": "Suffix of file/directory name created by module." } } }, "win_reboot": { "type": "object", "description": "Reboot a Windows machine, wait for it to go down, come back up, and respond to commands.", "properties": { "reboot_timeout_sec": { "type": "string", "description": "Default: 600\n\nMaximum seconds to wait for machine to re-appear on the network and respond to a test command\nThis timeout is evaluated separately for both network appearance and test command success (so maximum clock time is actually twice this value)" }, "pre_reboot_delay_sec": { "type": "string", "description": "Default: 2\n\nSeconds for shutdown to wait before requesting reboot" }, "shutdown_timeout_sec": { "type": "string", "description": "Default: 600\n\nMaximum seconds to wait for shutdown to occur\nIncrease this timeout for very slow hardware, large update applications, etc" }, "test_command": { "type": "string", "description": "Default: whoami\n\nCommand to expect success for to determine the machine is ready for management" }, "connect_timeout_sec": { "type": "string", "description": "Default: 5\n\nMaximum seconds to wait for a single successful TCP connection to the WinRM endpoint before trying again" } } }, "avi_alertemailconfig": { "required": [ "to_emails", "name" ], "type": "object", "description": "This module is used to configure AlertEmailConfig object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "to_emails": { "type": "string", "description": "Alerts are sent to the comma separated list of email recipients." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "cc_emails": { "type": "string", "description": "Alerts are copied to the comma separated list of email recipients." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "A user-friendly name of the email notification service." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for the object." } } }, "quantum_router_interface": { "required": [ "login_tenant_name", "login_password", "login_username", "subnet_name", "router_name" ], "type": "object", "description": "Attach/Detach a subnet interface to a router, to provide a gateway for the subnet.", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "tenant_name": { "type": "string", "description": "Default: None\n\nName of the tenant whose subnet has to be attached." }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone URL for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "subnet_name": { "type": "string", "description": "Default: None\n\nName of the subnet to whose interface should be attached to the router." }, "router_name": { "type": "string", "description": "Default: None\n\nName of the router to which the subnet's interface should be attached." } } }, "s3_sync": { "required": [ "file_root", "bucket", "mode" ], "type": "object", "description": "The S3 module is great, but it is very slow for a large volume of files- even a dozen will be noticeable. In addition to speed, it handles globbing, inclusions/exclusions, mime types, expiration mapping, recursion, cache control and smart directory mapping.", "properties": { "file_change_strategy": { "type": "string", "description": "Default: date_size\n\nDifference determination method to allow changes-only syncing. Unlike rsync, files are not patched- they are fully skipped or fully uploaded.\ndate_size will upload if file sizes don't match or if local file modified date is newer than s3's version\nchecksum will compare etag values based on s3's implementation of chunked md5s.\nforce will always upload all files." }, "file_root": { "type": "string", "description": "File/directory path for synchronization. This is a local path.\nThis root path is scrubbed from the key name, so subdirectories will remain as keys." }, "permission": { "type": "string", "description": "Canned ACL to apply to synced files.\nChanging this ACL only changes newly synced files, it does not trigger a full reupload." }, "bucket": { "type": "string", "description": "Bucket name." }, "include": { "type": "string", "description": "Default: *\n\nShell pattern-style file matching.\nUsed before exclude to determine eligible files (for instance, only \"*.gif\")\nFor multiple patterns, comma-separate them." }, "mode": { "type": "string", "description": "Default: push\n\nsync direction." }, "exclude": { "type": "string", "description": "Default: .*\n\nShell pattern-style file matching.\nUsed after include to remove files (for instance, skip \"*.txt\")\nFor multiple patterns, comma-separate them." }, "mime_map": { "type": "string", "description": "Dict entry from extension to MIME type. This will override any default/sniffed MIME type. For example C({\".txt\": \"application/text\", \".yml\": \"application/text\"})\n" }, "cache_control": { "type": "string", "description": "This is a string.\nCache-Control header set on uploaded objects.\nDirectives are separated by commmas." }, "key_prefix": { "type": "string", "description": "In addition to file path, prepend s3 path with this prefix. Module will add slash at end of prefix if necessary." }, "delete": { "type": "string", "description": "Remove remote files that exist in bucket but are not present in the file root." } } }, "avi_useraccountprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure UserAccountProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "max_concurrent_sessions": { "type": "string", "description": "Maximum number of concurrent sessions allowed.\nThere are unlimited sessions by default.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "name": { "type": "string", "description": "Name of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "account_lock_timeout": { "type": "string", "description": "Lock timeout period (in minutes).\nDefault is 30 minutes.\nDefault value when not specified in API or module is interpreted by Avi Controller as 30.\nUnits(MIN)." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "max_login_failure_count": { "type": "string", "description": "Number of login attempts before lockout.\nDefault is 3 attempts.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3." }, "max_password_history_count": { "type": "string", "description": "Maximum number of passwords to be maintained in the password history.\nDefault is 4 passwords.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "credentials_timeout_threshold": { "type": "string", "description": "The time period after which credentials expire.\nDefault is 180 days.\nDefault value when not specified in API or module is interpreted by Avi Controller as 180.\nUnits(DAYS)." } } }, "mysql_user": { "required": [ "name" ], "type": "object", "description": "Adds or removes a user from a MySQL database.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users." }, "name": { "type": "string", "description": "name of the user (role) to add or remove" }, "encrypted": { "type": "string", "description": "Default: no\n\nIndicate that the 'password' field is a `mysql_native_password` hash" }, "append_privs": { "type": "string", "description": "Default: no\n\nAppend the privileges defined by priv to the existing ones for this user instead of overwriting existing ones." }, "state": { "type": "string", "description": "Default: present\n\nWhether the user should exist. When C(absent), removes the user." }, "host_all": { "type": "string", "description": "Default: no\n\noverride the host option, making ansible apply changes to all hostnames for a given user. This option cannot be used when creating users" }, "sql_log_bin": { "type": "string", "description": "Default: yes\n\nWhether binary logging should be enabled or disabled for the connection." }, "host": { "type": "string", "description": "Default: localhost\n\nthe 'host' part of the MySQL username" }, "check_implicit_admin": { "type": "string", "description": "Default: no\n\nCheck if mysql allows login as root/nopassword before trying supplied credentials." }, "password": { "type": "string", "description": "set the user's password." }, "priv": { "type": "string", "description": "MySQL privileges string in the format: C(db.table:priv1,priv2)" } } }, "ec2_group": { "required": [ "name", "description" ], "type": "object", "description": "maintains ec2 security groups. This module has a dependency on python-boto >= 2.5", "properties": { "rules_egress": { "type": "array", "description": "List of firewall outbound rules to enforce in this group (see example). If none are supplied, a default all-out rule is assumed. If an empty list is supplied, no outbound rules will be enabled." }, "name": { "type": "string", "description": "Name of the security group." }, "purge_rules": { "type": "string", "description": "Default: true\n\nPurge existing rules on security group that are not found in rules" }, "rules": { "type": "array", "description": "List of firewall inbound rules to enforce in this group (see example). If none are supplied, a default all-out rule is assumed. If an empty list is supplied, no inbound rules will be enabled." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete a security group" }, "vpc_id": { "type": "string", "description": "ID of the VPC to create the group in." }, "purge_rules_egress": { "type": "string", "description": "Default: true\n\nPurge existing rules_egress on security group that are not found in rules_egress" }, "description": { "type": "string", "description": "Description of the security group." } } }, "junos_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on Juniper JUNOS network devices.", "properties": { "name": { "type": "string", "description": "Name of the L3 interface." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration." }, "ipv4": { "type": "string", "description": "IPv4 of the L3 interface." }, "ipv6": { "type": "string", "description": "IPv6 of the L3 interface." }, "aggregate": { "type": "array", "description": "List of L3 interfaces definitions" }, "unit": { "type": "string", "description": "Logical interface number." } } }, "cs_storage_pool": { "required": [ "name" ], "type": "object", "description": "Create, update, put into maintenance, disable, enable and remove storage pools.", "properties": { "managed": { "type": "string", "description": "Whether the storage pool should be managed by CloudStack.\nOnly considere on creation." }, "name": { "type": "string", "description": "Name of the storage pool." }, "zone": { "type": "string", "description": "Name of the zone in which the host should be deployed.\nIf not set, default zone is used." }, "capacity_iops": { "type": "string", "description": "Bytes CloudStack can provision from this storage pool." }, "hypervisor": { "type": "string", "description": "Required when creating a zone scoped pool." }, "storage_tags": { "type": "string", "description": "Tags associated with this storage pool." }, "cluster": { "type": "string", "description": "Name of the cluster." }, "state": { "type": "string", "description": "Default: present\n\nState of the storage pool." }, "capacity_bytes": { "type": "string", "description": "Bytes CloudStack can provision from this storage pool." }, "provider": { "type": "string", "description": "Default: DefaultPrimary\n\nName of the storage provider e.g. SolidFire, SolidFireShared, DefaultPrimary, CloudByte." }, "scope": { "type": "string", "description": "The scope of the storage pool.\nDefaults to cluster when C(cluster) is provided, otherwise zone." }, "pod": { "type": "string", "description": "Name of the pod." }, "allocation_state": { "type": "string", "description": "Allocation state of the storage pool." }, "storage_url": { "type": "string", "description": "URL of the storage pool.\nRequired if C(state=present)." } } }, "glance_image": { "required": [ "login_password", "login_username", "name", "login_tenant_name" ], "type": "object", "description": "Add or Remove images from the glance repository.", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "container_format": { "type": "string", "description": "Default: bare\n\nThe format of the container" }, "min_ram": { "type": "string", "description": "Default: None\n\nThe minimum ram required to deploy this image" }, "disk_format": { "type": "string", "description": "Default: qcow2\n\nThe format of the disk that is getting uploaded" }, "timeout": { "type": "string", "description": "Default: 180\n\nThe time to wait for the image process to complete in seconds" }, "copy_from": { "type": "string", "description": "Default: None\n\nA url from where the image can be downloaded, mutually exclusive with file parameter" }, "min_disk": { "type": "string", "description": "Default: None\n\nThe minimum disk space required to deploy this image" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "endpoint_type": { "type": "string", "description": "Default: publicURL\n\nThe name of the glance service's endpoint URL type" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "file": { "type": "string", "description": "Default: None\n\nThe path to the file which has to be uploaded, mutually exclusive with copy_from" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "owner": { "type": "string", "description": "Default: None\n\nThe owner of the image" }, "is_public": { "type": "string", "description": "Default: yes\n\nWhether the image can be accessed publicly" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the image" } } }, "consul_session": { "type": "object", "description": "allows the addition, modification and deletion of sessions in a consul cluster. These sessions can then be used in conjunction with key value pairs to implement distributed locks. In depth documentation for working with sessions can be found here http://www.consul.io/docs/internals/sessions.html", "properties": { "node": { "type": "string", "description": "Default: None\n\nthe name of the node that with which the session will be associated. by default this is the name of the agent." }, "datacenter": { "type": "string", "description": "Default: None\n\nname of the datacenter in which the session exists or should be created." }, "name": { "type": "string", "description": "Default: None\n\nthe name that should be associated with the session. This is opaque to Consul and not required." }, "host": { "type": "string", "description": "Default: localhost\n\nhost of the consul agent defaults to localhost" }, "port": { "type": "string", "description": "Default: 8500\n\nthe port on which the consul agent is running" }, "delay": { "type": "string", "description": "Default: 15\n\nthe optional lock delay that can be attached to the session when it is created. Locks for invalidated sessions ar blocked from being acquired until this delay has expired. Durations are in seconds" }, "state": { "type": "string", "description": "Default: present\n\nwhether the session should be present i.e. created if it doesn't exist, or absent, removed if present. If created, the ID for the session is returned in the output. If absent, the name or ID is required to remove the session. Info for a single session, all the sessions for a node or all available sessions can be retrieved by specifying info, node or list for the state; for node or info, the node name or session id is required as parameter." }, "behavior": { "type": "string", "description": "Default: release\n\nthe optional behavior that can be attached to the session when it is created. This can be set to either ‘release’ or ‘delete’. This controls the behavior when a session is invalidated." }, "scheme": { "type": "string", "description": "Default: http\n\nthe protocol scheme on which the consul agent is running" }, "validate_certs": { "type": "string", "description": "Default: True\n\nwhether to verify the tls certificate of the consul agent" }, "checks": { "type": "string", "description": "Default: None\n\na list of checks that will be used to verify the session health. If all the checks fail, the session will be invalidated and any locks associated with the session will be release and can be acquired once the associated lock delay has expired." } } }, "ec2_win_password": { "required": [ "instance_id", "key_file" ], "type": "object", "description": "Gets the default administrator password from any EC2 Windows instance. The instance is referenced by its id (e.g. i-XXXXXXX). This module has a dependency on python-boto.", "properties": { "instance_id": { "type": "string", "description": "The instance id to get the password data from." }, "key_file": { "type": "string", "description": "Path to the file containing the key pair used on the instance." }, "wait_timeout": { "type": "string", "description": "Default: 120\n\nNumber of seconds to wait before giving up." }, "key_passphrase": { "type": "string", "description": "The passphrase for the instance key pair. The key must use DES or 3DES encryption for this module to decrypt it. You can use openssl to convert your password protected keys if they do not use DES or 3DES. ex) openssl rsa -in current_key -out new_key -des3." }, "wait": { "type": "string", "description": "Default: no\n\nWhether or not to wait for the password to be available before returning." } } }, "sros_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "defaults", "detail" ], "type": "object" } } ] } ], "type": "object", "description": "Nokia SR OS configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with SR OS configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in a future release." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "detail": { "type": "string", "description": "This argument specifies whether or not to collect all defaults when getting the remote device running config. When enabled, the module will get the current config by issuing the command C(show running-config all)." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "defaults": { "type": "string", "description": "This argument specifies whether or not to collect all defaults when getting the remote device running config. When enabled, the module will get the current config by issuing the command C(show running-config all)." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "jenkins_job": { "required": [ "name" ], "type": "object", "description": "Manage Jenkins jobs by using Jenkins REST API.", "properties": { "name": { "type": "string", "description": "Name of the Jenkins job." }, "url": { "type": "string", "description": "Default: http://localhost:8080\n\nUrl where the Jenkins server is accessible." }, "enabled": { "type": "string", "description": "Whether the job should be enabled or disabled.\nMututally exclusive with C(config).\nConsidered if C(state=present)." }, "token": { "type": "string", "description": "API token used to authenticate alternatively to password." }, "state": { "type": "string", "description": "Default: present\n\nAttribute that specifies if the job has to be created or deleted." }, "user": { "type": "string", "description": "User to authenticate with the Jenkins server." }, "password": { "type": "string", "description": "Password to authenticate with the Jenkins server." }, "config": { "type": "string", "description": "config in XML format.\nRequired if job does not yet exist.\nMututally exclusive with C(enabled).\nConsidered if C(state=present)." } } }, "avi_analyticsprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure AnalyticsProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "hs_event_throttle_window": { "type": "string", "description": "Time window (in secs) within which only unique health change events should occur.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1209600." }, "disable_se_analytics": { "description": "Disable node (service engine) level analytics forvs metrics.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "hs_performance_boost": { "type": "string", "description": "Adds free performance score credits to health score.\nIt can be used for compensating health score for known slow applications.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "apdex_server_rtt_tolerated_factor": { "type": "string", "description": "Tolerated client to avi round trip time(rtt) factor.\nIt is a multiple of apdex_rtt_tolerated_factor.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "hs_security_encalgo_score_rc4": { "type": "string", "description": "Score assigned when rc4 algorithm is used for encryption.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2.5." }, "hs_security_tls12_score": { "type": "string", "description": "Score assigned when supporting tls1.2 encryption protocol.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.0." }, "exclude_server_tcp_reset_as_error": { "description": "Exclude server tcp reset from errors.\nIt is common for applications like ms exchange.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "hs_min_dos_rate": { "type": "string", "description": "Dos connection rate below which the dos security assessment will not kick in.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1000." }, "exclude_no_dns_record_as_error": { "description": "Exclude queries to domains that did not have configured services/records from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "conn_server_lossy_zero_win_size_event_threshold": { "type": "string", "description": "A server connection is considered lossy when percentage of times a packet could not be trasmitted due to tcp zero window is above this threshold.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2.\nUnits(PERCENT)." }, "hs_max_resources_penalty": { "type": "string", "description": "Maximum penalty that may be deducted from health score for high resource utilization.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 25." }, "conn_lossy_total_rexmt_threshold": { "type": "string", "description": "A connection between client and avi is considered lossy when more than this percentage of packets are retransmitted.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 50.\nUnits(PERCENT)." }, "client_log_streaming_config": { "type": "string", "description": "Configure to stream logs to an external server.\nField introduced in 17.1.1." }, "hs_pscore_traffic_threshold_l4_client": { "type": "string", "description": "Threshold number of connections in 5min, below which apdexr, apdexc, rum_apdex, and other network quality metrics are not computed.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.0." }, "hs_security_ssl30_score": { "type": "string", "description": "Score assigned when supporting ssl3.0 encryption protocol.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3.5." }, "hs_security_weak_signature_algo_penalty": { "type": "string", "description": "Penalty for allowing weak signature algorithm(s).\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.0." }, "exclude_no_valid_gs_member_as_error": { "description": "Exclude queries to gslb services that have no available members from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "apdex_server_response_threshold": { "type": "string", "description": "A server http response is considered satisfied if latency is less than the satisfactory latency threshold.\nThe response is considered tolerated when it is greater than satisfied but less than the tolerated latency factor * s_latency.\nGreater than this number and the server response is considered frustrated.\nAllowed values are 1-30000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 400.\nUnits(MILLISECONDS)." }, "hs_security_cipherscore_ge128b": { "type": "string", "description": "Score assigned when the minimum cipher strength is greater than equal to 128 bits.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.0." }, "resp_code_block": { "type": "string", "description": "Block of http response codes to be excluded from being classified as an error.\nEnum options - AP_HTTP_RSP_4XX, AP_HTTP_RSP_5XX." }, "hs_security_nonpfs_penalty": { "type": "string", "description": "Penalty for allowing non-pfs handshakes.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.0." }, "uuid": { "type": "string", "description": "Uuid of the analytics profile." }, "exclude_invalid_dns_domain_as_error": { "description": "Exclude dns queries to domains outside the domains configured in the dns application profile from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "exclude_http_error_codes": { "type": "array", "description": "List of http status codes to be excluded from being classified as an error.\nError connections or responses impacts health score, are included as significant logs, and may be classified as part of a dos attack." }, "hs_max_anomaly_penalty": { "type": "string", "description": "Maximum penalty that may be deducted from health score for anomalies.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10." }, "hs_security_tls11_score": { "type": "string", "description": "Score assigned when supporting tls1.1 encryption protocol.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.0." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "exclude_gs_down_as_error": { "description": "Exclude queries to gslb services that are operationally down from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "apdex_server_response_tolerated_factor": { "type": "string", "description": "Server tolerated response latency factor.\nServermust response within this factor times the satisfactory threshold (apdex_server_response_threshold) to be considered tolerated.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "disable_server_analytics": { "description": "Disable analytics on backend servers.\nThis may be desired in container environment when there are large number of ephemeral servers.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "conn_server_lossy_ooo_threshold": { "type": "string", "description": "A connection between avi and server is considered lossy when more than this percentage of out of order packets are received.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 50.\nUnits(PERCENT)." }, "exclude_client_close_before_request_as_error": { "description": "Exclude client closed connection before an http request could be completed from being classified as an error.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "exclude_persistence_change_as_error": { "description": "Exclude persistence server changed while load balancing' from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "hs_security_hsts_penalty": { "type": "string", "description": "Penalty for not enabling hsts.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.0." }, "hs_security_selfsignedcert_penalty": { "type": "string", "description": "Deprecated.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.0." }, "conn_server_lossy_total_rexmt_threshold": { "type": "string", "description": "A connection between avi and server is considered lossy when more than this percentage of packets are retransmitted.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 50.\nUnits(PERCENT)." }, "conn_lossy_timeo_rexmt_threshold": { "type": "string", "description": "A connection between client and avi is considered lossy when more than this percentage of packets are retransmitted due to timeout.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 20.\nUnits(PERCENT)." }, "apdex_rtt_tolerated_factor": { "type": "string", "description": "Tolerated client to avi round trip time(rtt) factor.\nIt is a multiple of apdex_rtt_tolerated_factor.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "hs_security_certscore_gt30d": { "type": "string", "description": "Score assigned when the certificate expires in more than 30 days.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.0." }, "description": { "type": "string", "description": "User defined description for the object." }, "client_log_config": { "type": "string", "description": "Configure which logs are sent to the avi controller from ses and how they are processed." }, "apdex_rum_tolerated_factor": { "type": "string", "description": "Virtual service threshold factor for tolerated page load time (plt) as multiple of apdex_rum_threshold.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "hs_security_cipherscore_eq000b": { "type": "string", "description": "Score assigned when the minimum cipher strength is 0 bits.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.0." }, "hs_security_certscore_le30d": { "type": "string", "description": "Score assigned when the certificate expires in less than or equal to 30 days.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "hs_pscore_traffic_threshold_l4_server": { "type": "string", "description": "Threshold number of connections in 5min, below which apdexr, apdexc, rum_apdex, and other network quality metrics are not computed.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.0." }, "exclude_syn_retransmit_as_error": { "description": "Exclude 'server unanswered syns' from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "ranges": { "type": "array", "description": "List of http status code ranges to be excluded from being classified as an error." }, "exclude_dns_policy_drop_as_significant": { "description": "Exclude dns policy drops from the list of errors.\nField introduced in 17.2.2.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "apdex_server_rtt_threshold": { "type": "string", "description": "Satisfactory client to avi round trip time(rtt).\nAllowed values are 1-2000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 125.\nUnits(MILLISECONDS)." }, "exclude_server_dns_error_as_error": { "description": "Exclude server dns error response from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "hs_security_certscore_le07d": { "type": "string", "description": "Score assigned when the certificate expires in less than or equal to 7 days.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2.0." }, "conn_server_lossy_timeo_rexmt_threshold": { "type": "string", "description": "A connection between avi and server is considered lossy when more than this percentage of packets are retransmitted due to timeout.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 20.\nUnits(PERCENT)." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "conn_lossy_zero_win_size_event_threshold": { "type": "string", "description": "A client connection is considered lossy when percentage of times a packet could not be trasmitted due to tcp zero window is above this threshold.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2.\nUnits(PERCENT)." }, "apdex_rum_threshold": { "type": "string", "description": "If a client is able to load a page in less than the satisfactory latency threshold, the pageload is considered satisfied.\nIt is considered tolerated if it is greater than satisfied but less than the tolerated latency multiplied by satisifed latency.\nGreater than this number and the client's request is considered frustrated.\nA pageload includes the time for dns lookup, download of all http objects, and page render time.\nAllowed values are 1-30000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5000.\nUnits(MILLISECONDS)." }, "name": { "type": "string", "description": "The name of the analytics profile." }, "hs_security_chain_invalidity_penalty": { "type": "string", "description": "Penalty for allowing certificates with invalid chain.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.0." }, "apdex_rtt_threshold": { "type": "string", "description": "Satisfactory client to avi round trip time(rtt).\nAllowed values are 1-2000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 250.\nUnits(MILLISECONDS)." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "apdex_response_tolerated_factor": { "type": "string", "description": "Client tolerated response latency factor.\nClient must receive a response within this factor times the satisfactory threshold (apdex_response_threshold) to be considered tolerated.\nAllowed values are 1-1000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.0." }, "exclude_tcp_reset_as_error": { "description": "Exclude tcp resets by client from the list of potential errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "hs_max_security_penalty": { "type": "string", "description": "Maximum penalty that may be deducted from health score based on security assessment.\nAllowed values are 0-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100." }, "exclude_invalid_dns_query_as_error": { "description": "Exclude invalid dns queries from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "conn_lossy_ooo_threshold": { "type": "string", "description": "A connection between client and avi is considered lossy when more than this percentage of out of order packets are received.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 50.\nUnits(PERCENT)." }, "hs_security_cipherscore_lt128b": { "type": "string", "description": "Score assigned when the minimum cipher strength is less than 128 bits.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 3.5." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "hs_security_tls10_score": { "type": "string", "description": "Score assigned when supporting tls1.0 encryption protocol.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 5.0." }, "hs_security_certscore_expired": { "type": "string", "description": "Score assigned when the certificate has expired.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.0." }, "apdex_response_threshold": { "type": "string", "description": "If a client receives an http response in less than the satisfactory latency threshold, the request is considered satisfied.\nIt is considered tolerated if it is not satisfied and less than tolerated latency factor multiplied by the satisfactory latency threshold.\nGreater than this number and the client's request is considered frustrated.\nAllowed values are 1-30000.\nDefault value when not specified in API or module is interpreted by Avi Controller as 500.\nUnits(MILLISECONDS)." }, "hs_security_encalgo_score_none": { "type": "string", "description": "Score assigned when no algorithm is used for encryption.\nAllowed values are 0-5.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.0." }, "exclude_unsupported_dns_query_as_error": { "description": "Exclude unsupported dns queries from the list of errors.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" } } }, "win_audit_policy_system": { "required": [ "audit_type" ], "type": "object", "description": "Used to make changes to the system wide Audit Policy.\nIt is recommended to take a backup of the policies before adjusting them for the first time.\nSee this page for in depth information U(https://technet.microsoft.com/en-us/library/cc766468.aspx).", "properties": { "category": { "type": "string", "description": "Single string value for the category you would like to adjust the policy on.\nCannot be used with I(subcategory). You must define one or the other.\nChanging this setting causes all subcategories to be adjusted to the defined I(audit_type)." }, "audit_type": { "type": "string", "description": "The type of event you would like to audit for.\nAccepts a list. See examples." }, "subcategory": { "type": "string", "description": "Single string value for the subcategory you would like to adjust the policy on.\nCannot be used with I(category). You must define one or the other." } } }, "ec2_vpc_peer": { "type": "object", "description": "Read the AWS documentation for VPC Peering Connections U(http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-peering.html)", "properties": { "peering_id": { "type": "string", "description": "Peering connection id." }, "tags": { "type": "object", "description": "Dictionary of tags to look for and apply when creating a Peering Connection." }, "peer_owner_id": { "type": "string", "description": "The AWS account number for cross account peering." }, "state": { "type": "string", "description": "Default: present\n\nCreate, delete, accept, reject a peering connection." }, "peer_vpc_id": { "type": "string", "description": "VPC id of the accepting VPC." }, "vpc_id": { "type": "string", "description": "VPC id of the requesting VPC." } } }, "ec2_vpc_subnet_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "subnet_ids", "subnet_id" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about ec2 VPC subnets in AWS", "properties": { "subnet_id": { "type": "string", "description": "A list of subnet IDs to gather facts for." }, "subnet_ids": { "type": "string", "description": "A list of subnet IDs to gather facts for." }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html) for possible filters." } } }, "nios_network_view": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "network_view" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "network_view" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds and/or removes instances of network view objects from Infoblox NIOS servers. This module manages NIOS C(networkview) objects using the Infoblox WAPI interface over REST.", "properties": { "comment": { "type": "string", "description": "Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the intended state of the instance of the object on the NIOS server. When this value is set to C(present), the object is configured on the device and when this value is set to C(absent) the value is removed (if necessary) from the device." }, "name": { "type": "string", "description": "Specifies the name of the network view to either add or remove from the configuration." }, "network_view": { "type": "string", "description": "Specifies the name of the network view to either add or remove from the configuration." }, "extattrs": { "type": "string", "description": "Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration." } } }, "airbrake_deployment": { "required": [ "environment", "token" ], "type": "object", "description": "Notify airbrake about app deployments (see http://help.airbrake.io/kb/api-2/deploy-tracking)", "properties": { "environment": { "type": "string", "description": "The airbrake environment name, typically 'production', 'staging', etc." }, "url": { "type": "string", "description": "Default: https://airbrake.io/deploys.txt\n\nOptional URL to submit the notification to. Use to send notifications to Airbrake-compliant tools like Errbit." }, "repo": { "type": "string", "description": "URL of the project repository" }, "token": { "type": "string", "description": "API token." }, "user": { "type": "string", "description": "The username of the person doing the deployment" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "revision": { "type": "string", "description": "A hash, number, tag, or other identifier showing what revision was deployed" } } }, "yum_repository": { "required": [ "name" ], "type": "object", "description": "Add or remove YUM repositories in RPM-based Linux distributions.", "properties": { "ip_resolve": { "type": "string", "description": "Default: whatever\n\nDetermines how yum resolves host names.\nC(4) or C(IPv4) - resolve to IPv4 addresses only.\nC(6) or C(IPv6) - resolve to IPv6 addresses only." }, "reposdir": { "type": "string", "description": "Default: /etc/yum.repos.d\n\nDirectory where the C(.repo) files will be stored." }, "proxy_password": { "type": "string", "description": "Username to use for proxy." }, "bandwidth": { "type": "string", "description": "Maximum available network bandwidth in bytes/second. Used with the I(throttle) option.\nIf I(throttle) is a percentage and bandwidth is C(0) then bandwidth throttling will be disabled. If I(throttle) is expressed as a data rate (bytes/sec) then this option is ignored. Default is C(0) (no bandwidth throttling)." }, "cost": { "type": "string", "description": "Default: 1000\n\nRelative cost of accessing this repository. Useful for weighing one repo's packages as greater/less than any other." }, "file": { "type": "string", "description": "File to use to save the repo in. Defaults to the value of I(name)." }, "mirrorlist_expire": { "type": "string", "description": "Default: 21600\n\nTime (in seconds) after which the mirrorlist locally cached will expire.\nDefault value is 6 hours." }, "exclude": { "type": "array", "description": "List of packages to exclude from updates or installs. This should be a space separated list. Shell globs using wildcards (eg. C(*) and C(?)) are allowed.\nThe list can also be a regular YAML array." }, "keepalive": { "type": "string", "description": "Default: no\n\nThis tells yum whether or not HTTP/1.1 keepalive should be used with this repository. This can improve transfer speeds by using one connection when downloading multiple files from a repository." }, "repo_gpgcheck": { "type": "string", "description": "Default: no\n\nThis tells yum whether or not it should perform a GPG signature check on the repodata from this repository." }, "sslverify": { "type": "string", "description": "Default: yes\n\nDefines whether yum should verify SSL certificates/hosts at all." }, "failovermethod": { "type": "string", "description": "Default: roundrobin\n\nC(roundrobin) randomly selects a URL out of the list of URLs to start with and proceeds through each of them as it encounters a failure contacting the host.\nC(priority) starts from the first I(baseurl) listed and reads through them sequentially." }, "deltarpm_metadata_percentage": { "type": "string", "description": "Default: 100\n\nWhen the relative size of deltarpm metadata vs pkgs is larger than this, deltarpm metadata is not downloaded from the repo. Note that you can give values over C(100), so C(200) means that the metadata is required to be half the size of the packages. Use C(0) to turn off this check, and always download metadata." }, "gpgkey": { "type": "string", "description": "A URL pointing to the ASCII-armored GPG key file for the repository." }, "http_caching": { "type": "string", "description": "Default: all\n\nDetermines how upstream HTTP caches are instructed to handle any HTTP downloads that Yum does.\nC(all) means that all HTTP downloads should be cached.\nC(packages) means that only RPM package downloads should be cached (but not repository metadata downloads).\nC(none) means that no HTTP downloads should be cached." }, "priority": { "type": "string", "description": "Default: 99\n\nEnforce ordered protection of repositories. The value is an integer from 1 to 99.\nThis option only works if the YUM Priorities plugin is installed." }, "state": { "type": "string", "description": "Default: present\n\nState of the repo file." }, "mirrorlist": { "type": "string", "description": "Specifies a URL to a file containing a list of baseurls.\nThis or the I(baseurl) parameter is required if I(state) is set to C(present)." }, "params": { "type": "string", "description": "Option used to allow the user to overwrite any of the other options. To remove an option, set the value of the option to C(null)." }, "gpgcheck": { "type": "string", "description": "Default: no\n\nTells yum whether or not it should perform a GPG signature check on packages." }, "include": { "type": "string", "description": "Include external configuration file. Both, local path and URL is supported. Configuration file will be inserted at the position of the I(include=) line. Included files may contain further include lines. Yum will abort with an error if an inclusion loop is detected." }, "sslcacert": { "type": "string", "description": "Path to the directory containing the databases of the certificate authorities yum should use to verify SSL certificates." }, "username": { "type": "string", "description": "Username to use for basic authentication to a repo or really any url." }, "metadata_expire": { "type": "string", "description": "Default: 21600\n\nTime (in seconds) after which the metadata will expire.\nDefault value is 6 hours." }, "description": { "type": "string", "description": "A human readable string describing the repository.\nThis parameter is only required if I(state) is set to C(present)." }, "ui_repoid_vars": { "type": "string", "description": "Default: releasever basearch\n\nWhen a repository id is displayed, append these yum variables to the string if they are used in the I(baseurl)/etc. Variables are appended in the order listed (and found)." }, "sslclientcert": { "type": "string", "description": "Path to the SSL client certificate yum should use to connect to repos/remote sites." }, "baseurl": { "type": "string", "description": "URL to the directory where the yum repository's 'repodata' directory lives.\nThis or the I(mirrorlist) parameter is required if I(state) is set to C(present)." }, "gpgcakey": { "type": "string", "description": "A URL pointing to the ASCII-armored CA key file for the repository." }, "s3_enabled": { "type": "string", "description": "Default: no\n\nEnables support for S3 repositories.\nThis option only works if the YUM S3 plugin is installed." }, "includepkgs": { "type": "array", "description": "List of packages you want to only use from a repository. This should be a space separated list. Shell globs using wildcards (eg. C(*) and C(?)) are allowed. Substitution variables (e.g. C($releasever)) are honored here.\nThe list can also be a regular YAML array." }, "async": { "type": "string", "description": "Default: yes\n\nIf set to C(yes) Yum will download packages and metadata from this repo in parallel, if possible." }, "password": { "type": "string", "description": "Password to use with the username for basic authentication." }, "retries": { "type": "string", "description": "Default: 10\n\nSet the number of times any attempt to retrieve a file should retry before returning an error. Setting this to C(0) makes yum try forever." }, "protect": { "type": "string", "description": "Default: no\n\nProtect packages from updates from other repositories." }, "ssl_check_cert_permissions": { "type": "string", "description": "Default: no\n\nWhether yum should check the permissions on the paths for the certificates on the repository (both remote and local).\nIf we can't read any of the files then yum will force I(skip_if_unavailable) to be C(yes). This is most useful for non-root processes which use yum on repos that have client cert files which are readable only by root." }, "throttle": { "type": "string", "description": "Enable bandwidth throttling for downloads.\nThis option can be expressed as a absolute data rate in bytes/sec. An SI prefix (k, M or G) may be appended to the bandwidth value." }, "name": { "type": "string", "description": "Unique repository ID.\nThis parameter is only required if I(state) is set to C(present) or C(absent)." }, "deltarpm_percentage": { "type": "string", "description": "Default: 75\n\nWhen the relative size of delta vs pkg is larger than this, delta is not used. Use C(0) to turn off delta rpm processing. Local repositories (with file:// I(baseurl)) have delta rpms turned off by default." }, "sslclientkey": { "type": "string", "description": "Path to the SSL client key yum should use to connect to repos/remote sites." }, "metalink": { "type": "string", "description": "Specifies a URL to a metalink file for the repomd.xml, a list of mirrors for the entire repository are generated by converting the mirrors for the repomd.xml file to a I(baseurl)." }, "enabled": { "type": "string", "description": "Default: yes\n\nThis tells yum whether or not use this repository." }, "skip_if_unavailable": { "type": "string", "description": "Default: no\n\nIf set to C(yes) yum will continue running if this repository cannot be contacted for any reason. This should be set carefully as all repos are consulted for any given command." }, "keepcache": { "type": "string", "description": "Default: 1\n\nEither C(1) or C(0). Determines whether or not yum keeps the cache of headers and packages after successful installation." }, "proxy_username": { "type": "string", "description": "Password for this proxy." }, "timeout": { "type": "string", "description": "Default: 30\n\nNumber of seconds to wait for a connection before timing out." }, "enablegroups": { "type": "string", "description": "Default: yes\n\nDetermines whether yum will allow the use of package groups for this repository." }, "metadata_expire_filter": { "type": "string", "description": "Default: read-only:present\n\nFilter the I(metadata_expire) time, allowing a trade of speed for accuracy if a command doesn't require it. Each yum command can specify that it requires a certain level of timeliness quality from the remote repos. from \"I'm about to install/upgrade, so this better be current\" to \"Anything that's available is good enough\".\nC(never) - Nothing is filtered, always obey I(metadata_expire).\nC(read-only:past) - Commands that only care about past information are filtered from metadata expiring. Eg. I(yum history) info (if history needs to lookup anything about a previous transaction, then by definition the remote package was available in the past).\nC(read-only:present) - Commands that are balanced between past and future. Eg. I(yum list yum).\nC(read-only:future) - Commands that are likely to result in running other commands which will require the latest metadata. Eg. I(yum check-update).\nNote that this option does not override \"yum clean expire-cache\"." }, "proxy": { "type": "string", "description": "URL to the proxy server that yum should use. Set to C(_none_) to disable the global proxy setting." } } }, "bigmon_policy": { "required": [ "name", "controller" ], "type": "object", "description": "Create and remove a bigmon out-of-band policy.", "properties": { "policy_description": { "type": "string", "description": "Description of policy." }, "name": { "type": "string", "description": "The name of the policy." }, "access_token": { "type": "string", "description": "Bigmon access token. If this isn't set, the environment variable C(BIGSWITCH_ACCESS_TOKEN) is used." }, "start_time": { "type": "string", "description": "Default: ansible_date_time.iso8601\n\nDate the policy becomes active" }, "controller": { "type": "string", "description": "The controller address." }, "priority": { "type": "string", "description": "Default: 100\n\nA priority associated with this policy. The higher priority policy takes precedence over a lower priority." }, "duration": { "type": "string", "description": "Run policy for duration duration or until delivery_packet_count packets are delivered, whichever comes first." }, "state": { "type": "string", "description": "Default: present\n\nWhether the policy should be present or absent." }, "action": { "type": "string", "description": "Default: forward\n\nForward matching packets to delivery interfaces, Drop is for measure rate of matching packets, but do not forward to delivery interfaces, capture packets and write to a PCAP file, or enable NetFlow generation." }, "validate_certs": { "type": "string", "description": "Default: True\n\nIf C(false), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "delivery_packet_count": { "type": "string", "description": "Run policy until delivery_packet_count packets are delivered." } } }, "cl_license": { "required": [ "src" ], "type": "object", "description": "Installs a Cumulus Linux license. The module reports no change of status when a license is installed. For more details go the Cumulus Linux License Documentation at U(http://docs.cumulusnetwork.com) and the Licensing KB Site at U(https://support.cumulusnetworks.com/hc/en-us/sections/200507688)", "properties": { "src": { "type": "string", "description": "The full path to the license. Can be local path or HTTP URL." }, "force": { "type": "string", "description": "Force installation of a license. Typically not needed. It is recommended to manually run this command via the ansible command. A reload of switchd is not required. Running the force option in a playbook will break the idempotent state machine of the module and cause the switchd notification to kick in all the time, causing a disruption." } } }, "aos_template": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Template module let you manage your Template easily. You can create create and delete Template by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "content": { "type": "string", "description": "Datastructure of the Template to create. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Template (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "name": { "type": "string", "description": "Name of the Template to manage. Only one of I(name), I(id) or I(src) can be set." }, "id": { "type": "string", "description": "AOS Id of the Template to manage (can't be used to create a new Template), Only one of I(name), I(id) or I(src) can be set." } } }, "ec2_ami_find": { "allOf": [ { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } }, { "oneOf": [ { "required": [ "region" ], "type": "object" }, { "required": [ "aws_region" ], "type": "object" }, { "required": [ "ec2_region" ], "type": "object" } ] } ] } ], "type": "object", "description": "Returns list of matching AMIs with AMI ID, along with other useful information\nCan search AMIs with different owners\nCan search by matching tag(s), by AMI name and/or other criteria\nResults can be sorted and sliced", "properties": { "sort": { "type": "string", "description": "Optional attribute which with to sort the results.\nIf specifying 'tag', the 'tag_name' parameter is required.\nStarting at version 2.1, additional sort choices of architecture, block_device_mapping, creationDate, hypervisor, is_public, location, owner_id, platform, root_device_name, root_device_type, state, and virtualization_type are supported." }, "no_result_action": { "type": "string", "description": "Default: success\n\nWhat to do when no results are found.\n'success' reports success and returns an empty array\n'fail' causes the module to report failure" }, "sort_end": { "type": "string", "description": "Which result to end with (when sorting).\nCorresponds to Python slice notation." }, "ami_id": { "type": "string", "description": "An AMI ID to match." }, "name": { "type": "string", "description": "An AMI name to match." }, "platform": { "type": "string", "description": "Platform type to match." }, "hypervisor": { "type": "string", "description": "A hypervisor type type to match (e.g. xen)." }, "region": { "type": "string", "description": "The AWS region to use." }, "aws_region": { "type": "string", "description": "The AWS region to use." }, "sort_start": { "type": "string", "description": "Which result to start with (when sorting).\nCorresponds to Python slice notation." }, "virtualization_type": { "type": "string", "description": "Virtualization type to match (e.g. hvm)." }, "ami_tags": { "type": "string", "description": "A hash/dictionary of tags to match for the AMI." }, "state": { "type": "string", "description": "Default: available\n\nAMI state to match." }, "sort_order": { "type": "string", "description": "Default: ascending\n\nOrder in which to sort results.\nOnly used when the 'sort' parameter is specified." }, "architecture": { "type": "string", "description": "An architecture type to match (e.g. x86_64)." }, "owner": { "type": "string", "description": "Search AMIs owned by the specified owner\nCan specify an AWS account ID, or one of the special IDs 'self', 'amazon' or 'aws-marketplace'\nIf not specified, all EC2 AMIs in the specified region will be searched.\nYou can include wildcards in many of the search options. An asterisk (*) matches zero or more characters, and a question mark (?) matches exactly one character. You can escape special characters using a backslash (\\) before the character. For example, a value of \\*amazon\\?\\ searches for the literal string *amazon?\\." }, "is_public": { "type": "string", "description": "Whether or not the image(s) are public." }, "sort_tag": { "type": "string", "description": "Tag name with which to sort results.\nRequired when specifying 'sort=tag'." }, "ec2_region": { "type": "string", "description": "The AWS region to use." } } }, "include_role": { "required": [ "name" ], "type": "object", "description": "Loads and executes a role as a task, this frees roles from the `role:` directive and allows them to be treated more as tasks.", "properties": { "name": { "type": "string", "description": "The name of the role to be executed." }, "private": { "type": "string", "description": "Default: None\n\nIf True the variables from defaults/ and vars/ in a role will not be made available to the rest of the play." }, "allow_duplicates": { "type": "string", "description": "Default: True\n\nOverrides the role's metadata setting to allow using a role more than once with the same parameters." }, "tasks_from": { "type": "string", "description": "Default: main\n\nFile to load from a Role's tasks/ directory." }, "vars_from": { "type": "string", "description": "Default: main\n\nFile to load from a Role's vars/ directory." }, "defaults_from": { "type": "string", "description": "Default: main\n\nFile to load from a Role's defaults/ directory." } } }, "bigip_asm_policy": { "required": [ "name" ], "type": "object", "description": "Manage BIG-IP ASM policies.", "properties": { "name": { "type": "string", "description": "The ASM policy to manage or create." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "When C(state) is C(present), and C(file) or C(template) parameter is provided, new ASM policy is imported and created with the given C(name).\nWhen C(state) is present and no C(file) or C(template) parameter is provided new blank ASM policy is created with the given C(name).\nWhen C(state) is C(absent), ensures that the policy is removed, even if it is currently active." }, "file": { "type": "string", "description": "Full path to a policy file to be imported into the BIG-IP ASM.\nPolicy files exported from newer versions of BIG-IP cannot be imported into older versions of BIG-IP. The opposite, however, is true; you can import older into newer." }, "active": { "type": "string", "description": "If C(yes) will apply and activate existing inactive policy. If C(no), it will deactivate existing active policy. Generally should be C(yes) only in cases where you want to activate new or existing policy." }, "template": { "type": "string", "description": "An ASM policy built-in template. If the template does not exist we will raise an error.\nOnce the policy has been created, this value cannot change.\nThe C(Comprehensive), C(Drupal), C(Fundamental), C(Joomla), C(Vulnerability Assessment Baseline), and C(Wordpress) templates are only available on BIG-IP versions >= 13." } } }, "aci_tenant_action_rule_profile": { "allOf": [ { "allOf": [ { "not": { "required": [ "action_rule", "action_rule_name", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage action rule profiles on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the action rule profile." }, "descr": { "type": "string", "description": "The description for the action rule profile." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "action_rule_name": { "type": "string", "description": "The name of the action rule profile." }, "action_rule": { "type": "string", "description": "The name of the action rule profile." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "The description for the action rule profile." } } }, "sensu_client": { "required": [ "subscriptions" ], "type": "object", "description": "Manages Sensu client configuration.\nFor more information, refer to the Sensu documentation: U(https://sensuapp.org/docs/latest/reference/clients.html)", "properties": { "deregister": { "type": "string", "description": "If a deregistration event should be created upon Sensu client process stop." }, "socket": { "type": "string", "description": "The socket definition scope, used to configure the Sensu client socket." }, "subscriptions": { "type": "string", "description": "An array of client subscriptions, a list of roles and/or responsibilities assigned to the system (e.g. webserver).\nThese subscriptions determine which monitoring checks are executed by the client, as check requests are sent to subscriptions.\nThe subscriptions array items must be strings." }, "registration": { "type": "string", "description": "The registration definition scope, used to configure Sensu registration event handlers." }, "name": { "type": "string", "description": "Default: System hostname as determined by Ruby Socket.gethostname (provided by Sensu)\n\nA unique name for the client. The name cannot contain special characters or spaces." }, "chef": { "type": "string", "description": "The chef definition scope, used to configure the Sensu Enterprise Chef integration (Sensu Enterprise users only)." }, "redact": { "type": "string", "description": "Client definition attributes to redact (values) when logging and sending client keepalives." }, "state": { "type": "string", "description": "Default: present\n\nWhether the client should be present or not" }, "puppet": { "type": "string", "description": "The puppet definition scope, used to configure the Sensu Enterprise Puppet integration (Sensu Enterprise users only)." }, "ec2": { "type": "string", "description": "The ec2 definition scope, used to configure the Sensu Enterprise AWS EC2 integration (Sensu Enterprise users only)." }, "safe_mode": { "type": "string", "description": "If safe mode is enabled for the client. Safe mode requires local check definitions in order to accept a check request and execute the check." }, "address": { "type": "string", "description": "Default: Non-loopback IPv4 address as determined by Ruby Socket.ip_address_list (provided by Sensu)\n\nAn address to help identify and reach the client. This is only informational, usually an IP address or hostname." }, "keepalives": { "type": "string", "description": "Default: True\n\nIf Sensu should monitor keepalives for this client." }, "deregistration": { "type": "string", "description": "The deregistration definition scope, used to configure automated Sensu client de-registration." }, "servicenow": { "type": "string", "description": "The servicenow definition scope, used to configure the Sensu Enterprise ServiceNow integration (Sensu Enterprise users only)." }, "keepalive": { "type": "string", "description": "The keepalive definition scope, used to configure Sensu client keepalives behavior (e.g. keepalive thresholds, etc)." } } }, "onyx_l2_interface": { "type": "object", "description": "This module provides declarative management of Layer-2 interface on Mellanox ONYX network devices.", "properties": { "access_vlan": { "type": "string", "description": "Configure given VLAN in access port." }, "name": { "type": "string", "description": "Name of the interface." }, "state": { "type": "string", "description": "Default: present\n\nState of the Layer-2 Interface configuration." }, "trunk_allowed_vlans": { "type": "array", "description": "List of allowed VLANs in a given trunk port." }, "mode": { "type": "string", "description": "Default: access\n\nMode in which interface needs to be configured." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." } } }, "win_webpicmd": { "required": [ "name" ], "type": "object", "description": "Installs packages using Web Platform Installer command-line (U(http://www.iis.net/learn/install/web-platform-installer/web-platform-installer-v4-command-line-webpicmdexe-rtw-release)).\nMust be installed and present in PATH (see M(win_chocolatey) module; 'webpicmd' is the package name, and you must install 'lessmsi' first too)\nInstall IIS first (see M(win_feature) module)", "properties": { "name": { "type": "string", "description": "Name of the package to be installed" } } }, "ecs_service_facts": { "type": "object", "description": "Lists or describes services in ecs.", "properties": { "cluster": { "type": "string", "description": "Default: default\n\nThe cluster ARNS in which to list the services." }, "details": { "type": "string", "description": "Default: false\n\nSet this to true if you want detailed information about the services." }, "service": { "type": "string", "description": "The service to get details for (required if details is true)" } } }, "sf_account_manager": { "required": [ "name", "state" ], "type": "object", "description": "Create, destroy, or update accounts on SolidFire", "properties": { "new_name": { "type": "string", "description": "Default: None\n\nNew name for the user account." }, "status": { "type": "string", "description": "Status of the account." }, "name": { "type": "string", "description": "Unique username for this account. (May be 1 to 64 characters in length)." }, "initiator_secret": { "type": "string", "description": "CHAP secret to use for the initiator. Should be 12-16 characters long and impenetrable.\nThe CHAP initiator secrets must be unique and cannot be the same as the target CHAP secret.\nIf not specified, a random secret is created." }, "state": { "type": "string", "description": "Whether the specified account should exist or not." }, "attributes": { "type": "array", "description": "List of Name/Value pairs in JSON object format." }, "target_secret": { "type": "string", "description": "CHAP secret to use for the target (mutual CHAP authentication).\nShould be 12-16 characters long and impenetrable.\nThe CHAP target secrets must be unique and cannot be the same as the initiator CHAP secret.\nIf not specified, a random secret is created." }, "account_id": { "type": "string", "description": "Default: None\n\nThe ID of the account to manage or update." } } }, "cloudformation": { "allOf": [ { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } }, { "oneOf": [ { "required": [ "region" ], "type": "object" }, { "required": [ "aws_region" ], "type": "object" }, { "required": [ "ec2_region" ], "type": "object" } ] } ] } ], "type": "object", "description": "Launches an AWS CloudFormation stack and waits for it complete.", "properties": { "disable_rollback": { "type": "string", "description": "Default: false\n\nIf a stacks fails to form, rollback will remove the stack" }, "notification_arns": { "type": "string", "description": "The Simple Notification Service (SNS) topic ARNs to publish stack related events." }, "tags": { "type": "object", "description": "Dictionary of tags to associate with stack and it's resources during stack creation. Cannot be updated later. Requires at least Boto version 2.6.0." }, "stack_name": { "type": "string", "description": "name of the cloudformation stack" }, "stack_policy": { "type": "string", "description": "the path of the cloudformation stack policy" }, "region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION environment variable, if any, is used." }, "template_format": { "type": "string", "description": "Default: None\n\n(deprecated) For local templates, allows specification of json or yaml format. Templates are now passed raw to CloudFormation regardless of format. This parameter is ignored since Ansible 2.2." }, "aws_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION environment variable, if any, is used." }, "template_parameters": { "type": "string", "description": "a list of hashes of all the template variables for the stack" }, "state": { "type": "string", "description": "If state is \"present\", stack will be created. If state is \"present\" and if stack exists and template has changed, it will be updated. If state is \"absent\", stack will be removed." }, "template_url": { "type": "string", "description": "Location of file containing the template body. The URL must point to a template (max size 307,200 bytes) located in an S3 bucket in the same region as the stack. This parameter is mutually exclusive with 'template'. Either one of them is required if \"state\" parameter is \"present\"" }, "template": { "type": "string", "description": "The local path of the cloudformation template. This parameter is mutually exclusive with 'template_url'. Either one of them is required if \"state\" parameter is \"present\" Must give full path to the file, relative to the working directory. If using roles this may look like \"roles/cloudformation/files/cloudformation-example.json\"" }, "ec2_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION environment variable, if any, is used." } } }, "avi_microservicegroup": { "required": [ "name" ], "type": "object", "description": "This module is used to configure MicroServiceGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the microservice group." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name." }, "name": { "type": "string", "description": "Name of the microservice group." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "service_refs": { "type": "string", "description": "Configure microservice(es).\nIt is a reference to an object of type microservice." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for the object." } } }, "panos_cert_gen_ssh": { "required": [ "password", "cert_cn", "cert_friendly_name", "key_filename", "ip_address", "signed_by" ], "type": "object", "description": "This module generates a self-signed certificate that can be used by GlobalProtect client, SSL connector, or\notherwise. Root certificate must be preset on the system first. This module depends on paramiko for ssh.", "properties": { "cert_friendly_name": { "type": "string", "description": "Human friendly certificate name (not CN but just a friendly name)." }, "key_filename": { "type": "string", "description": "Location of the filename that is used for the auth. Either I(key_filename) or I(password) is required." }, "rsa_nbits": { "type": "string", "description": "Default: 2048\n\nNumber of bits used by the RSA algorithm for the certificate generation." }, "cert_cn": { "type": "string", "description": "Certificate CN (common name) embedded in the certificate signature." }, "password": { "type": "string", "description": "Password credentials to use for auth. Either I(key_filename) or I(password) is required." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." }, "signed_by": { "type": "string", "description": "Undersigning authority (CA) that MUST already be presents on the device." } } }, "netscaler_cs_policy": { "type": "object", "description": "Manage content switching policy.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.", "properties": { "url": { "type": "string", "description": "URL string that is matched with the URL of a request. Can contain a wildcard character. Specify the string value in the following format: C([[prefix] [*]] [.suffix]).\nMinimum length = 1\nMaximum length = 208" }, "policyname": { "type": "string", "description": "Name for the content switching policy. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore, hash C(#), period C(.), space C( ), colon C(:), at sign C(@), equal sign C(=), and hyphen C(-) characters. Cannot be changed after a policy is created.\nThe following requirement applies only to the NetScaler CLI:\nIf the name includes one or more spaces, enclose the name in double or single quotation marks (for example, my policy or my policy).\nMinimum length = 1" }, "domain": { "type": "string", "description": "The domain name. The string value can range to 63 characters.\nMinimum length = 1" }, "action": { "type": "string", "description": "Content switching action that names the target load balancing virtual server to which the traffic is switched." }, "rule": { "type": "string", "description": "Expression, or name of a named expression, against which traffic is evaluated. Written in the classic or default syntax.\nNote:\nMaximum length of a string literal in the expression is 255 characters. A longer string can be split into smaller strings of up to 255 characters each, and the smaller strings concatenated with the + operator. For example, you can create a 500-character string as follows: '\"\" + \"\"'" } } }, "vmware_host_dns_facts": { "type": "object", "description": "This module can be used to gather facts about an ESXi host's DNS configuration information when ESXi hostname or Cluster name is given.\nAll parameters and VMware object names are case sensitive.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster from which the ESXi host belong to.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to gather facts from.\nIf C(cluster_name) is not given, this parameter is required." } } }, "panos_security_rule": { "required": [ "password", "ip_address", "rule_name" ], "type": "object", "description": "Security policies allow you to enforce rules and take action, and can be as general or specific as needed. The policy rules are compared against the incoming traffic in sequence, and because the first rule that matches the traffic is applied, the more specific rules must precede the more general ones.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for auth unless I(api_key) is set." }, "vulnerability": { "type": "string", "description": "Default: None\n\nName of the already defined vulnerability profile." }, "spyware": { "type": "string", "description": "Default: None\n\nName of the already defined spyware profile." }, "hip_profiles": { "type": "string", "description": "Default: any\n\n- If you are using GlobalProtect with host information profile (HIP) enabled, you can also base the policy on information collected by GlobalProtect. For example, the user access level can be determined HIP that notifies the firewall about the user's local configuration.\n" }, "file_blocking": { "type": "string", "description": "Default: None\n\nName of the already defined file_blocking profile." }, "log_start": { "type": "string", "description": "Whether to log at session start." }, "operation": { "type": "string", "description": "Default: add\n\nThe action to be taken. Supported values are I(add)/I(update)/I(find)/I(delete)." }, "description": { "type": "string", "description": "Default: None\n\nDescription for the security rule." }, "service": { "type": "array", "description": "Default: application-default\n\nList of services." }, "url_filtering": { "type": "string", "description": "Default: None\n\nName of the already defined url_filtering profile." }, "source_user": { "type": "string", "description": "Default: any\n\nUse users to enforce policy for individual users or a group of users." }, "application": { "type": "array", "description": "Default: any\n\nList of applications." }, "destination_zone": { "type": "array", "description": "Default: any\n\nList of destination zones." }, "group_profile": { "type": "string", "description": "Default: None\n\n- Security profile group that is already defined in the system. This property supersedes antivirus, vulnerability, spyware, url_filtering, file_blocking, data_filtering, and wildfire_analysis properties.\n" }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "wildfire_analysis": { "type": "string", "description": "Default: None\n\nName of the already defined wildfire_analysis profile." }, "destination_ip": { "type": "array", "description": "Default: any\n\nList of destination addresses." }, "devicegroup": { "type": "string", "description": "Default: None\n\n- Device groups are used for the Panorama interaction with Firewall(s). The group must exists on Panorama. If device group is not define we assume that we are contacting Firewall.\n" }, "data_filtering": { "type": "string", "description": "Default: None\n\nName of the already defined data_filtering profile." }, "antivirus": { "type": "string", "description": "Default: None\n\nName of the already defined antivirus profile." }, "rule_name": { "type": "string", "description": "Name of the security rule." }, "password": { "type": "string", "description": "Password credentials to use for auth unless I(api_key) is set." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." }, "rule_type": { "type": "string", "description": "Default: universal\n\nType of security rule (version 6.1 of PanOS and above)." }, "source_zone": { "type": "array", "description": "Default: any\n\nList of source zones." }, "source_ip": { "type": "array", "description": "Default: any\n\nList of source addresses." }, "tag_name": { "type": "string", "description": "Default: None\n\nAdministrative tags that can be added to the rule. Note, tags must be already defined." }, "action": { "type": "string", "description": "Default: allow\n\nAction to apply once rules maches." }, "commit": { "type": "string", "description": "Default: True\n\nCommit configuration if changed." }, "log_end": { "type": "string", "description": "Default: True\n\nWhether to log at session end." } } }, "ce_ospf_vrf": { "required": [ "ospf" ], "type": "object", "description": "Manages configuration of an OSPF VPN instance on HUAWEI CloudEngine switches.", "properties": { "lsaostartinterval": { "type": "string", "description": "Specifies the start interval of originate LSA . Valid value is an integer, in millisecond, from 0 to 1000, the default value is 500." }, "bandwidth": { "type": "string", "description": "Specifies the reference bandwidth used to assign ospf cost. Valid values are an integer, in Mbps, 1 - 2147483648, the default value is 100." }, "spfintervalmi": { "type": "string", "description": "Specifies the interval to calculate SPF when use millisecond level timer. Valid value is an integer, in millisecond, from 1 to 10000." }, "lsaomaxinterval": { "type": "string", "description": "Specifies the max interval of originate LSA . Valid value is an integer, in millisecond, from 1 to 10000, the default value is 5000." }, "lsaamaxinterval": { "type": "string", "description": "Specifies the max interval of arrive LSA when use the intelligent timer. Valid value is an integer, in millisecond, from 0 to 10000, the default value is 1000." }, "lsaoholdinterval": { "type": "string", "description": "Specifies the hold interval of originate LSA . Valid value is an integer, in millisecond, from 0 to 5000, the default value is 1000." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "spfholdinterval": { "type": "string", "description": "Specifies the hold interval to calculate SPF when use intelligent timer. Valid value is an integer, in millisecond, from 1 to 5000, the default value is 200." }, "lsaaholdinterval": { "type": "string", "description": "Specifies the hold interval of arrive LSA when use the intelligent timer. Valid value is an integer, in millisecond, from 0 to 10000, the default value is 500." }, "lsaointerval": { "type": "string", "description": "Specifies the interval of originate LSA . Valid value is an integer, in second, from 0 to 10, the default value is 5." }, "description": { "type": "string", "description": "Specifies the description information of ospf process." }, "lsaalflag": { "type": "string", "description": "Specifies the mode of timer to calculate interval of arrive LSA. If set the parameter but not specifies value, the default will be used. If true use general timer. If false use intelligent timer." }, "vrf": { "type": "string", "description": "Default: _public_\n\nSpecifies the vpn instance which use ospf,length is 1 - 31. Valid values are a string." }, "lsaointervalflag": { "type": "string", "description": "Specifies whether cancel the interval of LSA originate or not. If set the parameter but noe specifies value, the default will be used. true:cancel the interval of LSA originate, the interval is 0. false:do not cancel the interval of LSA originate." }, "lsaastartinterval": { "type": "string", "description": "Specifies the start interval of arrive LSA when use the intelligent timer. Valid value is an integer, in millisecond, from 0 to 10000, the default value is 500." }, "spfintervaltype": { "type": "string", "description": "Default: intelligent-timer\n\nSpecifies the mode of timer which used to calculate SPF. If set the parameter but noe specifies value, the default will be used. If is intelligent-timer, then use intelligent timer. If is timer, then use second level timer. If is millisecond, then use millisecond level timer." }, "lsaainterval": { "type": "string", "description": "Specifies the interval of arrive LSA when use the general timer. Valid value is an integer, in millisecond, from 0 to 10000." }, "spfstartinterval": { "type": "string", "description": "Specifies the start interval to calculate SPF when use intelligent timer. Valid value is an integer, in millisecond, from 1 to 1000, the default value is 50." }, "route_id": { "type": "string", "description": "Specifies the ospf private route id,. Valid values are a string, formatted as an IP address (i.e. \"10.1.1.1\") the length is 0 - 20." }, "spfmaxinterval": { "type": "string", "description": "Specifies the max interval to calculate SPF when use intelligent timer. Valid value is an integer, in millisecond, from 1 to 20000, the default value is 5000." }, "spfinterval": { "type": "string", "description": "Specifies the interval to calculate SPF when use second level timer. Valid value is an integer, in second, from 1 to 10." }, "ospf": { "type": "string", "description": "The ID of the ospf process. Valid values are an integer, 1 - 4294967295, the default value is 1." } } }, "logicmonitor": { "required": [ "company", "user", "password", "target", "action" ], "type": "object", "description": "LogicMonitor is a hosted, full-stack, infrastructure monitoring platform.\nThis module manages hosts, host groups, and collectors within your LogicMonitor account.", "properties": { "displayname": { "type": "string", "description": "Default: hostname -f\n\nThe display name of a host in your LogicMonitor account or the desired display name of a device to manage.\nOptional for managing hosts (target=host)." }, "description": { "type": "string", "description": "The long text description of the object in your LogicMonitor account.\nOptional for managing hosts and host groups (target=host or target=hostgroup; action=add or action=update)." }, "company": { "type": "string", "description": "The LogicMonitor account company name. If you would log in to your account at \"superheroes.logicmonitor.com\" you would use \"superheroes.\"" }, "hostname": { "type": "string", "description": "Default: hostname -f\n\nThe hostname of a host in your LogicMonitor account, or the desired hostname of a device to manage.\nOptional for managing hosts (target=host)." }, "fullpath": { "type": "string", "description": "The fullpath of the host group object you would like to manage.\nRecommend running on a single Ansible host.\nRequired for management of LogicMonitor host groups (target=hostgroup)." }, "properties": { "type": "object", "description": "A dictionary of properties to set on the LogicMonitor host or host group.\nOptional for managing hosts and host groups (target=host or target=hostgroup; action=add or action=update).\nThis parameter will add or update existing properties in your LogicMonitor account." }, "action": { "type": "string", "description": "The action you wish to perform on target.\nAdd: Add an object to your LogicMonitor account.\nRemove: Remove an object from your LogicMonitor account.\nUpdate: Update properties, description, or groups (target=host) for an object in your LogicMonitor account.\nSDT: Schedule downtime for an object in your LogicMonitor account." }, "user": { "type": "string", "description": "A LogicMonitor user name. The module will authenticate and perform actions on behalf of this user." }, "groups": { "type": "string", "description": "A list of groups that the host should be a member of.\nOptional for managing hosts (target=host; action=add or action=update)." }, "duration": { "type": "string", "description": "Default: 30\n\nThe duration (minutes) of the Scheduled Down Time (SDT).\nOptional for putting an object into SDT (action=sdt)." }, "alertenable": { "type": "string", "description": "Default: True\n\nA boolean flag to turn alerting on or off for an object.\nOptional for managing all hosts (action=add or action=update)." }, "starttime": { "type": "string", "description": "Default: Now\n\nThe time that the Scheduled Down Time (SDT) should begin.\nOptional for managing SDT (action=sdt).\nY-m-d H:M" }, "password": { "type": "string", "description": "The password of the specified LogicMonitor user" }, "collector": { "type": "string", "description": "The fully qualified domain name of a collector in your LogicMonitor account.\nThis is required for the creation of a LogicMonitor host (target=host action=add).\nThis is required for updating, removing or scheduling downtime for hosts if 'displayname' isn't specified (target=host action=update action=remove action=sdt)." }, "id": { "type": "string", "description": "ID of the datasource to target.\nRequired for management of LogicMonitor datasources (target=datasource)." }, "target": { "type": "string", "description": "The type of LogicMonitor object you wish to manage.\nCollector: Perform actions on a LogicMonitor collector.\nNOTE You should use Ansible service modules such as M(service) or M(supervisorctl) for managing the Collector 'logicmonitor-agent' and 'logicmonitor-watchdog' services. Specifically, you'll probably want to start these services after a Collector add and stop these services before a Collector remove.\nHost: Perform actions on a host device.\nHostgroup: Perform actions on a LogicMonitor host group.\nNOTE Host and Hostgroup tasks should always be performed via local_action. There are no benefits to running these tasks on the remote host and doing so will typically cause problems." } } }, "virt": { "required": [ "name" ], "type": "object", "description": "Manages virtual machines supported by I(libvirt).", "properties": { "xml": { "type": "string", "description": "XML document used with the define command." }, "name": { "type": "string", "description": "name of the guest VM being managed. Note that VM must be previously defined with xml." }, "uri": { "type": "string", "description": "Default: qemu:///system\n\nlibvirt connection uri." }, "state": { "type": "string", "description": "Note that there may be some lag for state requests like C(shutdown) since these refer only to VM states. After starting a guest, it may not be immediately accessible." }, "command": { "type": "string", "description": "In addition to state management, various non-idempotent commands are available." }, "autostart": { "description": "start VM at host startup.", "$ref": "#/definitions/ansible_truth" } } }, "nxos_snapshot": { "required": [ "action" ], "type": "object", "description": "Create snapshots of the running states of selected features, add new show commands for snapshot creation, delete and compare existing snapshots.", "properties": { "description": { "type": "string", "description": "Snapshot description to be used when C(action=create)." }, "section": { "type": "string", "description": "Used to name the show command output, to be used when C(action=add)." }, "snapshot1": { "type": "string", "description": "First snapshot to be used when C(action=compare)." }, "comparison_results_file": { "type": "string", "description": "Name of the file where snapshots comparison will be store." }, "snapshot2": { "type": "string", "description": "Second snapshot to be used when C(action=compare)." }, "element_key1": { "type": "string", "description": "Specify the tags used to distinguish among row entries, to be used when C(action=add)." }, "element_key2": { "type": "string", "description": "Specify the tags used to distinguish among row entries, to be used when C(action=add)." }, "snapshot_name": { "type": "string", "description": "Snapshot name, to be used when C(action=create) or C(action=delete)." }, "show_command": { "type": "string", "description": "Specify a new show command, to be used when C(action=add)." }, "action": { "type": "string", "description": "Define what snapshot action the module would perform." }, "path": { "type": "string", "description": "Default: ./\n\nSpecify the path of the file where new created snapshot or snapshots comparison will be stored, to be used when C(action=create) and C(save_snapshot_locally=true) or C(action=compare)." }, "row_id": { "type": "string", "description": "Specifies the tag of each row entry of the show command's XML output, to be used when C(action=add)." }, "save_snapshot_locally": { "type": "string", "description": "Specify to locally store a new created snapshot, to be used when C(action=create)." }, "compare_option": { "type": "string", "description": "Snapshot options to be used when C(action=compare)." } } }, "ce_file_copy": { "required": [ "local_file" ], "type": "object", "description": "Copy a file to a remote cloudengine device over SCP on HUAWEI CloudEngine switches.", "properties": { "remote_file": { "type": "string", "description": "Remote file path of the copy. Remote directories must exist. If omitted, the name of the local file will be used. The maximum length of I(remote_file) is C(4096)." }, "local_file": { "type": "string", "description": "Path to local file. Local directory must exist. The maximum length of I(local_file) is C(4096)." }, "file_system": { "type": "string", "description": "Default: flash:\n\nThe remote file system of the device. If omitted, devices that support a I(file_system) parameter will use their default values. File system indicates the storage medium and can be set to as follows, 1) C(flash) is root directory of the flash memory on the master MPU. 2) C(slave#flash) is root directory of the flash memory on the slave MPU. If no slave MPU exists, this drive is unavailable. 3) C(chassis ID/slot number#flash) is root directory of the flash memory on a device in a stack. For example, C(1/5#flash) indicates the flash memory whose chassis ID is 1 and slot number is 5." } } }, "os_keystone_role": { "required": [ "name" ], "type": "object", "description": "Manage OpenStack Identity Roles.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "name": { "type": "string", "description": "Role Name" } } }, "aws_kms_facts": { "type": "object", "description": "Gather facts about AWS KMS keys including tags and grants", "properties": { "pending_deletion": { "type": "string", "description": "Whether to get full details (tags, grants etc.) of keys pending deletion" }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. The filters aren't natively supported by boto3, but are supported to provide similar functionality to other modules. Standard tag filters (C(tag-key), C(tag-value) and C(tag:tagName)) are available, as are C(key-id) and C(alias)" } } }, "azure_rm_functionapp": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update or delete an Azure Function App", "properties": { "state": { "type": "string", "description": "Default: present\n\nAssert the state of the Function App. Use 'present' to create or update a Function App and 'absent' to delete." }, "name": { "type": "string", "description": "Name of the Azure Function App" }, "resource_group": { "type": "string", "description": "Name of resource group" } } }, "known_hosts": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "host" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "host" ], "type": "object" } ] } ] } ], "type": "object", "description": "The M(known_hosts) module lets you add or remove a host keys from the C(known_hosts) file.\nStarting at Ansible 2.2, multiple entries per host are allowed, but only one for each key type supported by ssh. This is useful if you're going to want to use the M(git) module over ssh, for example.\nIf you have a very large number of host keys to manage, you will find the M(template) module more useful.", "properties": { "host": { "type": "string", "description": "The host to add or remove (must match a host specified in key)" }, "path": { "type": "string", "description": "Default: (homedir)+/.ssh/known_hosts\n\nThe known_hosts file to edit" }, "state": { "type": "string", "description": "Default: present\n\nI(present) to add the host key, I(absent) to remove it." }, "name": { "type": "string", "description": "The host to add or remove (must match a host specified in key)" }, "key": { "type": "string", "description": "The SSH public host key, as a string (required if state=present, optional when state=absent, in which case all keys for the host are removed). The key must be in the right format for ssh (see sshd(1), section \"SSH_KNOWN_HOSTS FILE FORMAT\")" } } }, "net_vlan": { "type": "object", "description": "This module provides declarative management of VLANs on network devices.", "properties": { "name": { "type": "string", "description": "Name of the VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces the VLAN should be configured on." }, "purge": { "type": "string", "description": "Purge VLANs not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "vlan_id": { "type": "string", "description": "ID of the VLAN." } } }, "azure_rm_sqldatabase": { "required": [ "resource_group", "name", "server_name" ], "type": "object", "description": "Create, update and delete instance of SQL Database.", "properties": { "source_database_id": { "type": "string", "description": "Required unless I(create_mode) is C(default) or C(restore_long_term_retention_backup).\nSpecifies the resource ID of the source database" }, "force_update": { "description": "SQL Database will be updated if given parameters differ from existing resource state.\nTo force SQL Database update in any circumstances set this parameter to True.", "$ref": "#/definitions/ansible_truth" }, "collation": { "type": "string", "description": "The collation of the database. If I(create_mode) is not C(default), this value is ignored." }, "name": { "type": "string", "description": "The name of the database to be operated on (updated or created)." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "create_mode": { "type": "string", "description": "Specifies the mode of database creation.\nC(default): regular database creation.\nC(copy): creates a database as a copy of an existing database.\nC(online_secondary)/C(non_readable_secondary): creates a database as a (readable or nonreadable) secondary replica of an existing database.\nC(point_in_time_restore): Creates a database by restoring a point in time backup of an existing database.\nC(recovery): Creates a database by restoring a geo-replicated backup.\nC(restore): Creates a database by restoring a backup of a deleted database.\nC(restore_long_term_retention_backup): Creates a database by restoring from a long term retention vault.\nC(copy), C(non_readable_secondary), C(online_secondary) and C(restore_long_term_retention_backup) are not supported for C(data_warehouse) edition." }, "source_database_deletion_date": { "type": "string", "description": "Required if I(create_mode) is C(restore) and I(source_database_id) is the deleted database's original resource id when it existed (as opposed to its current restorable dropped database id), then this value is required. Specifies the time that the database was deleted." }, "server_name": { "type": "string", "description": "The name of the server." }, "recovery_services_recovery_point_resource_id": { "type": "string", "description": "Required if I(create_mode) is C(restore_long_term_retention_backup), then this value is required. Specifies the resource ID of the recovery point to restore from." }, "edition": { "type": "string", "description": "The edition of the database. The DatabaseEditions enumeration contains all the valid editions. If I(create_mode) is C(non_readable_secondary) or C(online_secondary), this value is ignored. To see possible values, query the capabilities API (/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationID}/capabilities) referred to by operationId: 'Capabilities_ListByLocation.'." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the SQL Database. Use 'present' to create or update an SQL Database and 'absent' to delete it." }, "elastic_pool_name": { "type": "string", "description": "The name of the elastic pool the database is in. Not supported for C(data_warehouse) edition." }, "sample_name": { "type": "string", "description": "Indicates the name of the sample schema to apply when creating this database. If I(create_mode) is not C(default), this value is ignored. Not supported for C(data_warehouse) edition." }, "max_size_bytes": { "type": "string", "description": "The max size of the database expressed in bytes. If I(create_mode) is not C(default), this value is ignored. To see possible values, query the capabilities API (/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationID}/capabilities) referred to by operationId: 'Capabilities_ListByLocation.'" }, "restore_point_in_time": { "type": "string", "description": "Required if I(create_mode) is C(point_in_time_restore), this value is required. If I(create_mode) is C(restore), this value is optional. Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database. Must be greater than or equal to the source database's earliestRestoreDate value." }, "read_scale": { "description": "If the database is a geo-secondary, indicates whether read-only connections are allowed to this database or not. Not supported for C(data_warehouse) edition.", "$ref": "#/definitions/ansible_truth" }, "zone_redundant": { "description": "Is this database is zone redundant? It means the replicas of this database will be spread across multiple availability zones.", "$ref": "#/definitions/ansible_truth" }, "location": { "type": "string", "description": "Resource location. If not set, location from the resource group will be used as C(default)." } } }, "snmp_facts": { "required": [ "host", "version" ], "type": "object", "description": "Retrieve facts for a device using SNMP, the facts will be inserted to the ansible_facts key.", "properties": { "username": { "type": "string", "description": "Username for SNMPv3, required if version is v3" }, "privacy": { "type": "string", "description": "Encryption algorithm, required if level is authPriv" }, "level": { "type": "string", "description": "Authentication level, required if version is v3" }, "community": { "type": "string", "description": "The SNMP community string, required if version is v2/v2c" }, "authkey": { "type": "string", "description": "Authentication key, required if version is v3" }, "host": { "type": "string", "description": "Set to target snmp server (normally {{inventory_hostname}})" }, "version": { "type": "string", "description": "SNMP Version to use, v2/v2c or v3" }, "integrity": { "type": "string", "description": "Hashing algorithm, required if version is v3" }, "privkey": { "type": "string", "description": "Encryption key, required if version is authPriv" } } }, "eos_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both login and motd banners on remote devices running Arista EOS. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner that should be configured on the remote device." } } }, "cs_network_acl": { "required": [ "name", "vpc" ], "type": "object", "description": "Create and remove network ACLs.", "properties": { "domain": { "type": "string", "description": "Domain the network ACL rule is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the network ACL." }, "zone": { "type": "string", "description": "Name of the zone the VPC is related to.\nIf not set, default zone is used." }, "account": { "type": "string", "description": "Account the network ACL rule is related to." }, "project": { "type": "string", "description": "Name of the project the network ACL is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the network ACL." }, "vpc": { "type": "string", "description": "VPC the network ACL is related to." }, "description": { "type": "string", "description": "Description of the network ACL.\nIf not set, identical to C(name)." } } }, "onyx_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Mellanox ONYX configurations uses a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with ONYX configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct" }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "zpool_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "pool", "zpool" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "properties", "props" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts from ZFS pool properties.", "properties": { "name": { "type": "string", "description": "ZFS pool name." }, "parsable": { "description": "Specifies if property values should be displayed in machine friendly format.", "$ref": "#/definitions/ansible_truth" }, "props": { "type": "string", "description": "Default: all\n\nSpecifies which dataset properties should be queried in comma-separated format. For more information about dataset properties, check zpool(1M) man page." }, "zpool": { "type": "string", "description": "ZFS pool name." }, "properties": { "type": "string", "description": "Default: all\n\nSpecifies which dataset properties should be queried in comma-separated format. For more information about dataset properties, check zpool(1M) man page." }, "pool": { "type": "string", "description": "ZFS pool name." } } }, "net_vrf": { "type": "object", "description": "This module provides declarative management of VRFs on network devices.", "properties": { "aggregate": { "type": "array", "description": "List of VRFs definitions" }, "purge": { "type": "string", "description": "Purge VRFs not defined in the I(aggregate) parameter." }, "interfaces": { "type": "array", "description": "List of interfaces the VRF should be configured on." }, "name": { "type": "string", "description": "Name of the VRF." }, "state": { "type": "string", "description": "Default: present\n\nState of the VRF configuration." } } }, "gce_net": { "allOf": [ { "allOf": [ { "not": { "required": [ "ipv4_range", "cidr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "fwname", "fwrule" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "src_range", "src_cidr" ], "type": "object" } } ] } ], "type": "object", "description": "This module can create and destroy Google Compute Engine networks and firewall rules U(https://developers.google.com/compute/docs/networking). The I(name) parameter is reserved for referencing a network while the I(fwname) parameter is used to reference firewall rules. IPv4 Address ranges must be specified using the CIDR U(http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) format. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "src_tags": { "type": "string", "description": "the source instance tags for creating a firewall rule" }, "subnet_region": { "type": "string", "description": "region of subnet to create" }, "name": { "type": "string", "description": "name of the network" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the network or firewall" }, "src_range": { "type": "string", "description": "the source IPv4 address range in CIDR notation" }, "credentials_file": { "type": "string", "description": "path to the JSON file associated with the service account email" }, "fwname": { "type": "string", "description": "name of the firewall rule" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'." }, "service_account_email": { "type": "string", "description": "service account email" }, "target_tags": { "type": "string", "description": "the target instance tags for creating a firewall rule" }, "subnet_name": { "type": "string", "description": "name of subnet to create" }, "mode": { "type": "string", "description": "Default: legacy\n\nnetwork mode for Google Cloud \"legacy\" indicates a network with an IP address range \"auto\" automatically generates subnetworks in different regions \"custom\" uses networks to group subnets of user specified IP address ranges https://cloud.google.com/compute/docs/networking#network_types" }, "allowed": { "type": "string", "description": "the protocol:ports to allow ('tcp:80' or 'tcp:80,443' or 'tcp:80-800;udp:1-25') this parameter is mandatory when creating or updating a firewall rule" }, "ipv4_range": { "type": "string", "description": "the IPv4 address range in CIDR notation for the network this parameter is not mandatory when you specified existing network in name parameter, but when you create new network, this parameter is mandatory" }, "cidr": { "type": "string", "description": "the IPv4 address range in CIDR notation for the network this parameter is not mandatory when you specified existing network in name parameter, but when you create new network, this parameter is mandatory" }, "project_id": { "type": "string", "description": "your GCE project ID" }, "fwrule": { "type": "string", "description": "name of the firewall rule" }, "subnet_desc": { "type": "string", "description": "description of subnet to create" }, "src_cidr": { "type": "string", "description": "the source IPv4 address range in CIDR notation" } } }, "vmware_host_lockdown": { "type": "object", "description": "This module can be used to manage administrator permission for the local administrative account for the host when ESXi hostname is given.\nAll parameters and VMware objects values are case sensitive.\nThis module is destructive as administrator permission are managed using APIs used, please read options carefully and proceed.\nPlease specify C(hostname) as vCenter IP or hostname only, as lockdown operations are not possible from standalone ESXi server.", "properties": { "cluster_name": { "type": "string", "description": "Name of cluster.\nAll host systems from given cluster used to manage lockdown.\nRequired parameter, if C(esxi_hostname) is not set." }, "state": { "type": "string", "description": "Default: present\n\nState of hosts system\nIf set to C(present), all host systems will be set in lockdown mode.\nIf host system is already in lockdown mode and set to C(present), no action will be taken.\nIf set to C(absent), all host systems will be removed from lockdown mode.\nIf host system is already out of lockdown mode and set to C(absent), no action will be taken." }, "esxi_hostname": { "type": "array", "description": "List of ESXi hostname to manage lockdown.\nRequired parameter, if C(cluster_name) is not set.\nSee examples for specifications." } } }, "os_quota": { "allOf": [ { "allOf": [ { "not": { "required": [ "floatingip", "network_floating_ips" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "floating_ips", "compute_floating_ips" ], "type": "object" } } ] } ], "type": "object", "description": "Manage OpenStack Quotas. Quotas can be created, updated or deleted using this module. A quota will be updated if matches an existing project and is present.", "properties": { "snapshots_lvm": { "type": "string", "description": "Default: None\n\nNumber of LVM snapshots to allow." }, "server_groups": { "type": "string", "description": "Default: None\n\nNumber of server groups to allow." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "ram": { "type": "string", "description": "Default: None\n\nMaximum amount of ram in MB to allow." }, "snapshots": { "type": "string", "description": "Default: None\n\nNumber of snapshots to allow." }, "instances": { "type": "string", "description": "Default: None\n\nMaximum number of instances allowed." }, "network_floating_ips": { "type": "string", "description": "Default: None\n\nNumber of floating IP's to allow in Network." }, "backups": { "type": "string", "description": "Default: None\n\nMaximum number of backups allowed." }, "fixed_ips": { "type": "string", "description": "Default: None\n\nNumber of fixed IP's to allow." }, "port": { "type": "string", "description": "Default: None\n\nNumber of Network ports to allow, this needs to be greater than the instances limit." }, "subnet": { "type": "string", "description": "Default: None\n\nNumber of subnets to allow." }, "per_volume_gigabytes": { "type": "string", "description": "Default: None\n\nMaximum size in GB's of individual volumes." }, "network": { "type": "string", "description": "Default: None\n\nNumber of networks to allow." }, "floatingip": { "type": "string", "description": "Default: None\n\nNumber of floating IP's to allow in Network." }, "volumes_lvm": { "type": "string", "description": "Default: None\n\nNumber of LVM volumes to allow." }, "floating_ips": { "type": "string", "description": "Default: None\n\nNumber of floating IP's to allow in Compute." }, "security_group_rule": { "type": "string", "description": "Default: None\n\nNumber of rules per security group to allow." }, "state": { "type": "string", "description": "Default: present\n\nA value of present sets the quota and a value of absent resets the quota to system defaults." }, "injected_files": { "type": "string", "description": "Default: None\n\nNumber of injected files to allow." }, "gigabytes_lvm": { "type": "string", "description": "Default: None\n\nMaximum size in GB's of individual lvm volumes." }, "injected_path_size": { "type": "string", "description": "Default: None\n\nMaximum path size." }, "gigabytes": { "type": "string", "description": "Default: None\n\nMaximum volume storage allowed for project." }, "backup_gigabytes": { "type": "string", "description": "Default: None\n\nMaximum size of backups in GB's." }, "subnetpool": { "type": "string", "description": "Default: None\n\nNumber of subnet pools to allow." }, "key_pairs": { "type": "string", "description": "Default: None\n\nNumber of key pairs to allow." }, "rbac_policy": { "type": "string", "description": "Default: None\n\nNumber of policies to allow." }, "injected_file_size": { "type": "string", "description": "Default: None\n\nMaximum file size in bytes." }, "router": { "type": "string", "description": "Default: None\n\nNumber of routers to allow." }, "properties": { "type": "string", "description": "Default: None\n\nNumber of properties to allow." }, "pool": { "type": "string", "description": "Default: None\n\nNumber of load balancer pools to allow." }, "server_group_members": { "type": "string", "description": "Default: None\n\nNumber of server group members to allow." }, "name": { "type": "string", "description": "Name of the OpenStack Project to manage." }, "compute_floating_ips": { "type": "string", "description": "Default: None\n\nNumber of floating IP's to allow in Compute." }, "volumes": { "type": "string", "description": "Default: None\n\nNumber of volumes to allow." }, "security_group": { "type": "string", "description": "Default: None\n\nNumber of security groups to allow." }, "cores": { "type": "string", "description": "Default: None\n\nMaximum number of CPU's per project." }, "loadbalancer": { "type": "string", "description": "Default: None\n\nNumber of load balancers to allow." } } }, "ce_vrrp": { "type": "object", "description": "Manages VRRP interface attributes on HUAWEI CloudEngine devices.", "properties": { "gratuitous_arp_interval": { "type": "string", "description": "Interval at which gratuitous ARP packets are sent, in seconds. The value ranges from 30 to 1200.The default value is 300." }, "advertise_interval": { "type": "string", "description": "Configured interval between sending advertisements, in milliseconds. Only the master router sends VRRP advertisements. The default value is 1000 milliseconds." }, "auth_key": { "type": "string", "description": "This object is set based on the authentication type. When noAuthentication is specified, the value is empty. When simpleTextPassword or md5Authentication is specified, the value is a string of 1 to 8 characters in plaintext and displayed as a blank text for security." }, "vrid": { "type": "string", "description": "Default: present\n\nVRRP backup group ID. The value is an integer ranging from 1 to 255." }, "vrrp_type": { "type": "string", "description": "Type of a VRRP backup group." }, "auth_mode": { "type": "string", "description": "Authentication type used for VRRP packet exchanges between virtual routers. The values are noAuthentication, simpleTextPassword, md5Authentication. The default value is noAuthentication." }, "priority": { "type": "string", "description": "Configured VRRP priority. The value ranges from 1 to 254. The default value is 100. A larger value indicates a higher priority." }, "recover_delay": { "type": "string", "description": "Delay in recovering after an interface goes Up. The delay is used for interface flapping suppression. The value is an integer ranging from 0 to 3600. The default value is 0 seconds." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "version": { "type": "string", "description": "VRRP version. The default version is v2." }, "is_plain": { "type": "string", "description": "Select the display mode of an authentication key. By default, an authentication key is displayed in ciphertext." }, "admin_interface": { "type": "string", "description": "Tracked mVRRP interface name. The value is a string of 1 to 63 characters." }, "admin_ignore_if_down": { "type": "string", "description": "mVRRP ignores an interface Down event." }, "interface": { "type": "string", "description": "Name of an interface. The value is a string of 1 to 63 characters." }, "fast_resume": { "type": "string", "description": "mVRRP's fast resume mode." }, "admin_flowdown": { "type": "string", "description": "Disable the flowdown function for service VRRP." }, "holding_multiplier": { "type": "string", "description": "The configured holdMultiplier.The value is an integer ranging from 3 to 10. The default value is 3." }, "preempt_timer_delay": { "type": "string", "description": "Preemption delay. The value is an integer ranging from 0 to 3600. The default value is 0." }, "admin_vrid": { "type": "string", "description": "Tracked mVRRP ID. The value is an integer ranging from 1 to 255." }, "virtual_ip": { "type": "string", "description": "Virtual IP address. The value is a string of 0 to 255 characters." } } }, "net_logging": { "type": "object", "description": "This module provides declarative management of logging on network devices.", "properties": { "name": { "type": "string", "description": "If value of C(dest) is I(host) it indicates file-name the host name to be notified." }, "level": { "type": "string", "description": "Set logging severity levels." }, "dest": { "type": "string", "description": "Destination of the logs." }, "facility": { "type": "string", "description": "Set logging facility." }, "purge": { "type": "string", "description": "Purge logging not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." } } }, "aci_contract": { "allOf": [ { "allOf": [ { "not": { "required": [ "contract", "contract_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "contract" ], "type": "object" }, { "required": [ "contract_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "dscp", "target" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage Contract resources on Cisco ACI fabrics.", "properties": { "contract_name": { "type": "string", "description": "The name of the contract." }, "name": { "type": "string", "description": "The name of the contract." }, "descr": { "type": "string", "description": "Description for the contract." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "contract": { "type": "string", "description": "The name of the contract." }, "priority": { "type": "string", "description": "Default: unspecified\n\nThe desired QoS class to be used." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "dscp": { "type": "string", "description": "Default: unspecified\n\nThe target Differentiated Service (DSCP) value." }, "target": { "type": "string", "description": "Default: unspecified\n\nThe target Differentiated Service (DSCP) value." }, "scope": { "type": "string", "description": "Default: context\n\nThe scope of a service contract." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "Description for the contract." } } }, "gcp_url_map": { "required": [ "default_service", "url_map_name" ], "type": "object", "description": "Create, Update or Destory a Url_Map. See U(https://cloud.google.com/compute/docs/load-balancing/http/url-map) for an overview. More details on the Url_Map API can be found at U(https://cloud.google.com/compute/docs/reference/latest/urlMaps#resource).", "properties": { "default_service": { "type": "string", "description": "Default Backend Service if no host rules match." }, "host_rules": { "type": "string", "description": "The list of HostRules to use against the URL. Contains a list of hosts and an associated path_matcher.\nThe 'hosts' parameter is a list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..\nThe 'path_matcher' parameter is name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion." }, "url_map_name": { "type": "string", "description": "Name of the Url_Map." }, "path_matchers": { "type": "string", "description": "The list of named PathMatchers to use against the URL. Contains path_rules, which is a list of paths and an associated service. A default_service can also be specified for each path_matcher.\nThe 'name' parameter to which this path_matcher is referred by the host_rule.\nThe 'default_service' parameter is the name of the BackendService resource. This will be used if none of the path_rules defined by this path_matcher is matched by the URL's path portion.\nThe 'path_rules' parameter is a list of dictionaries containing a list of paths and a service to direct traffic to. Each path item must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or" } } }, "pn_cluster": { "required": [ "pn_name", "state" ], "type": "object", "description": "Execute cluster-create or cluster-delete command.\nA cluster allows two switches to cooperate in high-availability (HA) deployments. The nodes that form the cluster must be members of the same fabric. Clusters are typically used in conjunction with a virtual link aggregation group (VLAG) that allows links physically connected to two separate switches appear as a single trunk to a third device. The third device can be a switch,server, or any Ethernet device.", "properties": { "pn_name": { "type": "string", "description": "Specify the name of the cluster." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_validate": { "type": "string", "description": "Validate the inter-switch links and state of switches in the cluster." }, "state": { "type": "string", "description": "Specify action to perform. Use 'present' to create cluster and 'absent' to delete cluster." }, "pn_cliswitch": { "type": "string", "description": "Target switch to run the cli on." }, "pn_cluster_node1": { "type": "string", "description": "Specify the name of the first switch in the cluster.\nRequired for 'cluster-create'." }, "pn_cluster_node2": { "type": "string", "description": "Specify the name of the second switch in the cluster.\nRequired for 'cluster-create'." } } }, "route53_zone": { "required": [ "zone" ], "type": "object", "description": "Creates and deletes Route53 private and public zones", "properties": { "comment": { "type": "string", "description": "Comment associated with the zone" }, "vpc_region": { "type": "string", "description": "The VPC Region the zone should be a part of (if this is going to be a private zone)" }, "zone": { "type": "string", "description": "The DNS zone record (eg: foo.com.)" }, "hosted_zone_id": { "type": "string", "description": "The unique zone identifier you want to delete or \"all\" if there are many zones with the same domain name. Required if there are multiple zones identified with the above options" }, "state": { "type": "string", "description": "Default: present\n\nwhether or not the zone should exist or not" }, "vpc_id": { "type": "string", "description": "The VPC ID the zone should be a part of (if this is going to be a private zone)" } } }, "avi_alertsyslogconfig": { "required": [ "name" ], "type": "object", "description": "This module is used to configure AlertSyslogConfig object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "syslog_servers": { "type": "string", "description": "The list of syslog servers." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "A user-friendly name of the syslog notification." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for alert syslog config." } } }, "k8s_raw": { "type": "object", "description": "Use the OpenShift Python client to perform CRUD operations on K8s objects.\nPass the object definition from a source file or inline. See examples for reading files and using Jinja templates.\nAccess to the full range of K8s APIs.\nAuthenticate using either a config file, certificates, password or token.\nSupports check mode.", "properties": {} }, "bigip_snmp": { "type": "object", "description": "Manipulate general SNMP settings on a BIG-IP.", "properties": { "contact": { "type": "string", "description": "Specifies the name of the person who administers the SNMP service for this system." }, "agent_authentication_traps": { "type": "string", "description": "When C(enabled), ensures that the system sends authentication warning traps to the trap destinations. This is usually disabled by default on a BIG-IP." }, "location": { "type": "string", "description": "Specifies the description of this system's physical location." }, "device_warning_traps": { "type": "string", "description": "When C(enabled), ensures that the system sends device warning traps to the trap destinations. This is usually enabled by default on a BIG-IP." }, "agent_status_traps": { "type": "string", "description": "When C(enabled), ensures that the system sends a trap whenever the SNMP agent starts running or stops running. This is usually enabled by default on a BIG-IP." } } }, "ovirt_cluster": { "required": [ "name" ], "type": "object", "description": "Module to manage clusters in oVirt/RHV", "properties": { "comment": { "type": "string", "description": "Comment of the cluster." }, "ha_reservation": { "type": "string", "description": "If I(True) enable the oVirt/RHV to monitor cluster capacity for highly available virtual machines." }, "fence_skip_if_connectivity_broken": { "type": "string", "description": "If I(True) fencing will be temporarily disabled if the percentage of hosts in the cluster that are experiencing connectivity issues is greater than or equal to the defined threshold.\nThe threshold can be specified by C(fence_connectivity_threshold)." }, "mac_pool": { "type": "string", "description": "MAC pool to be used by this cluster.\nC(Note:)\nThis is supported since oVirt version 4.1." }, "virt": { "type": "string", "description": "If I(True), hosts in this cluster will be used to run virtual machines." }, "threads_as_cores": { "type": "string", "description": "If I(True) the exposed host threads would be treated as cores which can be utilized by virtual machines." }, "gluster": { "type": "string", "description": "If I(True), hosts in this cluster will be used as Gluster Storage server nodes, and not for running virtual machines.\nBy default the cluster is created for virtual machine hosts." }, "vm_reason": { "type": "string", "description": "If I(True) enable an optional reason field when a virtual machine is shut down from the Manager, allowing the administrator to provide an explanation for the maintenance." }, "migration_bandwidth_limit": { "type": "string", "description": "Set the I(custom) migration bandwidth limit.\nThis parameter is used only when C(migration_bandwidth) is I(custom)." }, "data_center": { "type": "string", "description": "Datacenter name where cluster reside." }, "ksm_numa": { "type": "string", "description": "If I(True) enables KSM C(ksm) for best berformance inside NUMA nodes." }, "migration_auto_converge": { "type": "string", "description": "If I(True) auto-convergence is used during live migration of virtual machines.\nUsed only when C(migration_policy) is set to I(legacy).\nFollowing options are supported:\nC(true) - Override the global setting to I(true).\nC(false) - Override the global setting to I(false).\nC(inherit) - Use value which is set globally." }, "cpu_arch": { "type": "string", "description": "CPU architecture of cluster." }, "rng_sources": { "type": "array", "description": "List that specify the random number generator devices that all hosts in the cluster will use.\nSupported generators are: I(hwrng) and I(random)." }, "compatibility_version": { "type": "string", "description": "The compatibility version of the cluster. All hosts in this cluster must support at least this compatibility version." }, "network": { "type": "string", "description": "Management network of cluster to access cluster hosts." }, "state": { "type": "string", "description": "Default: present\n\nShould the cluster be present or absent" }, "ksm": { "type": "string", "description": "I I(True) MoM enables to run Kernel Same-page Merging I(KSM) when necessary and when it can yield a memory saving benefit that outweighs its CPU cost." }, "external_network_providers": { "type": "array", "description": "List of references to the external network providers available in the cluster. If the automatic deployment of the external network provider is supported, the networks of the referenced network provider are available on every host in the cluster.\nExternal network provider is described by following dictionary:\nC(name) - Name of the external network provider. Either C(name) or C(id) is required.\nC(id) - ID of the external network provider. Either C(name) or C(id) is required.\nThis is supported since oVirt version 4.2." }, "migration_compressed": { "type": "string", "description": "If I(True) compression is used during live migration of the virtual machine.\nUsed only when C(migration_policy) is set to I(legacy).\nFollowing options are supported:\nC(true) - Override the global setting to I(true).\nC(false) - Override the global setting to I(false).\nC(inherit) - Use value which is set globally." }, "ballooning": { "type": "string", "description": "If I(True) enable memory balloon optimization. Memory balloon is used to re-distribute / reclaim the host memory based on VM needs in a dynamic way." }, "description": { "type": "string", "description": "Description of the cluster." }, "fence_enabled": { "type": "string", "description": "If I(True) enables fencing on the cluster.\nFencing is enabled by default." }, "migration_policy": { "type": "string", "description": "A migration policy defines the conditions for live migrating virtual machines in the event of host failure.\nFollowing policies are supported:\nC(legacy) - Legacy behavior of 3.6 version.\nC(minimal_downtime) - Virtual machines should not experience any significant downtime.\nC(suspend_workload) - Virtual machines may experience a more significant downtime.\nC(post_copy) - Virtual machines should not experience any significant downtime. If the VM migration is not converging for a long time, the migration will be switched to post-copy. Added in version I(2.4)." }, "resilience_policy": { "type": "string", "description": "The resilience policy defines how the virtual machines are prioritized in the migration.\nFollowing values are supported:\nC(do_not_migrate) - Prevents virtual machines from being migrated. \nC(migrate) - Migrates all virtual machines in order of their defined priority.\nC(migrate_highly_available) - Migrates only highly available virtual machines to prevent overloading other hosts." }, "fence_connectivity_threshold": { "type": "string", "description": "The threshold used by C(fence_skip_if_connectivity_broken)." }, "spice_proxy": { "type": "string", "description": "The proxy by which the SPICE client will connect to virtual machines.\nThe address must be in the following format: I(protocol://[host]:[port])" }, "memory_policy": { "type": "string", "description": "I(disabled) - Disables memory page sharing.\nI(server) - Sets the memory page sharing threshold to 150% of the system memory on each host.\nI(desktop) - Sets the memory page sharing threshold to 200% of the system memory on each host." }, "migration_bandwidth": { "type": "string", "description": "The bandwidth settings define the maximum bandwidth of both outgoing and incoming migrations per host.\nFollowing bandwidth options are supported:\nC(auto) - Bandwidth is copied from the I(rate limit) [Mbps] setting in the data center host network QoS.\nC(hypervisor_default) - Bandwidth is controlled by local VDSM setting on sending host.\nC(custom) - Defined by user (in Mbps)." }, "fence_skip_if_sd_active": { "type": "string", "description": "If I(True) any hosts in the cluster that are Non Responsive and still connected to storage will not be fenced." }, "scheduling_policy": { "type": "string", "description": "Name of the scheduling policy to be used for cluster." }, "switch_type": { "type": "string", "description": "Type of switch to be used by all networks in given cluster. Either I(legacy) which is using linux brigde or I(ovs) using Open vSwitch." }, "serial_policy_value": { "type": "string", "description": "Allows you to specify a custom serial number.\nThis parameter is used only when C(serial_policy) is I(custom)." }, "name": { "type": "string", "description": "Name of the cluster to manage." }, "host_reason": { "type": "string", "description": "If I(True) enable an optional reason field when a host is placed into maintenance mode from the Manager, allowing the administrator to provide an explanation for the maintenance." }, "cpu_type": { "type": "string", "description": "CPU codename. For example I(Intel SandyBridge Family)." }, "serial_policy": { "type": "string", "description": "Specify a serial number policy for the virtual machines in the cluster.\nFollowing options are supported:\nC(vm) - Sets the virtual machine's UUID as its serial number.\nC(host) - Sets the host's UUID as the virtual machine's serial number.\nC(custom) - Allows you to specify a custom serial number in C(serial_policy_value)." }, "trusted_service": { "type": "string", "description": "If (True) enable integration with an OpenAttestation server." } } }, "vmware_vmkernel_ip_config": { "required": [ "vmk_name", "ip_address", "subnet_mask" ], "type": "object", "description": "Configure the VMkernel IP Address", "properties": { "ip_address": { "type": "string", "description": "IP address to assign to VMkernel interface" }, "vmk_name": { "type": "string", "description": "VMkernel interface name" }, "subnet_mask": { "type": "string", "description": "Subnet Mask to assign to VMkernel interface" } } }, "junos_netconf": { "allOf": [ { "allOf": [ { "not": { "required": [ "netconf_port", "listens_on" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides an abstraction that enables and configures the netconf system service running on Junos devices. This module can be used to easily enable the Netconf API. Netconf provides a programmatic interface for working with configuration and state resources as defined in RFC 6242.", "properties": { "state": { "type": "string", "description": "Default: present\n\nSpecifies the state of the C(junos_netconf) resource on the remote device. If the I(state) argument is set to I(present) the netconf service will be configured. If the I(state) argument is set to I(absent) the netconf service will be removed from the configuration." }, "listens_on": { "type": "string", "description": "Default: 830\n\nThis argument specifies the port the netconf service should listen on for SSH connections. The default port as defined in RFC 6242 is 830." }, "netconf_port": { "type": "string", "description": "Default: 830\n\nThis argument specifies the port the netconf service should listen on for SSH connections. The default port as defined in RFC 6242 is 830." } } }, "ovirt_snapshots": { "required": [ "vm_name" ], "type": "object", "description": "Module to manage Virtual Machine Snapshots in oVirt/RHV", "properties": { "vm_name": { "type": "string", "description": "Name of the Virtual Machine to manage." }, "state": { "type": "string", "description": "Default: present\n\nShould the Virtual Machine snapshot be restore/present/absent." }, "use_memory": { "type": "string", "description": "If I(true) and C(state) is I(present) save memory of the Virtual Machine if it's running.\nIf I(true) and C(state) is I(restore) restore memory of the Virtual Machine.\nNote that Virtual Machine will be paused while saving the memory." }, "description": { "type": "string", "description": "Description of the snapshot." }, "snapshot_id": { "type": "string", "description": "ID of the snapshot to manage." } } }, "nxos_igmp_snooping": { "type": "object", "description": "Manages IGMP snooping global configuration.", "properties": { "link_local_grp_supp": { "type": "string", "description": "Global link-local groups suppression." }, "report_supp": { "type": "string", "description": "Global IGMPv1/IGMPv2 Report Suppression." }, "snooping": { "type": "string", "description": "Enables/disables IGMP snooping on the switch." }, "group_timeout": { "type": "string", "description": "Group membership timeout value for all VLANs on the device. Accepted values are integer in range 1-10080, I(never) and I(default)." }, "v3_report_supp": { "type": "string", "description": "Global IGMPv3 Report Suppression and Proxy Reporting." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." } } }, "udm_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "samba_user_workstations", "sambaUserWorkstations" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "room_number", "roomNumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "primary_group", "primaryGroup" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "home_share", "homeShare" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "override_pw_history", "overridePWHistory" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "display_name", "displayName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pager_telephonenumber", "pagerTelephonenumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "employee_number", "employeeNumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "home_share_path", "homeSharePath" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mail_home_server", "mailHomeServer" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "username", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "username" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "home_telephone_number", "homeTelephoneNumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mail_alternative_address", "mailAlternativeAddress" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "employee_type", "employeeType" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pwd_change_next_login", "pwdChangeNextLogin" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mail_primary_address", "mailPrimaryAddress" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "override_pw_length", "overridePWLength" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mobile_telephone_number", "mobileTelephoneNumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "department_number", "departmentNumber" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "samba_privileges", "sambaPrivileges" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows to manage posix users on a univention corporate server (UCS). It uses the python API of the UCS to create a new object or edit it.", "properties": { "mobileTelephoneNumber": { "type": "string", "description": "Mobile phone number" }, "shell": { "type": "string", "description": "Default: /bin/bash\n\nLogin shell" }, "samba_user_workstations": { "type": "string", "description": "Allow the authentication only on this Microsoft Windows host." }, "pager_telephonenumber": { "type": "array", "description": "List of pager telephone numbers." }, "departmentNumber": { "type": "string", "description": "Default: None\n\nDepartment number of users business address." }, "subpath": { "type": "string", "description": "Default: cn=users\n\nLDAP subpath inside the organizational unit, e.g. C(cn=teachers,cn=users) for LDAP container C(cn=teachers,cn=users,dc=example,dc=com)." }, "overridePWLength": { "type": "string", "description": "Override password check" }, "homeShare": { "type": "string", "description": "Default: None\n\nHome NFS share. Must be a LDAP DN, e.g. C(cn=home,cn=shares,ou=school,dc=example,dc=com)." }, "postcode": { "type": "string", "description": "Default: None\n\nPostal code of users business address." }, "scriptpath": { "type": "string", "description": "Default: None\n\nWindows logon script." }, "sambaPrivileges": { "type": "string", "description": "Samba privilege, like allow printer administration, do domain join." }, "home_share": { "type": "string", "description": "Default: None\n\nHome NFS share. Must be a LDAP DN, e.g. C(cn=home,cn=shares,ou=school,dc=example,dc=com)." }, "override_pw_history": { "type": "string", "description": "Override password history" }, "city": { "type": "string", "description": "Default: None\n\nCity of users business address." }, "password": { "type": "string", "description": "Default: None\n\nPassword. Required if C(state=present)." }, "display_name": { "type": "string", "description": "Default: None\n\nDisplay name (not gecos)" }, "homedrive": { "type": "string", "description": "Default: None\n\nWindows home drive, e.g. C(\"H:\")." }, "employee_number": { "type": "string", "description": "Default: None\n\nEmployee number" }, "mailAlternativeAddress": { "type": "array", "description": "List of alternative e-mail addresses." }, "serviceprovider": { "type": "string", "description": "Default: ['']\n\nEnable user for the following service providers." }, "organisation": { "type": "string", "description": "Default: None\n\nOrganisation" }, "mailPrimaryAddress": { "type": "string", "description": "Default: None\n\nPrimary e-mail address" }, "room_number": { "type": "string", "description": "Default: None\n\nRoom number of users business address." }, "userexpiry": { "type": "string", "description": "Default: Today + 1 year\n\nAccount expiry date, e.g. C(1999-12-31)." }, "home_share_path": { "type": "string", "description": "Default: None\n\nPath to home NFS share, inside the homeShare." }, "state": { "type": "string", "description": "Default: present\n\nWhether the user is present or not." }, "unixhome": { "type": "string", "description": "Default: /home/$USERNAME\n\nUnix home directory" }, "mail_home_server": { "type": "string", "description": "Default: None\n\nFQDN of mail server" }, "sambaUserWorkstations": { "type": "string", "description": "Allow the authentication only on this Microsoft Windows host." }, "email": { "type": "string", "description": "Default: ['']\n\nA list of e-mail addresses." }, "sambahome": { "type": "string", "description": "Default: None\n\nWindows home path, e.g. C('\\\\$FQDN\\$USERNAME')." }, "username": { "type": "string", "description": "User name" }, "home_telephone_number": { "type": "array", "description": "List of private telephone numbers." }, "primary_group": { "type": "string", "description": "Default: cn=Domain Users,cn=groups,$LDAP_BASE_DN\n\nPrimary group. This must be the group LDAP DN." }, "street": { "type": "string", "description": "Default: None\n\nStreet of users business address." }, "description": { "type": "string", "description": "Default: None\n\nDescription (not gecos)" }, "firstname": { "type": "string", "description": "First name. Required if C(state=present)." }, "pagerTelephonenumber": { "type": "array", "description": "List of pager telephone numbers." }, "lastname": { "type": "string", "description": "Last name. Required if C(state=present)." }, "mailHomeServer": { "type": "string", "description": "Default: None\n\nFQDN of mail server" }, "mail_alternative_address": { "type": "array", "description": "List of alternative e-mail addresses." }, "position": { "type": "string", "description": "Define the whole position of users object inside the LDAP tree, e.g. C(cn=employee,cn=users,ou=school,dc=example,dc=com)." }, "phone": { "type": "array", "description": "List of telephone numbers." }, "birthday": { "type": "string", "description": "Default: None\n\nBirthday" }, "employeeNumber": { "type": "string", "description": "Default: None\n\nEmployee number" }, "groups": { "type": "string", "description": "POSIX groups, the LDAP DNs of the groups will be found with the LDAP filter for each group as $GROUP: C((&(objectClass=posixGroup)(cn=$GROUP)))." }, "primaryGroup": { "type": "string", "description": "Default: cn=Domain Users,cn=groups,$LDAP_BASE_DN\n\nPrimary group. This must be the group LDAP DN." }, "displayName": { "type": "string", "description": "Default: None\n\nDisplay name (not gecos)" }, "employee_type": { "type": "string", "description": "Default: None\n\nEmployee type" }, "employeeType": { "type": "string", "description": "Default: None\n\nEmployee type" }, "pwd_change_next_login": { "type": "string", "description": "Default: None\n\nChange password on next login." }, "overridePWHistory": { "type": "string", "description": "Override password history" }, "name": { "type": "string", "description": "User name" }, "mail_primary_address": { "type": "string", "description": "Default: None\n\nPrimary e-mail address" }, "country": { "type": "string", "description": "Default: None\n\nCountry of users business address." }, "title": { "type": "string", "description": "Default: None\n\nTitle, e.g. C(Prof.)." }, "roomNumber": { "type": "string", "description": "Default: None\n\nRoom number of users business address." }, "override_pw_length": { "type": "string", "description": "Override password check" }, "samba_privileges": { "type": "string", "description": "Samba privilege, like allow printer administration, do domain join." }, "pwdChangeNextLogin": { "type": "string", "description": "Default: None\n\nChange password on next login." }, "gecos": { "type": "string", "description": "Default: None\n\nGECOS" }, "mobile_telephone_number": { "type": "string", "description": "Mobile phone number" }, "homeTelephoneNumber": { "type": "array", "description": "List of private telephone numbers." }, "profilepath": { "type": "string", "description": "Default: None\n\nWindows profile directory" }, "ou": { "type": "string", "description": "Organizational Unit inside the LDAP Base DN, e.g. C(school) for LDAP OU C(ou=school,dc=example,dc=com)." }, "secretary": { "type": "string", "description": "A list of superiors as LDAP DNs." }, "homeSharePath": { "type": "string", "description": "Default: None\n\nPath to home NFS share, inside the homeShare." }, "department_number": { "type": "string", "description": "Default: None\n\nDepartment number of users business address." } } }, "efs_facts": { "type": "object", "description": "Module searches Amazon EFS file systems", "properties": { "tags": { "type": "array", "description": "Default: None\n\nList of tags of Amazon EFS. Should be defined as dictionary\n" }, "id": { "type": "string", "description": "Default: None\n\nID of Amazon EFS." }, "name": { "type": "string", "description": "Default: None\n\nCreation Token of Amazon EFS file system." }, "targets": { "type": "array", "description": "Default: None\n\nList of mounted targets. It should be a list of dictionaries, every dictionary should include next attributes:\n - SubnetId - Mandatory. The ID of the subnet to add the mount target in.\n - IpAddress - Optional. A valid IPv4 address within the address range of the specified subnet.\n - SecurityGroups - Optional. List of security group IDs, of the form \"sg-xxxxxxxx\". These must be for the same VPC as subnet specified.\n" } } }, "keycloak_clienttemplate": { "type": "object", "description": "This module allows the administration of Keycloak client templates via the Keycloak REST API. It requires access to the REST API via OpenID Connect; the user connecting and the client being used must have the requisite access rights. In a default Keycloak installation, admin-cli and an admin user would work, as would a separate client definition with the scope tailored to your needs and a user having the expected roles.\nThe names of module options are snake_cased versions of the camelCase ones found in the Keycloak API and its documentation at U(http://www.keycloak.org/docs-api/3.3/rest-api/)\nThe Keycloak API does not always enforce for only sensible settings to be used -- you can set SAML-specific settings on an OpenID Connect client for instance and vice versa. Be careful. If you do not specify a setting, usually a sensible default is chosen.", "properties": { "protocol": { "type": "string", "description": "Type of client template (either C(openid-connect) or C(saml)." }, "description": { "type": "string", "description": "Description of the client template in Keycloak" }, "protocol_mappers": { "type": "string", "description": "a list of dicts defining protocol mappers for this client template. This is 'protocolMappers' in the Keycloak REST API." }, "full_scope_allowed": { "type": "string", "description": "Is the \"Full Scope Allowed\" feature set for this client template or not. This is 'fullScopeAllowed' in the Keycloak REST API." }, "state": { "type": "string", "description": "Default: present\n\nState of the client template\nOn C(present), the client template will be created (or updated if it exists already).\nOn C(absent), the client template will be removed if it exists" }, "attributes": { "type": "string", "description": "A dict of further attributes for this client template. This can contain various configuration settings, though in the default installation of Keycloak as of 3.4, none are documented or known, so this is usually empty." }, "realm": { "type": "string", "description": "Realm this client template is found in." }, "id": { "type": "string", "description": "Id of client template to be worked on. This is usually a UUID." }, "name": { "type": "string", "description": "Name of the client template" } } }, "rax_identity": { "type": "object", "description": "Verifies Rackspace Cloud credentials and returns identity information", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" } } }, "github_deploy_key": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "title", "label" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "title" ], "type": "object" }, { "required": [ "label" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "repo", "repository" ], "type": "object" } }, { "oneOf": [ { "required": [ "repo" ], "type": "object" }, { "required": [ "repository" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "owner", "account", "organization" ], "type": "object" } }, { "oneOf": [ { "required": [ "owner" ], "type": "object" }, { "required": [ "account" ], "type": "object" }, { "required": [ "organization" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "otp", "2fa_token" ], "type": "object" } } ] } ], "type": "object", "description": "Adds or removes deploy keys for GitHub repositories. Supports authentication using username and password, username and password and 2-factor authentication code (OTP), OAuth2 token, or personal access token.", "properties": { "read_only": { "description": "Default: True\n\nIf C(true), the deploy key will only be able to read repository contents. Otherwise, the deploy key will be able to read and write.", "$ref": "#/definitions/ansible_truth" }, "username": { "type": "string", "description": "The username to authenticate with." }, "account": { "type": "string", "description": "The name of the individual account or organization that owns the GitHub repository." }, "2fa_token": { "type": "string", "description": "The 6 digit One Time Password for 2-Factor Authentication. Required together with I(username) and I(password)." }, "force": { "description": "If C(true), forcefully adds the deploy key by deleting any existing deploy key with the same public key or title.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "The name for the deploy key." }, "repository": { "type": "string", "description": "The name of the GitHub repository." }, "title": { "type": "string", "description": "The name for the deploy key." }, "token": { "type": "string", "description": "The OAuth2 token or personal access token to authenticate with. Mutually exclusive with I(password)." }, "label": { "type": "string", "description": "The name for the deploy key." }, "repo": { "type": "string", "description": "The name of the GitHub repository." }, "otp": { "type": "string", "description": "The 6 digit One Time Password for 2-Factor Authentication. Required together with I(username) and I(password)." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the deploy key." }, "key": { "type": "string", "description": "The SSH public key to add to the repository as a deploy key." }, "owner": { "type": "string", "description": "The name of the individual account or organization that owns the GitHub repository." }, "organization": { "type": "string", "description": "The name of the individual account or organization that owns the GitHub repository." }, "password": { "type": "string", "description": "The password to authenticate with. A personal access token can be used here in place of a password." } } }, "gcdns_record": { "allOf": [ { "allOf": [ { "not": { "required": [ "record", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "record" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "record_data", "value" ], "type": "object" } } ] } ], "type": "object", "description": "Creates or removes resource records in Google Cloud DNS.", "properties": { "zone_id": { "type": "string", "description": "The Google Cloud ID of the zone (e.g., example-com).\nOne of either I(zone) or I(zone_id) must be specified as an option, or the module will fail.\nThese usually take the form of domain names with the dots replaced with dashes. A zone ID will never have any dots in it.\nI(zone_id) can be faster than I(zone) in projects with a large number of zones.\nIf both I(zone) and I(zone_id) are specified, I(zone_id) will be used." }, "zone": { "type": "string", "description": "The DNS domain name of the zone (e.g., example.com).\nOne of either I(zone) or I(zone_id) must be specified as an option, or the module will fail.\nIf both I(zone) and I(zone_id) are specified, I(zone_id) will be used." }, "record_data": { "type": "string", "description": "The record_data to use for the resource record.\nI(record_data) must be specified if I(state) is C(present) or I(overwrite) is C(True), or the module will fail.\nValid record_data vary based on the record's I(type). In addition, resource records that contain a DNS domain name in the value field (e.g., CNAME, PTR, SRV, .etc) MUST include a trailing dot in the value.\nIndividual string record_data for TXT records must be enclosed in double quotes.\nFor resource records that have the same name but different record_data (e.g., multiple A records), they must be defined as multiple list entries in a single record." }, "service_account_email": { "type": "string", "description": "The e-mail address for a service account with access to Google Cloud DNS." }, "credentials_file": { "type": "string", "description": "The path to the JSON file associated with the service account email." }, "value": { "type": "string", "description": "The record_data to use for the resource record.\nI(record_data) must be specified if I(state) is C(present) or I(overwrite) is C(True), or the module will fail.\nValid record_data vary based on the record's I(type). In addition, resource records that contain a DNS domain name in the value field (e.g., CNAME, PTR, SRV, .etc) MUST include a trailing dot in the value.\nIndividual string record_data for TXT records must be enclosed in double quotes.\nFor resource records that have the same name but different record_data (e.g., multiple A records), they must be defined as multiple list entries in a single record." }, "pem_file": { "type": "string", "description": "The path to the PEM file associated with the service account email.\nThis option is deprecated and may be removed in a future release. Use I(credentials_file) instead." }, "record": { "type": "string", "description": "The fully-qualified domain name of the resource record." }, "state": { "type": "string", "description": "Default: present\n\nWhether the given resource record should or should not be present." }, "ttl": { "type": "string", "description": "Default: 300\n\nThe amount of time in seconds that a resource record will remain cached by a caching resolver." }, "project_id": { "type": "string", "description": "The Google Cloud Platform project ID to use." }, "type": { "type": "string", "description": "The type of resource record to add." }, "overwrite": { "type": "string", "description": "Whether an attempt to overwrite an existing record should succeed or fail. The behavior of this option depends on I(state).\nIf I(state) is C(present) and I(overwrite) is C(True), this module will replace an existing resource record of the same name with the provided I(record_data). If I(state) is C(present) and I(overwrite) is C(False), this module will fail if there is an existing resource record with the same name and type, but different resource data.\nIf I(state) is C(absent) and I(overwrite) is C(True), this module will remove the given resource record unconditionally. If I(state) is C(absent) and I(overwrite) is C(False), this module will fail if the provided record_data do not match exactly with the existing resource record's record_data." }, "name": { "type": "string", "description": "The fully-qualified domain name of the resource record." } } }, "vyos_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service on VyOS network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration." } } }, "na_cdot_lun": { "required": [ "name", "vserver", "state" ], "type": "object", "description": "Create, destroy, resize luns on NetApp cDOT.", "properties": { "vserver": { "type": "string", "description": "The name of the vserver to use." }, "name": { "type": "string", "description": "The name of the lun to manage." }, "flexvol_name": { "type": "string", "description": "The name of the FlexVol the lun should exist on.\nRequired when C(state=present)." }, "size_unit": { "type": "string", "description": "Default: gb\n\nThe unit used to interpret the size parameter." }, "force_remove": { "type": "string", "description": "If \"true\", override checks that prevent a LUN from being destroyed if it is online and mapped.\nIf \"false\", destroying an online and mapped LUN will fail." }, "state": { "type": "string", "description": "Whether the specified lun should exist or not." }, "force_resize": { "type": "string", "description": "Forcibly reduce the size. This is required for reducing the size of the LUN to avoid accidentally reducing the LUN size." }, "force_remove_fenced": { "type": "string", "description": "If \"true\", override checks that prevent a LUN from being destroyed while it is fenced.\nIf \"false\", attempting to destroy a fenced LUN will fail.\nThe default if not specified is \"false\". This field is available in Data ONTAP 8.2 and later." }, "size": { "type": "string", "description": "The size of the lun in C(size_unit).\nRequired when C(state=present)." } } }, "sysctl": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "key" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "key" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "value", "val" ], "type": "object" } } ] } ], "type": "object", "description": "This module manipulates sysctl entries and optionally performs a C(/sbin/sysctl -p) after changing them.", "properties": { "name": { "type": "string", "description": "The dot-separated path (aka I(key)) specifying the sysctl variable." }, "val": { "type": "string", "description": "Desired value of the sysctl key." }, "ignoreerrors": { "type": "string", "description": "Use this option to ignore errors about unknown keys." }, "value": { "type": "string", "description": "Desired value of the sysctl key." }, "reload": { "type": "string", "description": "Default: yes\n\nIf C(yes), performs a I(/sbin/sysctl -p) if the C(sysctl_file) is updated. If C(no), does not reload I(sysctl) even if the C(sysctl_file) is updated." }, "state": { "type": "string", "description": "Default: present\n\nWhether the entry should be present or absent in the sysctl file." }, "key": { "type": "string", "description": "The dot-separated path (aka I(key)) specifying the sysctl variable." }, "sysctl_set": { "type": "string", "description": "Verify token value with the sysctl command and set with -w if necessary" }, "sysctl_file": { "type": "string", "description": "Default: /etc/sysctl.conf\n\nSpecifies the absolute path to C(sysctl.conf), if not C(/etc/sysctl.conf)." } } }, "win_shortcut": { "required": [ "dest" ], "type": "object", "description": "Create, manage and delete Windows shortcuts", "properties": { "windowstyle": { "type": "string", "description": "Influences how the application is displayed when it is launched." }, "src": { "type": "string", "description": "Executable or URL the shortcut points to.\nThe executable needs to be in your PATH, or has to be an absolute path to the executable." }, "description": { "type": "string", "description": "Description for the shortcut.\nThis is usually shown when hoovering the icon." }, "dest": { "type": "string", "description": "Destination file for the shortcuting file.\nFile name should have a C(.lnk) or C(.url) extension." }, "args": { "type": "string", "description": "Additional arguments for the executable defined in C(src)." }, "hotkey": { "type": "string", "description": "Key combination for the shortcut.\nThis is a combination of one or more modifiers and a key.\nPossible modifiers are Alt, Ctrl, Shift, Ext.\nPossible keys are [A-Z] and [0-9]." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), creates or updates the shortcut.\nWhen C(absent), removes the shortcut if it exists." }, "directory": { "type": "string", "description": "Working directory for executable defined in C(src)." }, "icon": { "type": "string", "description": "Icon used for the shortcut.\nFile name should have a C(.ico) extension.\nThe file name is followed by a comma and the number in the library file (.dll) or use 0 for an image file." } } }, "zabbix_proxy": { "required": [ "proxy_name" ], "type": "object", "description": "This module allows you to create, modify, get and delete Zabbix proxy entries.", "properties": { "status": { "type": "string", "description": "Default: active\n\nType of proxy. (4 - active, 5 - passive)" }, "tls_psk": { "type": "string", "description": "The preshared key, at least 32 hex digits. Required if either I(tls_connect) or I(tls_accept) has PSK enabled." }, "description": { "type": "string", "description": "Description of the proxy.." }, "tls_connect": { "type": "string", "description": "Default: no_encryption\n\nConnections to proxy." }, "tls_accept": { "type": "string", "description": "Default: no_encryption\n\nConnections from proxy." }, "proxy_name": { "type": "string", "description": "Name of the proxy in Zabbix." }, "state": { "type": "string", "description": "Default: present\n\nState of the proxy.\nOn C(present), it will create if proxy does not exist or update the proxy if the associated data is different.\nOn C(absent) will remove a proxy if it exists." }, "tls_subject": { "type": "string", "description": "Certificate subject." }, "interface": { "type": "object", "description": "Dictionary with params for the interface when proxy is in passive mode\nAvailable values are: dns, ip, main, port, type and useip.\nPlease review the interface documentation for more information on the supported properties\nU(https://www.zabbix.com/documentation/3.2/manual/api/reference/proxy/object#proxy_interface)" }, "tls_issuer": { "type": "string", "description": "Certificate issuer." }, "tls_psk_identity": { "type": "string", "description": "PSK identity. Required if either I(tls_connect) or I(tls_accept) has PSK enabled." } } }, "bigip_device_group_member": { "required": [ "name", "device_group" ], "type": "object", "description": "Manages members in a device group. Members in a device group can only be added or removed, never updated. This is because the members are identified by unique name values and changing that name would invalidate the uniqueness.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the device group member.\nWhen C(absent), ensures the device group member is removed." }, "name": { "type": "string", "description": "Specifies the name of the device that you want to add to the device group. Often this will be the hostname of the device. This member must be trusted by the device already. Trusting can be done with the C(bigip_device_trust) module and the C(peer_hostname) option to that module." }, "device_group": { "type": "string", "description": "The device group that you want to add the member to." } } }, "panos_import": { "required": [ "password", "ip_address" ], "type": "object", "description": "Import file on PAN-OS device", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername for device authentication." }, "category": { "type": "string", "description": "Default: software\n\nCategory of file uploaded. The default is software." }, "url": { "type": "string", "description": "Default: None\n\nURL of the file that will be imported to device." }, "file": { "type": "string", "description": "Default: None\n\nLocation of the file to import into device." }, "password": { "type": "string", "description": "Password for device authentication." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device." } } }, "win_pagefile": { "type": "object", "description": "Query current pagefile configuration.\nEnable/Disable AutomaticManagedPagefile.\nCreate new or override pagefile configuration.", "properties": { "test_path": { "description": "Default: yes\n\nUse Test-Path on the drive to make sure the drive is accessible before creating the pagefile.", "$ref": "#/definitions/ansible_truth" }, "initial_size": { "type": "string", "description": "The initial size of the pagefile in megabytes." }, "drive": { "type": "string", "description": "The drive of the pagefile." }, "state": { "type": "string", "description": "Default: query\n\nState of the pagefile." }, "system_managed": { "description": "Default: no\n\nConfigures current pagefile to be managed by the system.", "$ref": "#/definitions/ansible_truth" }, "remove_all": { "description": "Default: no\n\nRemove all pagefiles in the system, not including automatic managed.", "$ref": "#/definitions/ansible_truth" }, "override": { "description": "Default: yes\n\nOverride the current pagefile on the drive.", "$ref": "#/definitions/ansible_truth" }, "maximum_size": { "type": "string", "description": "The maximum size of the pagefile in megabytes." }, "automatic": { "description": "Configures AutomaticManagedPagefile for the entire system.", "$ref": "#/definitions/ansible_truth" } } }, "helm": { "type": "object", "description": "Install, upgrade, delete and list packages with the Helm package manage", "properties": { "disable_hooks": { "type": "string", "description": "Whether to disable hooks during the uninstall process" }, "name": { "type": "string", "description": "Release name to manage" }, "namespace": { "type": "string", "description": "Default: default\n\nKubernetes namespace where the chart should be installed" }, "chart": { "type": "string", "description": "A map describing the chart to install. For example:\nchart:\n name: memcached\n version: 0.4.0\n source:\n type: repo\n location: https://kubernetes-charts.storage.googleapis.com\n" }, "state": { "type": "string", "description": "Default: installed\n\nWhether to install C(present), remove C(absent), or purge C(purged) a package." }, "values": { "type": "string", "description": "A map of value options for the chart." }, "host": { "type": "string", "description": "Default: localhost\n\nTiller's server host" }, "port": { "type": "string", "description": "Default: 44134\n\nTiller's server port" } } }, "postgresql_privs": { "required": [ "roles", "database" ], "type": "object", "description": "Grant or revoke privileges on PostgreSQL database objects.\nThis module is basically a wrapper around most of the functionality of PostgreSQL's GRANT and REVOKE statements with detection of changes (GRANT/REVOKE I(privs) ON I(type) I(objs) TO/FROM I(roles))", "properties": { "objs": { "type": "string", "description": "Comma separated list of database objects to set privileges on.\nIf I(type) is C(table) or C(sequence), the special value C(ALL_IN_SCHEMA) can be provided instead to specify all database objects of type I(type) in the schema specified via I(schema). (This also works with PostgreSQL < 9.0.)\nIf I(type) is C(database), this parameter can be omitted, in which case privileges are set for the database specified via I(database).\nIf I(type) is I(function), colons (\":\") in object names will be replaced with commas (needed to specify function signatures, see examples)\nAlias: I(obj)" }, "ssl_rootcert": { "type": "string", "description": "Specifies the name of a file containing SSL certificate authority (CA) certificate(s). If the file exists, the server's certificate will be verified to be signed by one of these authorities." }, "ssl_mode": { "type": "string", "description": "Default: prefer\n\nDetermines whether or with what priority a secure SSL TCP/IP connection will be negotiated with the server.\nSee https://www.postgresql.org/docs/current/static/libpq-ssl.html for more information on the modes.\nDefault of C(prefer) matches libpq default." }, "roles": { "type": "string", "description": "Comma separated list of role (user/group) names to set permissions for.\nThe special value C(PUBLIC) can be provided instead to set permissions for the implicitly defined PUBLIC group.\nAlias: I(role)" }, "database": { "type": "string", "description": "Name of database to connect to.\nAlias: I(db)" }, "privs": { "type": "string", "description": "Comma separated list of privileges to grant/revoke.\nAlias: I(priv)" }, "host": { "type": "string", "description": "Database host address. If unspecified, connect via Unix socket.\nAlias: I(login_host)" }, "unix_socket": { "type": "string", "description": "Path to a Unix domain socket for local connections.\nAlias: I(login_unix_socket)" }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), the specified privileges are granted, if C(absent) they are revoked." }, "login": { "type": "string", "description": "Default: postgres\n\nThe username to authenticate with.\nAlias: I(login_user)" }, "password": { "type": "string", "description": "The password to authenticate with.\nAlias: I(login_password))" }, "type": { "type": "string", "description": "Default: table\n\nType of database object to set privileges on." }, "port": { "type": "string", "description": "Default: 5432\n\nDatabase port to connect to." }, "grant_option": { "type": "string", "description": "Whether C(role) may grant/revoke the specified privileges/group memberships to others.\nSet to C(no) to revoke GRANT OPTION, leave unspecified to make no changes.\nI(grant_option) only has an effect if I(state) is C(present).\nAlias: I(admin_option)" }, "schema": { "type": "string", "description": "Schema that contains the database objects specified via I(objs).\nMay only be provided if I(type) is C(table), C(sequence) or C(function). Defaults to C(public) in these cases." } } }, "nxos_interface": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages physical attributes of interfaces of NX-OS switches.", "properties": { "neighbors": { "type": "string", "description": "Check the operational state of given interface C(name) for LLDP neighbor.\nThe following suboptions are available. This is state check parameter only." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state arguments." }, "description": { "type": "string", "description": "Interface description." }, "ip_forward": { "type": "string", "description": "Enable/Disable ip forward feature on SVIs." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status. Applicable for ethernet interface only." }, "interface_type": { "type": "string", "description": "Interface type to be unconfigured from the device." }, "fabric_forwarding_anycast_gateway": { "type": "string", "description": "Associate SVI with anycast gateway under VLAN configuration mode. Applicable for SVI interface only." }, "mtu": { "type": "string", "description": "MTU for a specific interface. Must be an even number between 576 and 9216. Applicable for ethernet interface only." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "interface": { "type": "string", "description": "Full name of interface, i.e. Ethernet1/1, port-channel10." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "admin_state": { "type": "string", "description": "Default: up\n\nAdministrative state of the interface." }, "mode": { "type": "string", "description": "Manage Layer 2 or Layer 3 state of the interface. This option is supported for ethernet and portchannel interface. Applicable for ethernet and portchannel interface only." }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed. Applicable for ethernet interface only." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "name": { "type": "string", "description": "Full name of interface, i.e. Ethernet1/1, port-channel10." } } }, "cnos_facts": { "type": "object", "description": "This module allows you to view the switch information. It executes the show sysinfo CLI command on a switch and returns a file containing all the system information of the target network device. This module uses SSH to manage network device configuration. The results of the operation can be viewed in results directory. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_facts.html)", "properties": {} }, "tower_job_cancel": { "required": [ "job_id" ], "type": "object", "description": "Cancel Ansible Tower jobs. See U(https://www.ansible.com/tower) for an overview.", "properties": { "job_id": { "type": "string", "description": "ID of the job to cancel" }, "fail_if_not_running": { "type": "string", "description": "Fail loudly if the job_id does not reference a running job." } } }, "systemd": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "unit", "service" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "unit" ], "type": "object" }, { "required": [ "service" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "daemon_reload", "daemon-reload" ], "type": "object" } } ] } ], "type": "object", "description": "Controls systemd services on remote hosts.", "properties": { "daemon-reload": { "type": "string", "description": "run daemon-reload before doing any other operations, to make sure systemd has read any changes." }, "name": { "type": "string", "description": "Name of the service." }, "service": { "type": "string", "description": "Name of the service." }, "enabled": { "type": "string", "description": "Whether the service should start on boot. B(At least one of state and enabled are required.)" }, "daemon_reload": { "type": "string", "description": "run daemon-reload before doing any other operations, to make sure systemd has read any changes." }, "state": { "type": "string", "description": "C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the service. C(reloaded) will always reload." }, "masked": { "type": "string", "description": "Whether the unit should be masked or not, a masked unit is impossible to start." }, "unit": { "type": "string", "description": "Name of the service." }, "user": { "type": "string", "description": "run systemctl talking to the service manager of the calling user, rather than the service manager of the system." } } }, "cs_sshkeypair": { "required": [ "name" ], "type": "object", "description": "Create, register and remove SSH keys.\nIf no key was found and no public key was provided and a new SSH private/public key pair will be created and the private key will be returned.", "properties": { "public_key": { "type": "string", "description": "String of the public key." }, "account": { "type": "string", "description": "Account the public key is related to." }, "name": { "type": "string", "description": "Name of public key." }, "domain": { "type": "string", "description": "Domain the public key is related to." }, "project": { "type": "string", "description": "Name of the project the public key to be registered in." }, "state": { "type": "string", "description": "Default: present\n\nState of the public key." } } }, "icinga2_feature": { "required": [ "name" ], "type": "object", "description": "Enable or disable an Icinga2 feature", "properties": { "state": { "type": "string", "description": "Default: present\n\nApply feature state." }, "name": { "type": "string", "description": "This is the feature name to enable or disable." } } }, "sts_session_token": { "type": "object", "description": "Obtain a session token from the AWS Security Token Service", "properties": { "mfa_token": { "type": "string", "description": "The value provided by the MFA device, if the trust policy of the user requires MFA." }, "mfa_serial_number": { "type": "string", "description": "The identification number of the MFA device that is associated with the user who is making the GetSessionToken call." }, "duration_seconds": { "type": "string", "description": "The duration, in seconds, of the session token. See http://docs.aws.amazon.com/STS/latest/APIReference/API_GetSessionToken.html#API_GetSessionToken_RequestParameters for acceptable and default values." } } }, "gcspanner": { "required": [ "instance_id", "configuration" ], "type": "object", "description": "Create and Delete Instances/Databases on Spanner. See U(https://cloud.google.com/spanner/docs) for an overview.", "properties": { "instance_display_name": { "type": "string", "description": "Name of Instance to display.\nIf not specified, instance_id will be used instead." }, "database_name": { "type": "string", "description": "Name of database contained on the instance." }, "force_instance_delete": { "description": "Default: no\n\nTo delete an instance, this argument must exist and be true (along with state being equal to absent).", "$ref": "#/definitions/ansible_truth" }, "instance_id": { "type": "string", "description": "GCP spanner instance name." }, "state": { "type": "string", "description": "Default: present\n\nState of the instance or database. Applies to the most granular resource.\nIf a C(database_name) is specified we remove it.\nIf only C(instance_id) is specified, that is what is removed." }, "node_count": { "type": "string", "description": "Default: 1\n\nNumber of nodes in the instance." }, "configuration": { "type": "string", "description": "Configuration the instance should use.\nExamples are us-central1, asia-east1 and europe-west1." } } }, "ironware_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Brocade Ironware configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with Ironware configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "update": { "type": "string", "description": "Default: merge\n\nThe I(update) argument controls how the configuration statements are processed on the remote device. Valid choices for the I(update) argument are I(merge) and I(check). When the argument is set to I(merge), the configuration changes are merged with the current device running configuration. When the argument is set to I(check) the configuration updates are determined but not actually configured on the remote device." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct" }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "commit": { "type": "string", "description": "Default: merge\n\nThis argument specifies the update method to use when applying the configuration changes to the remote node. If the value is set to I(merge) the configuration updates are merged with the running- config. If the value is set to I(check), no changes are made to the remote host." }, "save_when": { "type": "string", "description": "Default: never\n\nWhen changes are made to the device running-configuration, the changes are not copied to non-volatile storage by default. Using this argument will change that before. If the argument is set to I(always), then the running-config will always be copied to the startup-config and the I(modified) flag will always be set to True. If the argument is set to I(modified), then the running-config will only be copied to the startup-config if it has changed since the last save to startup-config. If the argument is set to I(never), the running-config will never be copied to the startup-config" }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system" } } }, "rundeck_project": { "required": [ "url", "token", "name" ], "type": "object", "description": "Create and remove Rundeck projects through HTTP API.", "properties": { "url": { "type": "string", "description": "Sets the rundeck instance URL." }, "token": { "type": "string", "description": "Sets the token to authenticate against Rundeck API." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove Rundeck project." }, "api_version": { "type": "string", "description": "Default: 14\n\nSets the API version used by module.\nAPI version must be at least 14." }, "name": { "type": "string", "description": "Sets the project name." } } }, "aws_s3_cors": { "required": [ "state", "name" ], "type": "object", "description": "Manage CORS for S3 buckets in AWS", "properties": { "rules": { "type": "string", "description": "Cors rules to put on the s3 bucket" }, "state": { "type": "string", "description": "Create or remove cors on the s3 bucket" }, "name": { "type": "string", "description": "Name of the s3 bucket" } } }, "rax_mon_alarm": { "required": [ "entity_id", "notification_plan_id", "check_id", "label" ], "type": "object", "description": "Create or delete a Rackspace Cloud Monitoring alarm that associates an existing rax_mon_entity, rax_mon_check, and rax_mon_notification_plan with criteria that specify what conditions will trigger which levels of notifications. Rackspace monitoring module flow | rax_mon_entity -> rax_mon_check -> rax_mon_notification -> rax_mon_notification_plan -> *rax_mon_alarm*", "properties": { "entity_id": { "type": "string", "description": "ID of the entity this alarm is attached to. May be acquired by registering the value of a rax_mon_entity task." }, "notification_plan_id": { "type": "string", "description": "ID of the notification plan to trigger if this alarm fires. May be acquired by registering the value of a rax_mon_notification_plan task." }, "check_id": { "type": "string", "description": "ID of the check that should be alerted on. May be acquired by registering the value of a rax_mon_check task." }, "label": { "type": "string", "description": "Friendly name for this alarm, used to achieve idempotence. Must be a String between 1 and 255 characters long." }, "disabled": { "type": "string", "description": "If yes, create this alarm, but leave it in an inactive state. Defaults to no." }, "state": { "type": "string", "description": "Default: present\n\nEnsure that the alarm with this C(label) exists or does not exist." }, "criteria": { "type": "string", "description": "Alarm DSL that describes alerting conditions and their output states. Must be between 1 and 16384 characters long. See http://docs.rackspace.com/cm/api/v1.0/cm-devguide/content/alerts-language.html for a reference on the alerting language." }, "metadata": { "type": "string", "description": "Arbitrary key/value pairs to accompany the alarm. Must be a hash of String keys and values between 1 and 255 characters long." } } }, "proxysql_backend_servers": { "required": [ "hostname" ], "type": "object", "description": "The M(proxysql_backend_servers) module adds or removes mysql hosts using the proxysql admin interface.", "properties": { "status": { "type": "string", "description": "ONLINE - Backend server is fully operational. OFFLINE_SOFT - When a server is put into C(OFFLINE_SOFT) mode, connections are kept in use until the current transaction is completed. This allows to gracefully detach a backend. OFFLINE_HARD - When a server is put into C(OFFLINE_HARD) mode, the existing connections are dropped, while new incoming connections aren't accepted either.\nIf omitted the proxysql database default for I(status) is C(ONLINE)." }, "comment": { "type": "string", "description": "Text field that can be used for any purposed defined by the user. Could be a description of what the host stores, a reminder of when the host was added or disabled, or a JSON processed by some checker script." }, "compression": { "type": "string", "description": "If the value of I(compression) is greater than 0, new connections to that server will use compression. If omitted the proxysql database default for I(compression) is 0." }, "weight": { "type": "string", "description": "The bigger the weight of a server relative to other weights, the higher the probability of the server being chosen from the hostgroup. If omitted the proxysql database default for I(weight) is 1." }, "hostname": { "type": "string", "description": "The ip address at which the mysqld instance can be contacted." }, "hostgroup_id": { "type": "string", "description": "The hostgroup in which this mysqld instance is included. An instance can be part of one or more hostgroups." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) - adds the host, when C(absent) - removes the host." }, "use_ssl": { "type": "string", "description": "If I(use_ssl) is set to C(True), connections to this server will be made using SSL connections. If omitted the proxysql database default for I(use_ssl) is C(False)." }, "max_replication_lag": { "type": "string", "description": "If greater than 0, ProxySQL will reguarly monitor replication lag. If replication lag goes above I(max_replication_lag), proxysql will temporarily shun the server until replication catches up. If omitted the proxysql database default for I(max_replication_lag) is 0." }, "port": { "type": "string", "description": "Default: 3306\n\nThe port at which the mysqld instance can be contacted." }, "max_latency_ms": { "type": "string", "description": "Ping time is monitored regularly. If a host has a ping time greater than I(max_latency_ms) it is excluded from the connection pool (although the server stays ONLINE). If omitted the proxysql database default for I(max_latency_ms) is 0." }, "max_connections": { "type": "string", "description": "The maximum number of connections ProxySQL will open to this backend server. If omitted the proxysql database default for I(max_connections) is 1000." } } }, "kibana_plugin": { "required": [ "name" ], "type": "object", "description": "Manages Kibana plugins.", "properties": { "force": { "type": "string", "description": "Delete and re-install the plugin. Can be useful for plugins update" }, "name": { "type": "string", "description": "Name of the plugin to install" }, "url": { "type": "string", "description": "Default: None\n\nSet exact URL to download the plugin from. For local file, prefix its absolute path with file://" }, "state": { "type": "string", "description": "Default: present\n\nDesired state of a plugin." }, "version": { "type": "string", "description": "Default: None\n\nVersion of the plugin to be installed. If plugin exists with previous version, it will NOT be updated if C(force) is not set to yes" }, "timeout": { "type": "string", "description": "Default: 1m\n\nTimeout setting: 30s, 1m, 1h..." }, "plugin_dir": { "type": "string", "description": "Default: /opt/kibana/installedPlugins/\n\nYour configured plugin directory specified in Kibana" }, "plugin_bin": { "type": "string", "description": "Default: /opt/kibana/bin/kibana\n\nLocation of the plugin binary" } } }, "ovirt_disk": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "alias" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage Virtual Machine and floating disks in oVirt/RHV.", "properties": { "vm_name": { "type": "string", "description": "Name of the Virtual Machine to manage. Either C(vm_id) or C(vm_name) is required if C(state) is I(attached) or I(detached)." }, "storage_domains": { "type": "string", "description": "Storage domain names where disk should be copied.\nC(**IMPORTANT**)\nThere is no reliable way to achieve idempotency, so every time you specify this parameter the disks are copied, so please handle your playbook accordingly to not copy the disks all the time. This is valid only for VM and floating disks, template disks works as expected." }, "force": { "type": "string", "description": "Please take a look at C(image_path) documentation to see the correct usage of this parameter." }, "quota_id": { "type": "string", "description": "Disk quota ID to be used for disk. By default quota is chosen by oVirt/RHV engine." }, "id": { "type": "string", "description": "ID of the disk to manage. Either C(id) or C(name) is required." }, "size": { "type": "string", "description": "Size of the disk. Size should be specified using IEC standard units. For example 10GiB, 1024MiB, etc.\nSize can be only increased, not decreased." }, "storage_domain": { "type": "string", "description": "Storage domain name where disk should be created. By default storage is chosen by oVirt/RHV engine." }, "openstack_volume_type": { "type": "string", "description": "Name of the openstack volume type. This is valid when working with cinder." }, "format": { "type": "string", "description": "Specify format of the disk.\nNote that this option isn't idempotent as it's not currently possible to change format of the disk via API." }, "upload_image_path": { "type": "string", "description": "Path to disk image, which should be uploaded.\nNote that currently we support only compatibility version 0.10 of the qcow disk.\nNote that you must have an valid oVirt/RHV engine CA in your system trust store or you must provide it in C(ca_file) parameter.\nNote that there is no reliable way to achieve idempotency, so if you want to upload the disk even if the disk with C(id) or C(name) exists, then please use C(force) I(true). If you will use C(force) I(false), which is default, then the disk image won't be uploaded." }, "state": { "type": "string", "description": "Default: present\n\nShould the Virtual Machine disk be present/absent/attached/detached." }, "image_provider": { "type": "string", "description": "When C(state) is I(exported) disk is exported to given Glance image provider.\nC(**IMPORTANT**)\nThere is no reliable way to achieve idempotency, so every time you specify this parameter the disk is exported, so please handle your playbook accordingly to not export the disk all the time. This option is valid only for template disks." }, "profile": { "type": "string", "description": "Disk profile name to be attached to disk. By default profile is chosen by oVirt/RHV engine." }, "description": { "type": "string", "description": "Description of the disk image to manage." }, "sparsify": { "type": "string", "description": "I(True) if the disk should be sparsified.\nSparsification frees space in the disk image that is not used by its filesystem. As a result, the image will occupy less space on the storage.\nNote that this parameter isn't idempotent, as it's not possible to check if the disk should be or should not be sparsified." }, "logical_unit": { "type": "object", "description": "Dictionary which describes LUN to be directly attached to VM:\nC(address) - Address of the storage server. Used by iSCSI.\nC(port) - Port of the storage server. Used by iSCSI.\nC(target) - iSCSI target.\nC(lun_id) - LUN id.\nC(username) - CHAP Username to be used to access storage server. Used by iSCSI.\nC(password) - CHAP Password of the user to be used to access storage server. Used by iSCSI.\nC(storage_type) - Storage type either I(fcp) or I(iscsi)." }, "download_image_path": { "type": "string", "description": "Path on a file system where disk should be downloaded.\nNote that you must have an valid oVirt/RHV engine CA in your system trust store or you must provide it in C(ca_file) parameter.\nNote that the disk is not downloaded when the file already exists, but you can forcibly download the disk when using C(force) I (true)." }, "interface": { "type": "string", "description": "Default: virtio\n\nDriver of the storage interface." }, "vm_id": { "type": "string", "description": "ID of the Virtual Machine to manage. Either C(vm_id) or C(vm_name) is required if C(state) is I(attached) or I(detached)." }, "name": { "type": "string", "description": "Name of the disk to manage. Either C(id) or C(name)/C(alias) is required." }, "bootable": { "type": "string", "description": "I(True) if the disk should be bootable. By default when disk is created it isn't bootable." }, "alias": { "type": "string", "description": "Name of the disk to manage. Either C(id) or C(name)/C(alias) is required." }, "shareable": { "type": "string", "description": "I(True) if the disk should be shareable. By default when disk is created it isn't shareable." }, "sparse": { "type": "string", "description": "I(True) if the disk should be sparse (also known as I(thin provision)). If the parameter is omitted, cow disks will be created as sparse and raw disks as I(preallocated)\nNote that this option isn't idempotent as it's not currently possible to change sparseness of the disk via API." } } }, "win_mapped_drive": { "required": [ "letter" ], "type": "object", "description": "Allows you to modify mapped network drives for individual users.", "properties": { "username": { "type": "string", "description": "Credentials to map the drive with.\nThe username MUST include the domain or servername like SERVER\\user, see the example for more information." }, "path": { "type": "string", "description": "The UNC path to map the drive to.\nThis is required if C(state=present).\nIf C(state=absent) and path is not set, the module will delete the mapped drive regardless of the target.\nIf C(state=absent) and the path is set, the module will throw an error if path does not match the target of the mapped drive." }, "state": { "type": "string", "description": "Default: present\n\nIf C(state=present) will ensure the mapped drive exists.\nIf C(state=absent) will ensure the mapped drive does not exist." }, "password": { "type": "string", "description": "The password for C(username)." }, "letter": { "type": "string", "description": "The letter of the network path to map to.\nThis letter must not already be in use with Windows." } } }, "nxos_vtp_version": { "required": [ "version" ], "type": "object", "description": "Manages VTP version configuration.", "properties": { "version": { "type": "string", "description": "VTP version number." } } }, "aos_ip_pool": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Ip Pool module let you manage your IP Pool easily. You can create create and delete IP Pool by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "subnets": { "type": "array", "description": "List of subnet that needs to be part of the IP Pool." }, "name": { "type": "string", "description": "Name of the IP Pool to manage. Only one of I(name), I(id) or I(content) can be set." }, "content": { "type": "string", "description": "Datastructure of the IP Pool to manage. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the IP Pool (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "id": { "type": "string", "description": "AOS Id of the IP Pool to manage (can't be used to create a new IP Pool), Only one of I(name), I(id) or I(content) can be set." } } }, "vertica_role": { "allOf": [ { "allOf": [ { "not": { "required": [ "assigned_roles", "assigned_role" ], "type": "object" } } ] } ], "type": "object", "description": "Adds or removes Vertica database role and, optionally, assign other roles.", "properties": { "assigned_roles": { "type": "string", "description": "Comma separated list of roles to assign to the role." }, "name": { "type": "string", "description": "Name of the role to add or remove." }, "login_user": { "type": "string", "description": "Default: dbadmin\n\nThe username used to authenticate with." }, "db": { "type": "string", "description": "Name of the Vertica database." }, "cluster": { "type": "string", "description": "Default: localhost\n\nName of the Vertica cluster." }, "state": { "type": "string", "description": "Default: present\n\nWhether to create C(present), drop C(absent) or lock C(locked) a role." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "port": { "type": "string", "description": "Default: 5433\n\nVertica cluster port to connect to." }, "assigned_role": { "type": "string", "description": "Comma separated list of roles to assign to the role." } } }, "azure_rm_keyvaultkey": { "required": [ "keyvault_uri", "key_name" ], "type": "object", "description": "Create or delete a key within a given keyvault. By using Key Vault, you can encrypt keys and secrets (such as authentication keys, storage account keys, data encryption keys, .PFX files, and passwords).", "properties": { "keyvault_uri": { "type": "string", "description": "URI of the keyvault endpoint." }, "pem_password": { "type": "string", "description": "PEM password." }, "key_name": { "type": "string", "description": "Name of the keyvault key." }, "pem_file": { "type": "string", "description": "PEM file." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the key. Use 'present' to create a key and 'absent' to delete a key." }, "byok_file": { "type": "string", "description": "BYOK file." } } }, "set_stats": { "required": [ "data" ], "type": "object", "description": "This module allows setting/accumulating stats on the current ansible run, either per host of for all hosts in the run.", "properties": { "aggregate": { "type": "string", "description": "Default: True\n\nboolean that indicates if the provided value is aggregated to the existing stat C(yes) or will replace it C(no)" }, "data": { "type": "object", "description": "A dictionary of which each key represents a stat (or variable) you want to keep track of" }, "per_host": { "type": "string", "description": "boolean that indicates if the stats is per host or for all hosts in the run." } } }, "awall": { "type": "object", "description": "This modules allows for enable/disable/activate of I(awall) policies. Alpine Wall (I(awall)) generates a firewall configuration from the enabled policy files and activates the configuration on the system.", "properties": { "state": { "type": "string", "description": "Default: enabled\n\nThe policy(ies) will be C(enabled)\nThe policy(ies) will be C(disabled)" }, "activate": { "type": "string", "description": "Activate the new firewall rules. Can be run with other steps or on it's own." }, "name": { "type": "string", "description": "A policy name, like C(foo), or multiple policies, like C(foo, bar)." } } }, "avi_vrfcontext": { "required": [ "name" ], "type": "object", "description": "This module is used to configure VrfContext object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "static_routes": { "type": "array", "description": "List of staticroute." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "system_default": { "description": "Boolean flag to set system_default.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "bgp_profile": { "type": "string", "description": "Bgp local and peer info." }, "gateway_mon": { "type": "string", "description": "Configure ping based heartbeat check for gateway in service engines of vrf." }, "internal_gateway_monitor": { "type": "string", "description": "Configure ping based heartbeat check for all default gateways in service engines of vrf.\nField introduced in 17.1.1." }, "debugvrfcontext": { "type": "string", "description": "Configure debug flags for vrf.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "opendj_backendprop": { "required": [ "name", "hostname", "value", "port", "backend" ], "type": "object", "description": "This module will update settings for OpenDJ with the command set-backend-prop.\nIt will check first via de get-backend-prop if configuration needs to be applied.", "properties": { "username": { "type": "string", "description": "Default: cn=Directory Manager\n\nThe username to connect to." }, "name": { "type": "string", "description": "The configuration setting to update." }, "hostname": { "type": "string", "description": "The hostname of the OpenDJ server." }, "value": { "type": "string", "description": "The value for the configuration item." }, "state": { "type": "string", "description": "Default: present\n\nIf configuration needs to be added/updated" }, "passwordfile": { "type": "string", "description": "Location to the password file which holds the password for the cn=Directory Manager user.\nEither password or passwordfile is needed." }, "password": { "type": "string", "description": "The password for the cn=Directory Manager user.\nEither password or passwordfile is needed." }, "opendj_bindir": { "type": "string", "description": "Default: /opt/opendj/bin\n\nThe path to the bin directory of OpenDJ." }, "port": { "type": "string", "description": "The Admin port on which the OpenDJ instance is available." }, "backend": { "type": "string", "description": "The name of the backend on which the property needs to be updated." } } }, "jenkins_job_facts": { "type": "object", "description": "Query facts about which Jenkins jobs exist", "properties": { "name": { "type": "string", "description": "Exact name of the Jenkins job to fetch facts about." }, "url": { "type": "string", "description": "Default: http://localhost:8080\n\nUrl where the Jenkins server is accessible." }, "glob": { "type": "string", "description": "A shell glob of Jenkins job names to fetch facts about." }, "color": { "type": "string", "description": "Only fetch jobs with the given status color." }, "token": { "type": "string", "description": "API token used to authenticate alternatively to C(password)." }, "user": { "type": "string", "description": "User to authenticate with the Jenkins server." }, "password": { "type": "string", "description": "Password to authenticate with the Jenkins server." } } }, "aci_config_rollback": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Provides rollback and rollback preview functionality for Cisco ACI fabrics.\nConfig Rollbacks are done using snapshots C(aci_snapshot) with the configImportP class.", "properties": { "export_policy": { "type": "string", "description": "The export policy that the C(snapshot) is associated to." }, "import_mode": { "type": "string", "description": "Default: atomic\n\nDetermines how the import should be handled by the APIC.\nThe APIC defaults new Import Policies to C(atomic)." }, "description": { "type": "string", "description": "The description for the Import Policy." }, "descr": { "type": "string", "description": "The description for the Import Policy." }, "compare_export_policy": { "type": "string", "description": "The export policy that the C(compare_snapshot) is associated to." }, "state": { "type": "string", "description": "Default: rollback\n\nUse C(preview) for previewing the diff between two snapshots.\nUse C(rollback) for reverting the configuration to a previous snapshot." }, "snapshot": { "type": "string", "description": "The name of the snapshot to rollback to, or the base snapshot to use for comparison.\nThe C(aci_snapshot) module can be used to query the list of available snapshots." }, "import_policy": { "type": "string", "description": "The name of the Import Policy to use for config rollback." }, "import_type": { "type": "string", "description": "Default: replace\n\nDetermines how the current and snapshot configuration should be compared for replacement.\nThe APIC defaults new Import Policies to C(replace)." }, "compare_snapshot": { "type": "string", "description": "The name of the snapshot to compare with C(snapshot)." }, "fail_on_decrypt": { "description": "Default: yes\n\nDetermines if the APIC should fail the rollback if unable to decrypt secured data.\nThe APIC defaults new Import Policies to C(yes).", "$ref": "#/definitions/ansible_truth" } } }, "bigip_monitor_udp": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM udp monitors.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/udp\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(udp) parent on the C(Common) partition." }, "receive": { "type": "string", "description": "The receive string for the monitor call." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "send": { "type": "string", "description": "The send string for the monitor call. When creating a new monitor, if this value is not provided, the default C(default send string) will be used." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." }, "port": { "type": "string", "description": "Port address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'. Note that if specifying an IP address, a value between 1 and 65535 must be specified." }, "receive_disable": { "type": "string", "description": "This setting works like C(receive), except that the system marks the node or pool member disabled when its response matches the C(receive_disable) string but not C(receive). To use this setting, you must specify both C(receive_disable) and C(receive)." } } }, "influxdb_user": { "required": [ "user_name" ], "type": "object", "description": "Manage InfluxDB users", "properties": { "admin": { "type": "string", "description": "Whether the user should be in the admin role or not." }, "user_password": { "type": "string", "description": "Password to be set for the user." }, "user_name": { "type": "string", "description": "Name of the user." }, "state": { "type": "string", "description": "Default: present\n\nState of the user." } } }, "cloudfront_distribution": { "type": "object", "description": "Allows for easy creation, updating and deletion of CloudFront distributions.", "properties": { "comment": { "type": "string", "description": "A comment that describes the cloudfront distribution. If not specified, it defaults to a generic message that it has been created with Ansible, and a datetime stamp." }, "purge_tags": { "type": "string", "description": "Default: no\n\nSpecifies whether existing tags will be removed before adding new tags. When I(purge_tags=yes), existing tags are removed and I(tags) are added, if specified. If no tags are specified, it removes all existing tags for the distribution. When I(purge_tags=no), existing tags are kept and I(tags) are added, if specified." }, "default_root_object": { "type": "string", "description": "A config element that specifies the path to request when the user requests the origin. e.g. if specified as 'index.html', this maps to www.example.com/index.html when www.example.com is called by the user. This prevents the entire distribution origin from being exposed at the root." }, "aliases": { "type": "string", "description": "A I(list[]) of domain name aliases (CNAMEs) as strings to be used for the distribution. Each alias must be unique across all distribution for the AWS account." }, "price_class": { "type": "string", "description": "Default: aws defaults this to 'PriceClass_All'\n\nA string that specifies the pricing class of the distribution. As per U(https://aws.amazon.com/cloudfront/pricing/) I(price_class=PriceClass_100) consists of the areas United States Canada Europe I(price_class=PriceClass_200) consists of the areas United States Canada Europe Hong Kong, Philippines, S. Korea, Singapore & Taiwan Japan India I(price_class=PriceClass_All) consists of the areas United States Canada Europe Hong Kong, Philippines, S. Korea, Singapore & Taiwan Japan India South America Australia" }, "purge_origins": { "type": "string", "description": "Whether to remove any origins that aren't listed in I(origins)" }, "default_cache_behavior": { "type": "string", "description": "A config element that is a complex object specifying the default cache behavior of the distribution. If not specified, the I(target_origin_id) is defined as the I(target_origin_id) of the first valid I(cache_behavior) in I(cache_behaviors) with defaults. The default cache behavior comprises the attributes I(target_origin_id) I(forwarded_values) I(query_string) I(cookies) I(forward) I(whitelisted_names) I(headers[]) I(query_string_cache_keys[]) I(trusted_signers) I(enabled) I(items[]) I(viewer_protocol_policy) I(min_ttl) I(allowed_methods) I(items[]) I(cached_methods[]) I(smooth_streaming) I(default_ttl) I(max_ttl) I(compress) I(lambda_function_associations[]) I(lambda_function_arn) I(event_type)" }, "distribution_id": { "type": "string", "description": "The id of the cloudfront distribution. This parameter can be exchanged with I(alias) or I(caller_reference) and is used in conjunction with I(e_tag)." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the distribution present - creates a new distribution or updates an existing distribution. absent - deletes an existing distribution." }, "cache_behaviors": { "type": "string", "description": "A config element that is a I(list[]) of complex cache behavior objects to be specified for the distribution. The order of the list is preserved across runs unless C(purge_cache_behavior) is enabled. Each cache behavior comprises the attributes I(path_pattern) I(target_origin_id) I(forwarded_values) I(query_string) I(cookies) I(forward) I(whitelisted_names) I(headers[]) I(query_string_cache_keys[]) I(trusted_signers) I(enabled) I(items[]) I(viewer_protocol_policy) I(min_ttl) I(allowed_methods) I(items[]) I(cached_methods[]) I(smooth_streaming) I(default_ttl) I(max_ttl) I(compress) I(lambda_function_associations[])" }, "caller_reference": { "type": "string", "description": "A unique identifier for creating and updating cloudfront distributions. Each caller reference must be unique across all distributions. e.g. a caller reference used in a web distribution cannot be reused in a streaming distribution. This parameter can be used instead of I(distribution_id) to reference an existing distribution. If not specified, this defaults to a datetime stamp of the format 'YYYY-MM-DDTHH:MM:SS.ffffff'." }, "purge_custom_error_responses": { "type": "string", "description": "Whether to remove any custom error responses that aren't listed in I(custom_error_responses)" }, "e_tag": { "type": "string", "description": "A unique identifier of a modified or existing distribution. Used in conjunction with I(distribution_id). Is determined automatically if not specified." }, "tags": { "type": "string", "description": "Should be input as a dict() of key-value pairs. Note that numeric keys or values must be wrapped in quotes. e.g. \"Priority:\" '1'" }, "custom_error_responses": { "type": "string", "description": "A config element that is a I(list[]) of complex custom error responses to be specified for the distribution. This attribute configures custom http error messages returned to the user. Each custom error response object comprises the attributes I(error_code) I(reponse_page_path) I(response_code) I(error_caching_min_ttl)" }, "wait_timeout": { "type": "string", "description": "Default: 1800\n\nSpecifies the duration in seconds to wait for a timeout of a cloudfront create or update. Defaults to 1800 seconds (30 minutes)." }, "purge_aliases": { "type": "string", "description": "Default: no\n\nSpecifies whether existing aliases will be removed before adding new aliases. When I(purge_aliases=yes), existing aliases are removed and I(aliases) are added." }, "ipv6_enabled": { "type": "string", "description": "Default: no\n\nDetermines whether IPv6 support is enabled or not." }, "wait": { "type": "string", "description": "Default: no\n\nSpecifies whether the module waits until the distribution has completed processing the creation or update." }, "restrictions": { "type": "string", "description": "A config element that is a complex object that describes how a distribution should restrict it's content. The restriction object comprises the following attributes I(geo_restriction) I(restriction_type) I(items[])" }, "logging": { "type": "string", "description": "A config element that is a complex object that defines logging for the distribution. The logging object comprises the attributes I(enabled) I(include_cookies) I(bucket) I(prefix)" }, "http_version": { "type": "string", "description": "Default: aws defaults this to 'http2'\n\nThe version of the http protocol to use for the distribution." }, "origins": { "type": "string", "description": "A config element that is a I(list[]) of complex origin objects to be specified for the distribution. Used for creating and updating distributions. Each origin item comprises the attributes I(id) I(domain_name) (defaults to default_origin_domain_name if not specified) I(origin_path) (defaults to default_origin_path if not specified) I(custom_headers[]) I(header_name) I(header_value) I(s3_origin_access_identity_enabled) I(custom_origin_config) I(http_port) I(https_port) I(origin_protocol_policy) I(origin_ssl_protocols[]) I(origin_read_timeout) I(origin_keepalive_timeout)" }, "web_acl_id": { "type": "string", "description": "The id of a Web Application Firewall (WAF) Access Control List (ACL)." }, "viewer_certificate": { "type": "string", "description": "A config element that is a complex object that specifies the encryption details of the distribution. Comprises the following attributes I(cloudfront_default_certificate) I(iam_certificate_id) I(acm_certificate_arn) I(ssl_support_method) I(minimum_protocol_version) I(certificate) I(certificate_source)" }, "enabled": { "type": "string", "description": "Default: yes\n\nA boolean value that specifies whether the distribution is enabled or disabled." }, "purge_cache_behaviors": { "type": "string", "description": "Whether to remove any cache behaviors that aren't listed in I(cache_behaviors). This switch also allows the reordering of cache_behaviors." }, "alias": { "type": "string", "description": "The name of an alias (CNAME) that is used in a distribution. This is used to effectively reference a distribution by its alias as an alias can only be used by one distribution per AWS account. This variable avoids having to provide the I(distribution_id) as well as the I(e_tag), or I(caller_reference) of an existing distribution." }, "default_origin_domain_name": { "type": "string", "description": "The domain name to use for an origin if no I(origins) have been specified. Should only be used on a first run of generating a distribution and not on subsequent runs. Should not be used in conjunction with I(distribution_id), I(caller_reference) or I(alias)." }, "default_origin_path": { "type": "string", "description": "The default origin path to specify for an origin if no I(origins) have been specified. Defaults to empty if not specified." } } }, "na_cdot_svm": { "required": [ "state", "name" ], "type": "object", "description": "Create or destroy svm on NetApp cDOT", "properties": { "root_volume_security_style": { "type": "string", "description": "Security Style of the root volume.\nWhen specified as part of the vserver-create, this field represents the security style for the Vserver root volume.\nWhen specified as part of vserver-get-iter call, this will return the list of matching Vservers.\nPossible values are 'unix', 'ntfs', 'mixed'.\nThe 'unified' security style, which applies only to Infinite Volumes, cannot be applied to a Vserver's root volume.\nValid options are \"unix\" for NFS, \"ntfs\" for CIFS, \"mixed\" for Mixed, \"unified\" for Unified.\nRequired when C(state=present)" }, "state": { "type": "string", "description": "Whether the specified SVM should exist or not." }, "root_volume_aggregate": { "type": "string", "description": "The aggregate on which the root volume will be created.\nRequired when C(state=present)." }, "name": { "type": "string", "description": "The name of the SVM to manage." }, "root_volume": { "type": "string", "description": "Root volume of the SVM. Required when C(state=present)." } } }, "ec2_metric_alarm": { "required": [ "name", "state" ], "type": "object", "description": "Can create or delete AWS metric alarms.\nMetrics you wish to alarm on must already exist.", "properties": { "comparison": { "type": "string", "description": "Determines how the threshold value is compared" }, "alarm_actions": { "type": "string", "description": "A list of the names action(s) taken when the alarm is in the 'alarm' status" }, "ok_actions": { "type": "string", "description": "A list of the names of action(s) to take when the alarm is in the 'ok' status" }, "name": { "type": "string", "description": "Unique name for the alarm" }, "evaluation_periods": { "type": "string", "description": "The number of times in which the metric is evaluated before final calculation" }, "metric": { "type": "string", "description": "Name of the monitored metric (e.g. CPUUtilization)\nMetric must already exist" }, "namespace": { "type": "string", "description": "Name of the appropriate namespace ('AWS/EC2', 'System/Linux', etc.), which determines the category it will appear under in cloudwatch" }, "period": { "type": "string", "description": "The time (in seconds) between metric evaluations" }, "dimensions": { "type": "string", "description": "Describes to what the alarm is applied" }, "state": { "type": "string", "description": "register or deregister the alarm" }, "insufficient_data_actions": { "type": "string", "description": "A list of the names of action(s) to take when the alarm is in the 'insufficient_data' status" }, "statistic": { "type": "string", "description": "Operation applied to the metric\nWorks in conjunction with period and evaluation_periods to determine the comparison value" }, "threshold": { "type": "string", "description": "Sets the min/max bound for triggering the alarm" }, "unit": { "type": "string", "description": "The threshold's unit of measurement" }, "description": { "type": "string", "description": "A longer description of the alarm" } } }, "logstash_plugin": { "required": [ "name" ], "type": "object", "description": "Manages Logstash plugins.", "properties": { "name": { "type": "string", "description": "Install plugin with that name." }, "proxy_host": { "type": "string", "description": "Default: None\n\nProxy host to use during plugin installation." }, "proxy_port": { "type": "string", "description": "Default: None\n\nProxy port to use during plugin installation." }, "state": { "type": "string", "description": "Default: present\n\nApply plugin state." }, "version": { "type": "string", "description": "Default: None\n\nSpecify plugin Version of the plugin to install. If plugin exists with previous version, it will NOT be updated." }, "plugin_bin": { "type": "string", "description": "Default: /usr/share/logstash/bin/logstash-plugin\n\nSpecify logstash-plugin to use for plugin management." } } }, "ucs_vlans": { "required": [ "name", "id" ], "type": "object", "description": "Configures VLANs on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "sharing": { "type": "string", "description": "Default: none\n\nThe Sharing Type field.\nWhether this VLAN is subdivided into private or secondary VLANs. This can be one of the following:\nnone - This VLAN does not have any secondary or private VLANs. This is a regular VLAN.\nprimary - This VLAN can have one or more secondary VLANs, as shown in the Secondary VLANs area. This VLAN is a primary VLAN in the private VLAN domain.\nisolated - This is a private VLAN associated with a primary VLAN. This VLAN is an Isolated VLAN.\ncommunity - This VLAN can communicate with other ports on the same community VLAN as well as the promiscuous port. This VLAN is a Community VLAN." }, "fabric": { "type": "string", "description": "Default: common\n\nThe fabric configuration of the VLAN. This can be one of the following:\ncommon - The VLAN applies to both fabrics and uses the same configuration parameters in both cases.\nA — The VLAN only applies to fabric A.\nB — The VLAN only applies to fabric B.\nFor upstream disjoint L2 networks, Cisco recommends that you choose common to create VLANs that apply to both fabrics." }, "multicast_policy": { "type": "string", "description": "The multicast policy associated with this VLAN.\nThis option is only valid if the Sharing Type field is set to None or Primary." }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify VLANs are present and will create if needed.\nIf C(absent), will verify VLANs are absent and will delete if needed." }, "native": { "type": "string", "description": "Default: no\n\nDesignates the VLAN as a native VLAN." }, "id": { "type": "string", "description": "The unique string identifier assigned to the VLAN.\nA VLAN ID can be between '1' and '3967', or between '4048' and '4093'.\nYou cannot create VLANs with IDs from 4030 to 4047. This range of VLAN IDs is reserved.\nThe VLAN IDs you specify must also be supported on the switch that you are using.\nVLANs in the LAN cloud and FCoE VLANs in the SAN cloud must have different IDs.\nOptional if state is absent." }, "name": { "type": "string", "description": "The name assigned to the VLAN.\nThe VLAN name is case sensitive.\nThis name can be between 1 and 32 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the VLAN is created." } } }, "ovirt_storage_templates_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV templates relate to a storage domain.", "properties": { "unregistered": { "type": "string", "description": "Flag which indicates whether to get unregistered templates which contain one or more disks which reside on a storage domain or diskless templates." } } }, "net_lldp_interface": { "type": "object", "description": "This module provides declarative management of LLDP interfaces configuration on network devices.", "properties": { "aggregate": { "type": "array", "description": "List of interfaces LLDP should be configured on." }, "purge": { "type": "string", "description": "Purge interfaces not defined in the aggregate parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration." }, "name": { "type": "string", "description": "Name of the interface LLDP should be configured on." } } }, "nxos_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "role", "roles" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of the local usernames configured on Cisco Nexus devices. It allows playbooks to manage either individual usernames or the collection of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the network device. The password needs to be provided in cleartext and it will be encrypted on the device. Please note that this option is not same as C(provider password)." }, "name": { "type": "string", "description": "The username to be configured on the remote Cisco Nexus device. This argument accepts a string value and is mutually exclusive with the C(aggregate) argument." }, "roles": { "type": "string", "description": "The C(role) argument configures the role for the username in the device running configuration. The argument accepts a string value defining the role name. This argument does not check if the role has been configured on the device." }, "collection": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco Nexus device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "purge": { "type": "string", "description": "The C(purge) argument instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user which cannot be deleted per nxos constraints." }, "state": { "type": "string", "description": "Default: present\n\nThe C(state) argument configures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "role": { "type": "string", "description": "The C(role) argument configures the role for the username in the device running configuration. The argument accepts a string value defining the role name. This argument does not check if the role has been configured on the device." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco Nexus device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "sshkey": { "type": "string", "description": "The C(sshkey) argument defines the SSH public key to configure for the username. This argument accepts a valid SSH key value." }, "users": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco Nexus device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." } } }, "sefcontext": { "allOf": [ { "allOf": [ { "not": { "required": [ "target", "path" ], "type": "object" } }, { "oneOf": [ { "required": [ "target" ], "type": "object" }, { "required": [ "path" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "selevel", "serange" ], "type": "object" } } ] } ], "type": "object", "description": "Manages SELinux file context mapping definitions.\nSimilar to the C(semanage fcontext) command.", "properties": { "serange": { "type": "string", "description": "SELinux range for the specified target." }, "target": { "type": "string", "description": "Target path (expression)." }, "selevel": { "type": "string", "description": "SELinux range for the specified target." }, "seuser": { "type": "string", "description": "SELinux user for the specified target." }, "state": { "type": "string", "description": "Default: present\n\nDesired boolean value." }, "reload": { "description": "Default: yes\n\nReload SELinux policy after commit.", "$ref": "#/definitions/ansible_truth" }, "setype": { "type": "string", "description": "SELinux type for the specified target." }, "ftype": { "type": "string", "description": "Default: a\n\nFile type." }, "path": { "type": "string", "description": "Target path (expression)." } } }, "avi_prioritylabels": { "required": [ "name" ], "type": "object", "description": "This module is used to configure PriorityLabels object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the priority labels." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "description": { "type": "string", "description": "A description of the priority labels." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "equivalent_labels": { "type": "string", "description": "Equivalent priority labels in descending order." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "The name of the priority labels." } } }, "vmware_dvs_host": { "required": [ "state", "vmnics", "switch_name", "esxi_hostname" ], "type": "object", "description": "Add or remove a host from distributed virtual switch", "properties": { "state": { "type": "string", "description": "If the host should be present or absent attached to the vSwitch" }, "vmnics": { "type": "string", "description": "The ESXi hosts vmnics to use with the Distributed vSwitch" }, "switch_name": { "type": "string", "description": "The name of the Distributed vSwitch" }, "esxi_hostname": { "type": "string", "description": "The ESXi hostname" } } }, "redshift_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "cluster_identifier", "name", "identifier" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about Redshift cluster(s)", "properties": { "identifier": { "type": "string", "description": "The prefix of cluster identifier of the Redshift cluster you are searching for.\nThis is a regular expression match with implicit '^'. Append '$' for a complete match." }, "name": { "type": "string", "description": "The prefix of cluster identifier of the Redshift cluster you are searching for.\nThis is a regular expression match with implicit '^'. Append '$' for a complete match." }, "cluster_identifier": { "type": "string", "description": "The prefix of cluster identifier of the Redshift cluster you are searching for.\nThis is a regular expression match with implicit '^'. Append '$' for a complete match." }, "tags": { "type": "object", "description": "A dictionary/hash of tags in the format { tag1_name: 'tag1_value', tag2_name: 'tag2_value' } to match against the security group(s) you are searching for." } } }, "ops_facts": { "type": "object", "description": "Collects facts from devices running the OpenSwitch operating system. Fact collection is supported over both Cli and Rest transports. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.\nThe facts collected from pre Ansible 2.2 are still available and are collected for backwards compatibility; however, these facts should be considered deprecated and will be removed in a future release.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, legacy, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." }, "endpoints": { "type": "string", "description": "Accepts a list of endpoints to retrieve from the remote device using the REST API. The endpoints should be valid endpoints available on the device. This argument is only valid when the C(transport=rest)." }, "config": { "type": "string", "description": "When enabled, this argument will collect the current running configuration from the remote device. If the C(transport=rest) then the collected configuration will be the full system configuration." } } }, "win_scheduled_task_stat": { "type": "object", "description": "Will return whether the folder and task exists.\nReturns the names of tasks in the folder specified.\nIf C(name) is set and exists, will return information on the task itself.\nUse M(win_scheduled_task) to configure a scheduled task.", "properties": { "path": { "type": "string", "description": "Default: \\\n\nThe folder path where the task lives." }, "name": { "type": "string", "description": "The name of the scheduled task to get information for." } } }, "s3_logging": { "required": [ "name" ], "type": "object", "description": "Manage logging facility of an s3 bucket in AWS", "properties": { "target_bucket": { "type": "string", "description": "The bucket to log to. Required when state=present." }, "state": { "type": "string", "description": "Default: present\n\nEnable or disable logging." }, "name": { "type": "string", "description": "Name of the s3 bucket." }, "target_prefix": { "type": "string", "description": "The prefix that should be prepended to the generated log files written to the target_bucket." } } }, "bigip_qkview": { "required": [ "dest" ], "type": "object", "description": "Manages creating and downloading qkviews from a BIG-IP. Various options can be provided when creating qkviews. The qkview is important when dealing with F5 support. It may be required that you upload this qkview to the supported channels during resolution of an SRs that you may have opened.", "properties": { "max_file_size": { "type": "string", "description": "Max file size, in bytes, of the qkview to create. By default, no max file size is specified." }, "force": { "description": "Default: True\n\nIf C(no), the file will only be transferred if the destination does not exist.", "$ref": "#/definitions/ansible_truth" }, "asm_request_log": { "description": "When C(True), includes the ASM request log data. When C(False), excludes the ASM request log data.", "$ref": "#/definitions/ansible_truth" }, "dest": { "type": "string", "description": "Destination on your local filesystem when you want to save the qkview." }, "filename": { "type": "string", "description": "Default: localhost.localdomain.qkview\n\nName of the qkview to create on the remote BIG-IP." }, "exclude_core": { "description": "Exclude core files from the qkview.", "$ref": "#/definitions/ansible_truth" }, "complete_information": { "description": "Default: True\n\nInclude complete information in the qkview.", "$ref": "#/definitions/ansible_truth" }, "exclude": { "type": "string", "description": "Exclude various file from the qkview." } } }, "win_toast": { "type": "object", "description": "Sends alerts which appear in the Action Center area of the windows desktop.", "properties": { "popup": { "description": "Default: True\n\nIf false, the notification will not pop up and will only appear in the Action Center.", "$ref": "#/definitions/ansible_truth" }, "group": { "type": "string", "description": "Default: Powershell\n\nWhich notification group to add the notification to." }, "title": { "type": "string", "description": "Default: Notification HH:mm\n\nThe notification title, which appears in the pop up.." }, "tag": { "type": "string", "description": "Default: Ansible\n\nThe tag to add to the notification." }, "expire": { "type": "string", "description": "Default: 45\n\nHow long in seconds before the notification expires." }, "msg": { "type": "string", "description": "Default: Hello, World!\n\nThe message to appear inside the notification. May include \\n to format the message to appear within the Action Center." } } }, "ce_mlag_interface": { "type": "object", "description": "Manages MLAG interface attributes on HUAWEI CloudEngine switches.", "properties": { "eth_trunk_id": { "type": "string", "description": "Name of the local M-LAG interface. The value is ranging from 0 to 511." }, "mlag_id": { "type": "string", "description": "ID of the M-LAG. The value is an integer that ranges from 1 to 2048." }, "mlag_error_down": { "type": "string", "description": "Configure the interface on the slave device to enter the Error-Down state." }, "mlag_system_id": { "type": "string", "description": "M-LAG global LACP system MAC address. The value is a string of 0 to 255 characters. The default value is the MAC address of the Ethernet port of MPU." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "dfs_group_id": { "type": "string", "description": "Default: present\n\nID of a DFS group.The value is 1." }, "interface": { "type": "string", "description": "Name of the interface that enters the Error-Down state when the peer-link fails. The value is a string of 1 to 63 characters." }, "mlag_priority_id": { "type": "string", "description": "M-LAG global LACP system priority. The value is an integer ranging from 0 to 65535. The default value is 32768." } } }, "na_cdot_aggregate": { "required": [ "state", "name" ], "type": "object", "description": "Create or destroy aggregates on NetApp cDOT.", "properties": { "state": { "type": "string", "description": "Whether the specified aggregate should exist or not." }, "name": { "type": "string", "description": "The name of the aggregate to manage." }, "disk_count": { "type": "string", "description": "Number of disks to place into the aggregate, including parity disks.\nThe disks in this newly-created aggregate come from the spare disk pool.\nThe smallest disks in this pool join the aggregate first, unless the C(disk-size) argument is provided.\nEither C(disk-count) or C(disks) must be supplied. Range [0..2^31-1].\nRequired when C(state=present)." } } }, "win_firewall": { "type": "object", "description": "Enable or Disable Windows Firewall profiles.", "properties": { "state": { "type": "string", "description": "Set state of firewall for given profile." }, "profiles": { "type": "string", "description": "Default: ['Domain', 'Private', 'Public']\n\nSpecify one or more profiles to change." } } }, "asa_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an ASA node and returns the results read from the device. The M(asa_command) module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retires as expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "cs_volume": { "required": [ "name" ], "type": "object", "description": "Create, destroy, attach, detach volumes.", "properties": { "custom_id": { "type": "string", "description": "Custom id to the resource.\nAllowed to Root Admins only." }, "account": { "type": "string", "description": "Account the volume is related to." }, "force": { "type": "string", "description": "Force removal of volume even it is attached to a VM.\nConsidered on C(state=absnet) only." }, "disk_offering": { "type": "string", "description": "Name of the disk offering to be used.\nRequired one of C(disk_offering), C(snapshot) if volume is not already C(state=present)." }, "name": { "type": "string", "description": "Name of the volume.\nC(name) can only contain ASCII letters." }, "state": { "type": "string", "description": "Default: present\n\nState of the volume." }, "domain": { "type": "string", "description": "Name of the domain the volume to be deployed in." }, "shrink_ok": { "type": "string", "description": "Whether to allow to shrink the volume." }, "project": { "type": "string", "description": "Name of the project the volume to be deployed in." }, "display_volume": { "type": "string", "description": "Default: True\n\nWhether to display the volume to the end user or not.\nAllowed to Root Admins only." }, "max_iops": { "type": "string", "description": "Max iops" }, "snapshot": { "type": "string", "description": "The snapshot name for the disk volume.\nRequired one of C(disk_offering), C(snapshot) if volume is not already C(state=present)." }, "vm": { "type": "string", "description": "Name of the virtual machine to attach the volume to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "zone": { "type": "string", "description": "Name of the zone in which the volume should be deployed.\nIf not set, default zone is used." }, "min_iops": { "type": "string", "description": "Min iops" }, "size": { "type": "string", "description": "Size of disk in GB" } } }, "junos_facts": { "type": "object", "description": "Collects fact information from a remote device running the Junos operating system. By default, the module will collect basic fact information from the device to be included with the hostvars. Additional fact information can be collected based on the configured set of arguments.", "properties": { "config_format": { "type": "string", "description": "Default: text\n\nThe C(config_format) argument is used to specify the desired format of the configuration file. Devices support three configuration file formats. By default, the configuration from the device is returned as text. The other options include set and xml. If the xml option is chosen, the configuration file is returned as both xml and json." }, "config": { "type": "string", "description": "The C(config) argument instructs the fact module to collect the configuration from the remote device. The configuration is then included in return facts. By default, the configuration is returned as text. The C(config_format) can be used to return different Junos configuration formats." } } }, "sros_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an SR OS node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(sros_config) to configure SR OS devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote SR OS device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "jabber": { "required": [ "to", "user", "msg", "password" ], "type": "object", "description": "Send a message to jabber", "properties": { "encoding": { "type": "string", "description": "message encoding" }, "to": { "type": "string", "description": "user ID or name of the room, when using room use a slash to indicate your nick." }, "host": { "type": "string", "description": "host to connect, overrides user info" }, "user": { "type": "string", "description": "User as which to connect" }, "msg": { "type": "string", "description": "The message body." }, "password": { "type": "string", "description": "password for user to connect" }, "port": { "type": "string", "description": "Default: 5222\n\nport to connect to, overrides default" } } }, "iam_mfa_device_facts": { "type": "object", "description": "List the MFA (Multi-Factor Authentication) devices registered for a user", "properties": { "user_name": { "type": "string", "description": "The name of the user whose MFA devices will be listed" } } }, "cnos_conditional_template": { "required": [ "flag", "commandfile", "condition" ], "type": "object", "description": "This module allows you to work with the running configuration of a switch. It provides a way to execute a set of CNOS commands on a switch by evaluating the current running configuration and executing the commands only if the specific settings have not been already configured. The configuration source can be a set of commands or a template written in the Jinja2 templating language. This module functions the same as the cnos_template module. The only exception is that the following inventory variable can be specified [\"condition = \"] When this inventory variable is specified as the variable of a task, the template is executed for the network element that matches the flag string. Usually, templates are used when commands are the same across a group of network devices. When there is a requirement to skip the execution of the template on one or more devices, it is recommended to use this module. This module uses SSH to manage network device configuration. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_conditional_template.html)", "properties": { "flag": { "type": "string", "description": "If a task needs to be executed, you have to set the flag the same as it is specified in the inventory for that device." }, "condition": { "type": "string", "description": "If you specify condition= in the inventory file against any device, the template execution is done for that device in case it matches the flag setting for that task." }, "commandfile": { "type": "string", "description": "This specifies the path to the CNOS command file which needs to be applied. This usually comes from the commands folder. Generally this file is the output of the variables applied on a template file. So this command is preceded by a template module. The command file must contain the Ansible keyword {{ inventory_hostname }} and the condition flag in its filename to ensure that the command file is unique for each switch and condition. If this is omitted, the command file will be overwritten during iteration. For example, commandfile=./commands/clos_leaf_bgp_{{ inventory_hostname }}_LP21_commands.txt" } } }, "junos_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service on Juniper JUNOS network devices.", "properties": { "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nValue of C(present) ensures given LLDP configuration is present on device and LLDP is enabled, for value of C(absent) LLDP configuration is deleted and LLDP is in disabled state. Value C(enabled) ensures LLDP protocol is enabled and LLDP configuration if any is configured on remote device, for value of C(disabled) it ensures LLDP protocol is disabled any LLDP configuration if any is still present." }, "interval": { "type": "string", "description": "Frequency at which LLDP advertisements are sent (in seconds)." }, "hold_multiplier": { "type": "string", "description": "Specify the number of seconds that LLDP information is held before it is discarded. The multiplier value is used in combination with the C(interval) value." }, "transmit_delay": { "type": "string", "description": "Specify the number of seconds the device waits before sending advertisements to neighbors after a change is made in local system." } } }, "nxos_hsrp": { "required": [ "group", "interface" ], "type": "object", "description": "Manages HSRP configuration on NX-OS switches.", "properties": { "auth_type": { "type": "string", "description": "Authentication type." }, "group": { "type": "string", "description": "HSRP group number." }, "auth_string": { "type": "string", "description": "Authentication string." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "priority": { "type": "string", "description": "HSRP priority." }, "vip": { "type": "string", "description": "HSRP virtual IP address." }, "version": { "type": "string", "description": "Default: 2\n\nHSRP version." }, "interface": { "type": "string", "description": "Full name of interface that is being managed for HSRP." } } }, "win_domain_user": { "required": [ "name" ], "type": "object", "description": "Manages Windows Active Directory user accounts.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users. Note that C(always) will always report an Ansible status of 'changed' because we cannot determine whether the new password differs from the old password." }, "surname": { "type": "string", "description": "Configures the user's last name (surname)" }, "groups_action": { "type": "string", "description": "Default: replace\n\nIf C(replace), the user is added as a member of each group in I(groups) and removed from any other groups. If C(add), the user is added to each group in I(groups) where not already a member. If C(remove), the user is removed from each group in I(groups)." }, "password_expired": { "description": "C(yes) will require the user to change their password at next login. C(no) will clear the expired password flag. This is mutually exclusive with I(password_never_expires).", "$ref": "#/definitions/ansible_truth" }, "street": { "type": "string", "description": "Configures the user's street address" }, "postal_code": { "type": "string", "description": "Configures the user's postal code / zip code" }, "password_never_expires": { "description": "C(yes) will set the password to never expire. C(no) will allow the password to expire. This is mutually exclusive with I(password_expired)", "$ref": "#/definitions/ansible_truth" }, "city": { "type": "string", "description": "Configures the user's city" }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), creates or updates the user account. When C(absent), removes the user account if it exists. When C(query), retrieves the user account details without making any changes." }, "domain_password": { "type": "string", "description": "The password for C(username)." }, "domain_server": { "type": "string", "description": "Specifies the Active Directory Domain Services instance to connect to.\nCan be in the form of an FQDN or NetBIOS name.\nIf not specified then the value is based on the domain of the computer running PowerShell." }, "email": { "type": "string", "description": "Configures the user's email address. This is a record in AD and does not do anything to configure any email servers or systems." }, "state_province": { "type": "string", "description": "Configures the user's state or province" }, "description": { "type": "string", "description": "Description of the user" }, "firstname": { "type": "string", "description": "Configures the user's first name (given name)" }, "company": { "type": "string", "description": "Configures the user's company name" }, "groups": { "type": "string", "description": "Adds or removes the user from this list of groups, depending on the value of I(groups_action). To remove all but the Principal Group, set C(groups=) and I(groups_action=replace). Note that users cannot be removed from their principal group (for example, \"Domain Users\")." }, "path": { "type": "string", "description": "Container or OU for the new user; if you do not specify this, the user will be placed in the default container for users in the domain. Setting the path is only available when a new user is created; if you specify a path on an existing user, the user's path will not be updated - you must delete (e.g., state=absent) the user and then re-add the user with the appropriate path." }, "password": { "type": "string", "description": "Optionally set the user's password to this (plain text) value. In order to enable an account - I(enabled) - a password must already be configured on the account, or you must provide a password here." }, "account_locked": { "description": "C(no) will unlock the user account if locked. Note that there is not a way to lock an account as an administrator. Accounts are locked due to user actions; as an admin, you may only unlock a locked account. If you wish to administratively disable an account, set 'enabled' to 'no'.", "$ref": "#/definitions/ansible_truth" }, "upn": { "type": "string", "description": "Configures the User Principal Name (UPN) for the account. This is not required, but is best practice to configure for modern versions of Active Directory. The format is \"@\"." }, "name": { "type": "string", "description": "Name of the user to create, remove or modify." }, "domain_username": { "type": "string", "description": "The username to use when interacting with AD.\nIf this is not set then the user Ansible used to log in with will be used instead when using CredSSP or Kerberos with credential delegation." }, "country": { "type": "string", "description": "Configures the user's country code. Note that this is a two-character ISO 3166 code." }, "enabled": { "description": "Default: yes\n\nC(yes) will enable the user account. C(no) will disable the account.", "$ref": "#/definitions/ansible_truth" }, "attributes": { "type": "string", "description": "A dict of custom LDAP attributes to set on the user.\nThis can be used to set custom attributes that are not exposed as module parameters, e.g. C(telephoneNumber).\nSee the examples on how to format this parameter." }, "user_cannot_change_password": { "description": "C(yes) will prevent the user from changing their password. C(no) will allow the user to change their password.", "$ref": "#/definitions/ansible_truth" } } }, "ec2_snapshot": { "type": "object", "description": "creates an EC2 snapshot from an existing EBS volume", "properties": { "description": { "type": "string", "description": "description to be applied to the snapshot" }, "snapshot_tags": { "type": "string", "description": "a hash/dictionary of tags to add to the snapshot" }, "snapshot_id": { "type": "string", "description": "snapshot id to remove" }, "device_name": { "type": "string", "description": "device name of a mounted volume to be snapshotted" }, "instance_id": { "type": "string", "description": "instance that has the required volume to snapshot mounted" }, "state": { "type": "string", "description": "Default: present\n\nwhether to add or create a snapshot" }, "wait_timeout": { "type": "string", "description": "how long before wait gives up, in seconds\nspecify 0 to wait forever" }, "volume_id": { "type": "string", "description": "volume from which to take the snapshot" }, "last_snapshot_min_age": { "type": "string", "description": "If the volume's most recent snapshot has started less than `last_snapshot_min_age' minutes ago, a new snapshot will not be created." }, "wait": { "type": "string", "description": "Default: True\n\nwait for the snapshot to be ready" } } }, "cloudformation_facts": { "type": "object", "description": "Gets information about an AWS CloudFormation stack", "properties": { "stack_template": { "type": "string", "description": "Get stack template body for the stack" }, "all_facts": { "type": "string", "description": "Get all stack information for the stack" }, "stack_policy": { "type": "string", "description": "Get stack policy for the stack" }, "stack_events": { "type": "string", "description": "Get stack events for the stack" }, "stack_name": { "type": "string", "description": "The name or id of the CloudFormation stack. Gathers facts for all stacks by default." }, "stack_resources": { "type": "string", "description": "Get stack resources for the stack" } } }, "iosxr_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an IOS XR node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(iosxr_config) to configure iosxr devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote iosxr device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "sf_volume_access_group_manager": { "required": [ "name", "state" ], "type": "object", "description": "Create, destroy, or update volume access groups on SolidFire", "properties": { "name": { "type": "string", "description": "Name of the volume access group. It is not required to be unique, but recommended." }, "virtual_network_id": { "type": "string", "description": "Default: None\n\nThe ID of the SolidFire Virtual Network ID to associate the volume access group with." }, "state": { "type": "string", "description": "Whether the specified volume access group should exist or not." }, "volumes": { "type": "array", "description": "Default: None\n\nList of volumes to initially include in the volume access group. If unspecified, the access group will start without any volumes." }, "initiators": { "type": "array", "description": "Default: None\n\nList of initiators to include in the volume access group. If unspecified, the access group will start out without configured initiators." }, "attributes": { "type": "array", "description": "Default: None\n\nList of Name/Value pairs in JSON object format." }, "virtual_network_tags": { "type": "string", "description": "Default: None\n\nThe ID of the VLAN Virtual Network Tag to associate the volume access group with." }, "volume_access_group_id": { "type": "string", "description": "Default: None\n\nThe ID of the volume access group to modify or delete." } } }, "logicmonitor_facts": { "required": [ "target", "company", "user", "password" ], "type": "object", "description": "LogicMonitor is a hosted, full-stack, infrastructure monitoring platform.\nThis module collects facts about hosts and host groups within your LogicMonitor account.", "properties": { "displayname": { "type": "string", "description": "Default: hostname -f\n\nThe display name of a host in your LogicMonitor account or the desired display name of a device to add into monitoring." }, "target": { "type": "string", "description": "The LogicMonitor object you wish to manage." }, "company": { "type": "string", "description": "The LogicMonitor account company name. If you would log in to your account at \"superheroes.logicmonitor.com\" you would use \"superheroes\"." }, "hostname": { "type": "string", "description": "Default: hostname -f\n\nThe hostname of a host in your LogicMonitor account, or the desired hostname of a device to add into monitoring.\nRequired for managing hosts (target=host)." }, "user": { "type": "string", "description": "A LogicMonitor user name. The module will authenticate and perform actions on behalf of this user." }, "fullpath": { "type": "string", "description": "The fullpath of the hostgroup object you would like to manage.\nRecommend running on a single ansible host.\nRequired for management of LogicMonitor host groups (target=hostgroup)." }, "password": { "type": "string", "description": "The password for the chosen LogicMonitor User.\nIf an md5 hash is used, the digest flag must be set to true." }, "collector": { "type": "string", "description": "The fully qualified domain name of a collector in your LogicMonitor account.\nThis is optional for querying a LogicMonitor host when a displayname is specified.\nThis is required for querying a LogicMonitor host when a displayname is not specified." } } }, "bower": { "required": [ "path" ], "type": "object", "description": "Manage bower packages with bower", "properties": { "name": { "type": "string", "description": "The name of a bower package to install" }, "state": { "type": "string", "description": "Default: present\n\nThe state of the bower package" }, "production": { "type": "string", "description": "Install with --production flag" }, "version": { "type": "string", "description": "The version to be installed" }, "relative_execpath": { "type": "string", "description": "Relative path to bower executable from install path" }, "path": { "type": "string", "description": "The base path where to install the bower packages" }, "offline": { "type": "string", "description": "Install packages from local cache, if the packages were installed before" } } }, "pn_ospfarea": { "required": [ "pn_ospf_area", "pn_clipassword", "pn_vrouter_name", "pn_cliusername", "state" ], "type": "object", "description": "Execute vrouter-ospf-add, vrouter-ospf-remove command.\nThis command adds/removes Open Shortest Path First(OSPF) area to/from a virtual router(vRouter) service.", "properties": { "pn_vrouter_name": { "type": "string", "description": "Specify the name of the vRouter." }, "pn_clipassword": { "type": "string", "description": "Login password." }, "pn_ospf_area": { "type": "string", "description": "Specify the OSPF area number." }, "pn_cliusername": { "type": "string", "description": "Login username." }, "pn_prefix_listin": { "type": "string", "description": "OSPF prefix list for filtering incoming packets." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to add ospf-area, 'absent' to remove ospf-area and 'update' to modify ospf-area." }, "pn_prefix_listout": { "type": "string", "description": "OSPF prefix list for filtering outgoing packets." }, "pn_stub_type": { "type": "string", "description": "Specify the OSPF stub type." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the CLI on." }, "pn_quiet": { "type": "string", "description": "Default: True\n\nEnable/disable system information." } } }, "cs_role": { "allOf": [ { "allOf": [ { "not": { "required": [ "id", "uuid" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update, delete user roles.", "properties": { "name": { "type": "string", "description": "Name of the role." }, "uuid": { "type": "string", "description": "ID of the role.\nIf provided, C(id) is used as key." }, "state": { "type": "string", "description": "Default: present\n\nState of the role." }, "id": { "type": "string", "description": "ID of the role.\nIf provided, C(id) is used as key." }, "role_type": { "type": "string", "description": "Default: User\n\nType of the role.\nOnly considered for creation." }, "description": { "type": "string", "description": "Description of the role." } } }, "nios_zone": { "allOf": [ { "allOf": [ { "not": { "required": [ "fqdn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "fqdn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "view", "dns_view" ], "type": "object" } }, { "oneOf": [ { "required": [ "view" ], "type": "object" }, { "required": [ "dns_view" ], "type": "object" } ] } ] } ], "type": "object", "description": "Adds and/or removes instances of DNS zone objects from Infoblox NIOS servers. This module manages NIOS C(zone_auth) objects using the Infoblox WAPI interface over REST.", "properties": { "comment": { "type": "string", "description": "Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance." }, "name": { "type": "string", "description": "Specifies the qualified domain name to either add or remove from the NIOS instance based on the configured C(state) value." }, "grid_primary": { "type": "string", "description": "Configures the grid primary servers for this zone." }, "grid_secondaries": { "type": "string", "description": "Configures the grid secondary servers for this zone." }, "fqdn": { "type": "string", "description": "Specifies the qualified domain name to either add or remove from the NIOS instance based on the configured C(state) value." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the intended state of the instance of the object on the NIOS server. When this value is set to C(present), the object is configured on the device and when this value is set to C(absent) the value is removed (if necessary) from the device." }, "dns_view": { "type": "string", "description": "Default: default\n\nConfigures the DNS view name for the configured resource. The specified DNS zone must already exist on the running NIOS instance prior to configuring zones." }, "extattrs": { "type": "string", "description": "Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration." }, "view": { "type": "string", "description": "Default: default\n\nConfigures the DNS view name for the configured resource. The specified DNS zone must already exist on the running NIOS instance prior to configuring zones." } } }, "unarchive": { "required": [ "src", "dest" ], "type": "object", "description": "The M(unarchive) module unpacks an archive. By default, it will copy the source file from the local system to the target before unpacking - set remote_src=yes to unpack an archive which already exists on the target..", "properties": { "src": { "type": "string", "description": "If remote_src=no (default), local path to archive file to copy to the target server; can be absolute or relative. If remote_src=yes, path on the target server to existing archive file to unpack.\nIf remote_src=yes and src contains ://, the remote machine will download the file from the url first. (version_added 2.0)" }, "remote_src": { "type": "string", "description": "Default: no\n\nSet to C(yes) to indicate the archived file is already on the remote system and not local to the Ansible controller.\nThis option is mutually exclusive with C(copy)." }, "dest": { "type": "string", "description": "Remote absolute path where the archive should be unpacked" }, "list_files": { "type": "string", "description": "Default: no\n\nIf set to True, return the list of files that are contained in the tarball." }, "keep_newer": { "type": "string", "description": "Do not replace existing files that are newer than files from the archive." }, "creates": { "type": "string", "description": "a filename, when it already exists, this step will B(not) be run." }, "extra_opts": { "type": "string", "description": "Specify additional options by passing in an array." }, "exclude": { "type": "array", "description": "List the directory and file entries that you would like to exclude from the unarchive action." }, "copy": { "type": "string", "description": "Default: yes\n\nIf true, the file is copied from local 'master' to the target machine, otherwise, the plugin will look for src archive at the target machine.\nThis option has been deprecated in favor of C(remote_src)\nThis option is mutually exclusive with C(remote_src)." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nThis only applies if using a https url as the source of the file.\nThis should only set to C(no) used on personally controlled sites using self-signed cer\nPrior to 2.2 the code worked as if this was set to C(yes)." } } }, "osx_say": { "required": [ "msg" ], "type": "object", "description": "makes an OS computer speak! Amuse your friends, annoy your coworkers!", "properties": { "msg": { "type": "string", "description": "What to say" }, "voice": { "type": "string", "description": "What voice to use" } } }, "jenkins_script": { "required": [ "script" ], "type": "object", "description": "The C(jenkins_script) module takes a script plus a dict of values to use within the script and returns the result of the script being run.", "properties": { "script": { "type": "string", "description": "The groovy script to be executed. This gets passed as a string Template if args is defined." }, "url": { "type": "string", "description": "Default: http://localhost:8080\n\nThe jenkins server to execute the script against. The default is a local jenkins instance that is not being proxied through a webserver." }, "args": { "type": "string", "description": "A dict of key-value pairs used in formatting the script using string.Template (see https://docs.python.org/2/library/string.html#template-strings)." }, "user": { "type": "string", "description": "The username to connect to the jenkins server with." }, "timeout": { "type": "string", "description": "Default: 10\n\nThe request timeout in seconds" }, "password": { "type": "string", "description": "The password to connect to the jenkins server with." }, "validate_certs": { "type": "string", "description": "Default: True\n\nIf set to C(no), the SSL certificates will not be validated. This should only set to C(no) used on personally controlled sites using self-signed certificates as it avoids verifying the source site." } } }, "avi_scheduler": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Scheduler object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "start_date_time": { "type": "string", "description": "Scheduler start date and time." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "enabled": { "description": "Boolean flag to set enabled.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "frequency_unit": { "type": "string", "description": "Unit at which custom scheduler will run.\nEnum options - SCHEDULER_FREQUENCY_UNIT_MIN, SCHEDULER_FREQUENCY_UNIT_HOUR, SCHEDULER_FREQUENCY_UNIT_DAY, SCHEDULER_FREQUENCY_UNIT_WEEK,\nSCHEDULER_FREQUENCY_UNIT_MONTH." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "backup_config_ref": { "type": "string", "description": "Backup configuration to be executed by this scheduler.\nIt is a reference to an object of type backupconfiguration." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "frequency": { "type": "string", "description": "Frequency at which custom scheduler will run.\nAllowed values are 0-60." }, "scheduler_action": { "type": "string", "description": "Define scheduler action.\nEnum options - SCHEDULER_ACTION_RUN_A_SCRIPT, SCHEDULER_ACTION_BACKUP.\nDefault value when not specified in API or module is interpreted by Avi Controller as SCHEDULER_ACTION_BACKUP." }, "run_script_ref": { "type": "string", "description": "Control script to be executed by this scheduler.\nIt is a reference to an object of type alertscriptconfig." }, "end_date_time": { "type": "string", "description": "Scheduler end date and time." }, "run_mode": { "type": "string", "description": "Scheduler run mode.\nEnum options - RUN_MODE_PERIODIC, RUN_MODE_AT, RUN_MODE_NOW." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of scheduler." } } }, "ini_file": { "required": [ "dest", "section" ], "type": "object", "description": "Manage (add, remove, change) individual settings in an INI-style file without having to manage the file as a whole with, say, M(template) or M(assemble). Adds missing sections if they don't exist.\nBefore version 2.0, comments are discarded when the source file is read, and therefore will not show up in the destination file.", "properties": { "option": { "type": "string", "description": "if set (required for changing a I(value)), this is the name of the option.\nMay be omitted if adding/removing a whole I(section)." }, "dest": { "type": "string", "description": "Path to the INI-style file; this file is created if required" }, "section": { "type": "string", "description": "Section name in INI file. This is added if C(state=present) automatically when a single value is being set." }, "no_extra_spaces": { "type": "string", "description": "do not insert spaces before and after '=' symbol" }, "value": { "type": "string", "description": "the string value to be associated with an I(option). May be omitted when removing an I(option)." }, "state": { "type": "string", "description": "Default: present\n\nIf set to C(absent) the option or section will be removed if present instead of created." }, "others": { "type": "string", "description": "all arguments accepted by the M(file) module also work here" }, "backup": { "type": "string", "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly." }, "create": { "type": "string", "description": "Default: yes\n\nIf set to 'no', the module will fail if the file does not already exist. By default it will create the file if it is missing." } } }, "ce_bgp": { "type": "object", "description": "Manages BGP configurations on HUAWEI CloudEngine switches.", "properties": { "vrf_rid_auto_sel": { "type": "string", "description": "Default: no_use\n\nIf the value is true, VPN BGP instances are enabled to automatically select router IDs. If the value is false, VPN BGP instances are disabled from automatically selecting router IDs." }, "suppress_interval": { "type": "string", "description": "Suppress interval." }, "as_number": { "type": "string", "description": "Local AS number. The value is a string of 1 to 11 characters." }, "is_shutdown": { "type": "string", "description": "Default: no_use\n\nInterrupt BGP all neighbor." }, "check_first_as": { "type": "string", "description": "Default: no_use\n\nCheck the first AS in the AS_Path of the update messages from EBGP peers." }, "hold_interval": { "type": "string", "description": "Hold interval." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "keep_all_routes": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the system stores all route update messages received from all peers (groups) after BGP connection setup. If the value is false, the system stores only BGP update messages that are received from peers and pass the configured import policy." }, "gr_peer_reset": { "type": "string", "description": "Default: no_use\n\nPeer disconnection through GR." }, "graceful_restart": { "type": "string", "description": "Default: no_use\n\nEnable GR of the BGP speaker in the specified address family, peer address, or peer group." }, "router_id": { "type": "string", "description": "ID of a router that is in IPv4 address format." }, "memory_limit": { "type": "string", "description": "Default: no_use\n\nSupport BGP RIB memory protection." }, "as_path_limit": { "type": "string", "description": "Maximum number of AS numbers in the AS_Path attribute. The default value is 255." }, "confed_id_number": { "type": "string", "description": "Confederation ID. The value is a string of 1 to 11 characters." }, "bgp_rid_auto_sel": { "type": "string", "description": "Default: no_use\n\nThe function to automatically select router IDs for all VPN BGP instances is enabled." }, "conn_retry_time": { "type": "string", "description": "ConnectRetry interval. The value is an integer, in seconds. The default value is 32s." }, "confed_peer_as_num": { "type": "string", "description": "Confederation AS number, in two-byte or four-byte format. The value is a string of 1 to 11 characters." }, "min_hold_time": { "type": "string", "description": "Min hold time, in seconds. The value of the hold time can be 0 or range from 20 to 65535." }, "ebgp_if_sensitive": { "type": "string", "description": "Default: no_use\n\nIf the value is true, After the fast EBGP interface awareness function is enabled, EBGP sessions on an interface are deleted immediately when the interface goes Down. If the value is false, After the fast EBGP interface awareness function is enabled, EBGP sessions on an interface are not deleted immediately when the interface goes Down." }, "hold_time": { "type": "string", "description": "Hold time, in seconds. The value of the hold time can be 0 or range from 3 to 65535." }, "clear_interval": { "type": "string", "description": "Clear interval." }, "confed_nonstanded": { "type": "string", "description": "Default: no_use\n\nConfigure the device to be compatible with devices in a nonstandard confederation." }, "time_wait_for_rib": { "type": "string", "description": "Period of waiting for the End-Of-RIB flag. The value is an integer ranging from 3 to 3000. The default value is 600." }, "default_af_type": { "type": "string", "description": "Type of a created address family, which can be IPv4 unicast or IPv6 unicast. The default type is IPv4 unicast." }, "keepalive_time": { "type": "string", "description": "If the value of a timer changes, the BGP peer relationship between the routers is disconnected. The value is an integer ranging from 0 to 21845. The default value is 60." }, "vrf_name": { "type": "string", "description": "Name of a BGP instance. The name is a case-sensitive string of characters." } } }, "vmware_datacenter": { "allOf": [ { "allOf": [ { "not": { "required": [ "username", "user", "admin" ], "type": "object" } }, { "oneOf": [ { "required": [ "username" ], "type": "object" }, { "required": [ "user" ], "type": "object" }, { "required": [ "admin" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "password", "pass", "pwd" ], "type": "object" } }, { "oneOf": [ { "required": [ "password" ], "type": "object" }, { "required": [ "pass" ], "type": "object" }, { "required": [ "pwd" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage VMware vSphere Datacenters", "properties": { "username": { "type": "string", "description": "The username of the vSphere vCenter" }, "datacenter_name": { "type": "string", "description": "The name of the datacenter the cluster will be created in." }, "admin": { "type": "string", "description": "The username of the vSphere vCenter" }, "hostname": { "type": "string", "description": "The hostname or IP address of the vSphere vCenter API server" }, "pwd": { "type": "string", "description": "The password of the vSphere vCenter" }, "state": { "type": "string", "description": "Default: present\n\nIf the datacenter should be present or absent" }, "user": { "type": "string", "description": "The username of the vSphere vCenter" }, "pass": { "type": "string", "description": "The password of the vSphere vCenter" }, "password": { "type": "string", "description": "The password of the vSphere vCenter" } } }, "ipa_sudocmd": { "allOf": [ { "allOf": [ { "not": { "required": [ "sudocmd", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "sudocmd" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify or delete sudo command within FreeIPA server using FreeIPA API.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "description": { "type": "string", "description": "A description of this command." }, "sudocmd": { "type": "string", "description": "Sudo Command." }, "name": { "type": "string", "description": "Sudo Command." } } }, "tower_organization": { "required": [ "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower organizations. See U(https://www.ansible.com/tower) for an overview.", "properties": { "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "name": { "type": "string", "description": "Name to use for the organization." }, "description": { "type": "string", "description": "The description to use for the organization." } } }, "os_network": { "required": [ "name" ], "type": "object", "description": "Add or remove network from OpenStack.", "properties": { "name": { "type": "string", "description": "Name to be assigned to the network." }, "provider_network_type": { "type": "string", "description": "Default: None\n\nThe type of physical network that maps to this network resource." }, "admin_state_up": { "type": "string", "description": "Default: True\n\nWhether the state should be marked as up or down." }, "provider_physical_network": { "type": "string", "description": "Default: None\n\nThe physical network where this network object is implemented." }, "project": { "type": "string", "description": "Default: None\n\nProject name or ID containing the network (name admin-only)" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource." }, "provider_segmentation_id": { "type": "string", "description": "Default: None\n\nAn isolated segment on the physical network. The I(network_type) attribute defines the segmentation model. For example, if the I(network_type) value is vlan, this ID is a vlan identifier. If the I(network_type) value is gre, this ID is a gre key." }, "external": { "type": "string", "description": "Whether this network is externally accessible." }, "shared": { "type": "string", "description": "Whether this network is shared or not." } } }, "clc_modify_server": { "required": [ "server_ids" ], "type": "object", "description": "An Ansible module to modify servers in CenturyLink Cloud.", "properties": { "alert_policy_name": { "type": "string", "description": "Default: None\n\nThe alert policy name to be associated to the server. This is mutually exclusive with 'alert_policy_id'" }, "anti_affinity_policy_name": { "type": "string", "description": "Default: None\n\nThe anti affinity policy name to be set for a hyper scale server. This is mutually exclusive with 'anti_affinity_policy_id'" }, "state": { "type": "string", "description": "Default: present\n\nThe state to insure that the provided resources are in." }, "anti_affinity_policy_id": { "type": "string", "description": "Default: None\n\nThe anti affinity policy id to be set for a hyper scale server. This is mutually exclusive with 'anti_affinity_policy_name'" }, "alert_policy_id": { "type": "string", "description": "Default: None\n\nThe alert policy id to be associated to the server. This is mutually exclusive with 'alert_policy_name'" }, "memory": { "type": "string", "description": "Default: None\n\nMemory (in GB) to set to the server." }, "server_ids": { "type": "string", "description": "A list of server Ids to modify." }, "cpu": { "type": "string", "description": "Default: None\n\nHow many CPUs to update on the server" }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the provisioning tasks to finish before returning." } } }, "cl_interface_policy": { "required": [ "allowed" ], "type": "object", "description": "This module affects the configuration files located in the interfaces folder defined by ifupdown2. Interfaces port and port ranges listed in the \"allowed\" parameter define what interfaces will be available on the switch. If the user runs this module and has an interface configured on the switch, but not found in the \"allowed\" list, this interface will be unconfigured. By default this is `/etc/network/interface.d` For more details go the Configuring Interfaces at U(http://docs.cumulusnetworks.com).", "properties": { "location": { "type": "string", "description": "Default: /etc/network/interfaces.d/\n\nDirectory to store interface files." }, "allowed": { "type": "array", "description": "List of ports to run initial run at 10G." } } }, "catapult": { "required": [ "src", "user_id", "api_secret", "dest", "api_token", "msg" ], "type": "object", "description": "Allows notifications to be sent using sms / mms via the catapult bandwidth api.", "properties": { "src": { "type": "string", "description": "One of your catapult telephone numbers the message should come from (must be in E.164 format, like C(+19195551212))." }, "user_id": { "type": "string", "description": "User Id from Api account page." }, "dest": { "type": "string", "description": "The phone number or numbers the message should be sent to (must be in E.164 format, like C(+19195551212))." }, "media": { "type": "string", "description": "For MMS messages, a media url to the location of the media to be sent with the message." }, "api_secret": { "type": "string", "description": "Api Secret from Api account page." }, "api_token": { "type": "string", "description": "Api Token from Api account page." }, "msg": { "type": "string", "description": "The contents of the text message (must be 2048 characters or less)." } } }, "osx_defaults": { "required": [ "key" ], "type": "object", "description": "osx_defaults allows users to read, write, and delete Mac OS X user defaults from Ansible scripts. Mac OS X applications and other programs use the defaults system to record user preferences and other information that must be maintained when the applications aren't running (such as default font for new documents, or the position of an Info panel).", "properties": { "domain": { "type": "string", "description": "Default: NSGlobalDomain\n\nThe domain is a domain name of the form com.companyname.appname." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the user defaults" }, "value": { "type": "string", "description": "The value to write. Only required when state = present." }, "host": { "type": "string", "description": "The host on which the preference should apply. The special value \"currentHost\" corresponds to the \"-currentHost\" switch of the defaults commandline tool." }, "key": { "type": "string", "description": "The key of the user preference" }, "type": { "type": "string", "description": "Default: string\n\nThe type of value to write." }, "array_add": { "type": "string", "description": "Add new elements to the array for a key which has an array as its value." } } }, "omapi_host": { "required": [ "macaddr", "key_name", "state", "key" ], "type": "object", "description": "Create, update and remove OMAPI hosts into compatible DHCPd servers.", "properties": { "macaddr": { "type": "string", "description": "Sets the lease host MAC address." }, "statements": { "type": "string", "description": "Attach a list of OMAPI DHCP statements with host lease (without ending semicolon)." }, "name": { "type": "string", "description": "Default: None\n\nSets the host lease hostname (mandatory if state=present)." }, "key_name": { "type": "string", "description": "Sets the TSIG key name for authenticating against OMAPI server." }, "state": { "type": "string", "description": "Create or remove OMAPI host." }, "host": { "type": "string", "description": "Default: localhost\n\nSets OMAPI server host to interact with." }, "ddns": { "type": "string", "description": "Enable dynamic DNS updates for this host." }, "key": { "type": "string", "description": "Sets the TSIG key content for authenticating against OMAPI server." }, "ip": { "type": "string", "description": "Default: None\n\nSets the lease host IP address." }, "port": { "type": "string", "description": "Default: 7911\n\nSets the OMAPI server port to interact with." } } }, "avi_vsvip": { "required": [ "name" ], "type": "object", "description": "This module is used to configure VsVip object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "east_west_placement": { "description": "Force placement on all service engines in the service engine group (container clouds only).\nField introduced in 17.1.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name for the vsvip object.\nField introduced in 17.1.1." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud.\nField introduced in 17.1.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "vip": { "type": "array", "description": "List of virtual service ips and other shareable entities.\nField introduced in 17.1.1." }, "dns_info": { "type": "string", "description": "Service discovery specific data including fully qualified domain name, type and time-to-live of the dns record.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "vrf_context_ref": { "type": "string", "description": "Virtual routing context that the virtual service is bound to.\nThis is used to provide the isolation of the set of networks the application is attached to.\nIt is a reference to an object of type vrfcontext.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Uuid of the vsvip object.\nField introduced in 17.1.1." } } }, "purefa_hg": { "required": [ "hostgroup" ], "type": "object", "description": "Create, delete or modifiy hostgroups on Pure Storage FlashArrays.", "properties": { "volume": { "type": "array", "description": "List of existing volumes to add to hostgroup." }, "state": { "type": "string", "description": "Default: present\n\nDefine whether the hostgroup should exist or not." }, "host": { "type": "array", "description": "List of existing hosts to add to hostgroup." }, "hostgroup": { "type": "string", "description": "The name of the hostgroup." } } }, "azure_rm_keyvaultsecret": { "allOf": [ { "allOf": [ { "not": { "required": [ "secret_value", "secret" ], "type": "object" } } ] } ], "type": "object", "description": "Create or delete a secret within a given keyvault. By using Key Vault, you can encrypt keys and secrets (such as authentication keys, storage account keys, data encryption keys, .PFX files, and passwords).", "properties": { "keyvault_uri": { "type": "string", "description": "URI of the keyvault endpoint." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the subnet. Use 'present' to create or update a secret and 'absent' to delete a secret ." }, "secret": { "type": "string", "description": "Secret to be secured by keyvault." }, "secret_name": { "type": "string", "description": "Name of the keyvault secret." }, "secret_value": { "type": "string", "description": "Secret to be secured by keyvault." } } }, "vyos_vlan": { "required": [ "interfaces", "vlan_id" ], "type": "object", "description": "This module provides declarative management of VLANs on VyOS network devices.", "properties": { "purge": { "type": "string", "description": "Purge VLANs not defined in the I(aggregate) parameter." }, "name": { "type": "string", "description": "Name of the VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces that should be associated to the VLAN." }, "delay": { "type": "string", "description": "Default: 10\n\nDelay the play should wait to check for declarative intent params values." }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "address": { "type": "string", "description": "Configure Virtual interface address." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vlan C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vlan on device it will result in failure." }, "vlan_id": { "type": "string", "description": "ID of the VLAN. Range 0-4094." } } }, "nxos_feature": { "required": [ "feature" ], "type": "object", "description": "Offers ability to enable and disable features in NX-OS.", "properties": { "state": { "type": "string", "description": "Default: enabled\n\nDesired state of the feature." }, "feature": { "type": "string", "description": "Name of feature." } } }, "win_updates": { "type": "object", "description": "Searches, downloads, and installs Windows updates synchronously by automating the Windows Update client", "properties": { "reboot_timeout": { "type": "string", "description": "Default: 1200\n\nThe time in seconds to wait until the host is back online from a reboot.\nThis is only used if C(reboot=True) and a reboot is required." }, "log_path": { "type": "string", "description": "If set, C(win_updates) will append update progress to the specified file. The directory must already exist." }, "whitelist": { "type": "string", "description": "A list of update titles or KB numbers that can be used to specify which updates are to be searched or installed.\nIf an available update does not match one of the entries, then it is skipped and not installed.\nEach entry can either be the KB article or Update title as a regex according to the PowerShell regex rules.\nThe whitelist is only validated on updates that were found based on I(category_names). It will not force the module to install an update if it was not in the category specified." }, "category_names": { "type": "string", "description": "Default: ['CriticalUpdates', 'SecurityUpdates', 'UpdateRollups']\n\nA scalar or list of categories to install updates from" }, "reboot": { "description": "Default: no\n\nAnsible will automatically reboot the remote host if it is required and continue to install updates after the reboot.\nThis can be used instead of using a M(win_reboot) task after this one and ensures all updates for that category is installed in one go.\nAsync does not work when C(reboot=True).", "$ref": "#/definitions/ansible_truth" }, "blacklist": { "type": "string", "description": "A list of update titles or KB numbers that can be used to specify which updates are to be excluded from installation.\nIf an available update does match one of the entries, then it is skipped and not installed.\nEach entry can either be the KB article or Update title as a regex according to the PowerShell regex rules." }, "state": { "type": "string", "description": "Default: installed\n\nControls whether found updates are returned as a list or actually installed.\nThis module also supports Ansible check mode, which has the same effect as setting state=searched" } } }, "wait_for": { "type": "object", "description": "You can wait for a set amount of time C(timeout), this is the default if nothing is specified.\nWaiting for a port to become available is useful for when services are not immediately available after their init scripts return which is true of certain Java application servers. It is also useful when starting guests with the M(virt) module and needing to pause until they are ready.\nThis module can also be used to wait for a regex match a string to be present in a file.\nIn 1.6 and later, this module can also be used to wait for a file to be available or absent on the filesystem.\nIn 1.8 and later, this module can also be used to wait for active connections to be closed before continuing, useful if a node is being rotated out of a load balancer pool.", "properties": { "state": { "type": "string", "description": "Default: started\n\neither C(present), C(started), or C(stopped), C(absent), or C(drained)\nWhen checking a port C(started) will ensure the port is open, C(stopped) will check that it is closed, C(drained) will check for active connections\nWhen checking for a file or a search string C(present) or C(started) will ensure that the file or string is present before continuing, C(absent) will check that file is absent or removed" }, "port": { "type": "string", "description": "port number to poll" }, "delay": { "type": "string", "description": "number of seconds to wait before starting to poll" }, "host": { "type": "string", "description": "Default: 127.0.0.1\n\nA resolvable hostname or IP address to wait for" }, "timeout": { "type": "string", "description": "Default: 300\n\nmaximum number of seconds to wait for" }, "exclude_hosts": { "type": "array", "description": "list of hosts or IPs to ignore when looking for active TCP connections for C(drained) state" }, "search_regex": { "type": "string", "description": "Can be used to match a string in either a file or a socket connection. Defaults to a multiline regex." }, "path": { "type": "string", "description": "path to a file on the filesytem that must exist before continuing" }, "connect_timeout": { "type": "string", "description": "Default: 5\n\nmaximum number of seconds to wait for a connection to happen before closing and retrying" } } }, "os_subnets_facts": { "type": "object", "description": "Retrieve facts about one or more subnets from OpenStack.", "properties": { "subnet": { "type": "string", "description": "Name or ID of the subnet" }, "filters": { "type": "object", "description": "A dictionary of meta data to use for further filtering. Elements of this dictionary may be additional dictionaries." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" } } }, "vertica_facts": { "type": "object", "description": "Gathers Vertica database facts.", "properties": { "login_user": { "type": "string", "description": "Default: dbadmin\n\nThe username used to authenticate with." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "db": { "type": "string", "description": "Name of the database running the schema." }, "port": { "type": "string", "description": "Default: 5433\n\nDatabase port to connect to." }, "cluster": { "type": "string", "description": "Default: localhost\n\nName of the cluster running the schema." } } }, "avi_healthmonitor": { "required": [ "name", "type" ], "type": "object", "description": "This module is used to configure HealthMonitor object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "monitor_port": { "type": "string", "description": "Use this port instead of the port defined for the server in the pool.\nIf the monitor succeeds to this port, the load balanced traffic will still be sent to the port of the server defined within the pool.\nAllowed values are 1-65535.\nSpecial values are 0 - 'use server port'." }, "https_monitor": { "type": "string", "description": "Healthmonitorhttp settings for healthmonitor." }, "receive_timeout": { "type": "string", "description": "A valid response from the server is expected within the receive timeout window.\nThis timeout must be less than the send interval.\nIf server status is regularly flapping up and down, consider increasing this value.\nAllowed values are 1-2400.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4.\nUnits(SEC)." }, "description": { "type": "string", "description": "User defined description for the object." }, "name": { "type": "string", "description": "A user friendly name for this health monitor." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "dns_monitor": { "type": "string", "description": "Healthmonitordns settings for healthmonitor." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "uuid": { "type": "string", "description": "Uuid of the health monitor." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "is_federated": { "description": "This field describes the object's replication scope.\nIf the field is set to false, then the object is visible within the controller-cluster and its associated service-engines.\nIf the field is set to true, then the object is replicated across the federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "failed_checks": { "type": "string", "description": "Number of continuous failed health checks before the server is marked down.\nAllowed values are 1-50.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2." }, "tcp_monitor": { "type": "string", "description": "Healthmonitortcp settings for healthmonitor." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "send_interval": { "type": "string", "description": "Frequency, in seconds, that monitors are sent to a server.\nAllowed values are 1-3600.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.\nUnits(SEC)." }, "udp_monitor": { "type": "string", "description": "Healthmonitorudp settings for healthmonitor." }, "http_monitor": { "type": "string", "description": "Healthmonitorhttp settings for healthmonitor." }, "external_monitor": { "type": "string", "description": "Healthmonitorexternal settings for healthmonitor." }, "type": { "type": "string", "description": "Type of the health monitor.\nEnum options - HEALTH_MONITOR_PING, HEALTH_MONITOR_TCP, HEALTH_MONITOR_HTTP, HEALTH_MONITOR_HTTPS, HEALTH_MONITOR_EXTERNAL, HEALTH_MONITOR_UDP,\nHEALTH_MONITOR_DNS, HEALTH_MONITOR_GSLB." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "successful_checks": { "type": "string", "description": "Number of continuous successful health checks before server is marked up.\nAllowed values are 1-50.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2." } } }, "maven_artifact": { "allOf": [ { "allOf": [ { "not": { "required": [ "username", "aws_secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "password", "aws_secret_access_key" ], "type": "object" } } ] } ], "type": "object", "description": "Downloads an artifact from a maven repository given the maven coordinates provided to the module. Can retrieve\nsnapshots or release versions of the artifact and will resolve the latest available version if one is not\navailable.", "properties": { "username": { "type": "string", "description": "The username to authenticate as to the Maven Repository. Use AWS secret key of the repository is hosted on S3" }, "aws_secret_key": { "type": "string", "description": "The username to authenticate as to the Maven Repository. Use AWS secret key of the repository is hosted on S3" }, "password": { "type": "string", "description": "The password to authenticate with to the Maven Repository. Use AWS secret access key of the repository is hosted on S3" }, "artifact_id": { "type": "string", "description": "The maven artifactId coordinate" }, "extension": { "type": "string", "description": "Default: jar\n\nThe maven type/extension coordinate" }, "dest": { "type": "string", "description": "The path where the artifact should be written to" }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the artifact" }, "version": { "type": "string", "description": "Default: latest\n\nThe maven version coordinate" }, "aws_secret_access_key": { "type": "string", "description": "The password to authenticate with to the Maven Repository. Use AWS secret access key of the repository is hosted on S3" }, "repository_url": { "type": "string", "description": "Default: http://repo1.maven.org/maven2\n\nThe URL of the Maven Repository to download from.\nUse s3://... if the repository is hosted on Amazon S3, added in version 2.2." }, "group_id": { "type": "string", "description": "The Maven groupId coordinate" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be set to C(no) when no other option exists." }, "classifier": { "type": "string", "description": "The maven classifier coordinate" } } }, "efs": { "type": "object", "description": "Module allows create, search and destroy Amazon EFS file systems", "properties": { "name": { "type": "string", "description": "Default: None\n\nCreation Token of Amazon EFS file system. Required for create. Either name or ID required for delete." }, "tags": { "type": "array", "description": "Default: None\n\nList of tags of Amazon EFS. Should be defined as dictionary\nIn case of 'present' state with list of tags and existing EFS (matched by 'name'), tags of EFS will be replaced with provided data.\n" }, "id": { "type": "string", "description": "Default: None\n\nID of Amazon EFS. Either name or ID required for delete." }, "state": { "type": "string", "description": "Default: present\n\nAllows to create, search and destroy Amazon EFS file system" }, "wait_timeout": { "type": "string", "description": "How long the module should wait (in seconds) for desired state before returning. Zero means wait as long as necessary." }, "performance_mode": { "type": "string", "description": "Default: general_purpose\n\nFile system's performance mode to use. Only takes effect during creation." }, "targets": { "type": "array", "description": "Default: None\n\nList of mounted targets. It should be a list of dictionaries, every dictionary should include next attributes:\n - subnet_id - Mandatory. The ID of the subnet to add the mount target in.\n - ip_address - Optional. A valid IPv4 address within the address range of the specified subnet.\n - security_groups - Optional. List of security group IDs, of the form \"sg-xxxxxxxx\". These must be for the same VPC as subnet specified\nThis data may be modified for existing EFS using state 'present' and new list of mount targets.\n" }, "wait": { "type": "string", "description": "Default: no\n\nIn case of 'present' state should wait for EFS 'available' life cycle state (of course, if current state not 'deleting' or 'deleted')\nIn case of 'absent' state should wait for EFS 'deleted' life cycle state\n" } } }, "docker_network": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "network_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "network_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "connected", "containers" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "appends", "incremental" ], "type": "object" } } ] } ], "type": "object", "description": "Create/remove Docker networks and connect containers to them.\nPerforms largely the same function as the \"docker network\" CLI subcommand.", "properties": { "force": { "type": "string", "description": "With state I(absent) forces disconnecting all containers from the network prior to deleting the network. With state I(present) will disconnect all containers, delete the network and re-create the network. This option is required if you have changed the IPAM or driver options and want an existing network to be updated to use the new options." }, "name": { "type": "string", "description": "Name of the network to operate on." }, "appends": { "type": "string", "description": "By default the connected list is canonical, meaning containers not on the list are removed from the network. Use C(appends) to leave existing containers connected." }, "driver": { "type": "string", "description": "Default: bridge\n\nSpecify the type of network. Docker provides bridge and overlay drivers, but 3rd party drivers can also be used." }, "ipam_options": { "type": "object", "description": "Dictionary of IPAM options." }, "state": { "type": "string", "description": "Default: present\n\nI(absent) deletes the network. If a network has connected containers, it cannot be deleted. Use the C(force) option to disconnect all containers and delete the network.\nI(present) creates the network, if it does not already exist with the specified parameters, and connects the list of containers provided via the connected parameter. Containers not on the list will be disconnected. An empty list will leave no containers connected to the network. Use the C(appends) option to leave existing containers connected. Use the C(force) options to force re-creation of the network." }, "driver_options": { "type": "object", "description": "Dictionary of network settings. Consult docker docs for valid options and values." }, "connected": { "type": "array", "description": "List of container names or container IDs to connect to a network." }, "ipam_driver": { "type": "string", "description": "Specify an IPAM driver." }, "network_name": { "type": "string", "description": "Name of the network to operate on." }, "containers": { "type": "array", "description": "List of container names or container IDs to connect to a network." }, "incremental": { "type": "string", "description": "By default the connected list is canonical, meaning containers not on the list are removed from the network. Use C(appends) to leave existing containers connected." } } }, "vmware_host_config_manager": { "type": "object", "description": "This module can be used to manage advance configuration information about an ESXi host when ESXi hostname or Cluster name is given.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nSettings are applied to every ESXi host system in given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "options": { "type": "object", "description": "A dictionary of advance configuration parameter.\nInvalid configuration parameters are ignored." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nSettings are applied to this ESXi host system.\nIf C(cluster_name) is not given, this parameter is required." } } }, "add_host": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "hostname", "host" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "hostname" ], "type": "object" }, { "required": [ "host" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "groups", "groupname", "group" ], "type": "object" } } ] } ], "type": "object", "description": "Use variables to create new hosts and groups in inventory for use in later plays of the same playbook. Takes variables so you can define the new hosts more fully.", "properties": { "group": { "type": "string", "description": "The groups to add the hostname to, comma separated." }, "name": { "type": "string", "description": "The hostname/ip of the host to add to the inventory, can include a colon and a port number." }, "hostname": { "type": "string", "description": "The hostname/ip of the host to add to the inventory, can include a colon and a port number." }, "groupname": { "type": "string", "description": "The groups to add the hostname to, comma separated." }, "host": { "type": "string", "description": "The hostname/ip of the host to add to the inventory, can include a colon and a port number." }, "groups": { "type": "string", "description": "The groups to add the hostname to, comma separated." } } }, "rhn_register": { "type": "object", "description": "Manage registration to the Red Hat Network.", "properties": { "username": { "type": "string", "description": "Red Hat Network username" }, "systemorgid": { "type": "string", "description": "Default: None\n\nsupply an organizational id for use with registration" }, "enable_eus": { "type": "string", "description": "If true, extended update support will be requested." }, "server_url": { "type": "string", "description": "Default: Current value of I(serverURL) from C(/etc/sysconfig/rhn/up2date) is the default\n\nSpecify an alternative Red Hat Network server URL" }, "channels": { "type": "string", "description": "Optionally specify a list of comma-separated channels to subscribe to upon successful registration." }, "state": { "type": "string", "description": "Default: present\n\nwhether to register (C(present)), or unregister (C(absent)) a system" }, "sslcacert": { "type": "string", "description": "Default: None\n\nsupply a custom ssl CA certificate file for use with registration" }, "activationkey": { "type": "string", "description": "supply an activation key for use with registration" }, "profilename": { "type": "string", "description": "supply an profilename for use with registration" }, "password": { "type": "string", "description": "Red Hat Network password" }, "nopackages": { "type": "string", "description": "If true, the registered node will not upload its installed packages information to Satellite server" } } }, "foreman": { "required": [ "username", "password", "params", "server_url", "entity" ], "type": "object", "description": "Allows the management of Foreman resources inside your Foreman server.", "properties": { "username": { "type": "string", "description": "Username on Foreman server." }, "password": { "type": "string", "description": "Password for user accessing Foreman server." }, "params": { "type": "string", "description": "Parameters associated to the entity resource to set or edit in dictionary format (e.g. name, description)." }, "server_url": { "type": "string", "description": "URL of Foreman server." }, "entity": { "type": "string", "description": "The Foreman resource that the action will be performed on (e.g. organization, host)." } } }, "ipa_sudorule": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify or delete sudo rule within IPA server using IPA API.", "properties": { "cn": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." }, "runasgroupcategory": { "type": "string", "description": "RunAs Group category the rule applies to." }, "runasusercategory": { "type": "string", "description": "RunAs User category the rule applies to." }, "cmd": { "type": "array", "description": "List of commands assigned to the rule.\nIf an empty list is passed all commands will be removed from the rule.\nIf option is omitted commands will not be checked or changed." }, "hostcategory": { "type": "string", "description": "Host category the rule applies to.\nIf 'all' is passed one must omit C(host) and C(hostgroup).\nOption C(host) and C(hostgroup) must be omitted to assign 'all'." }, "hostgroup": { "type": "array", "description": "List of host groups assigned to the rule.\nIf an empty list is passed all host groups will be removed from the rule.\nIf option is omitted host groups will not be checked or changed.\nOption C(hostcategory) must be omitted to assign host groups." }, "usercategory": { "type": "string", "description": "User category the rule applies to." }, "host": { "type": "array", "description": "List of hosts assigned to the rule.\nIf an empty list is passed all hosts will be removed from the rule.\nIf option is omitted hosts will not be checked or changed.\nOption C(hostcategory) must be omitted to assign hosts." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "user": { "type": "array", "description": "List of users assigned to the rule.\nIf an empty list is passed all users will be removed from the rule.\nIf option is omitted users will not be checked or changed." }, "usergroup": { "type": "array", "description": "List of user groups assigned to the rule.\nIf an empty list is passed all user groups will be removed from the rule.\nIf option is omitted user groups will not be checked or changed." }, "cmdcategory": { "type": "string", "description": "Command category the rule applies to." }, "name": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." } } }, "panos_dag_tags": { "required": [ "password", "ip_address" ], "type": "object", "description": "Create the ip address to tag associations. Tags will in turn be used to create DAG's", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "password": { "type": "string", "description": "password for authentication" }, "devicegroup": { "type": "string", "description": "- Device groups are used for the Panorama interaction with Firewall(s). The group must exists on Panorama. If device group is not define we assume that we are contacting Firewall.\n" }, "description": { "type": "string", "description": "The purpose / objective of the static Address Group" }, "tag_names": { "type": "string", "description": "The list of the tags that will be added or removed from the IP address." }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "operation": { "type": "string", "description": "The action to be taken. Supported values are I(add)/I(update)/I(find)/I(delete)." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "ip_to_register": { "type": "string", "description": "IP that will be registered with the given tag names." } } }, "cs_resourcelimit": { "allOf": [ { "allOf": [ { "not": { "required": [ "limit", "max" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "resource_type", "type" ], "type": "object" } }, { "oneOf": [ { "required": [ "resource_type" ], "type": "object" }, { "required": [ "type" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage limits of resources for domains, accounts and projects.", "properties": { "domain": { "type": "string", "description": "Domain the resource is related to." }, "max": { "type": "string", "description": "Default: -1\n\nMaximum number of the resource.\nDefault is unlimited C(-1)." }, "account": { "type": "string", "description": "Account the resource is related to." }, "project": { "type": "string", "description": "Name of the project the resource is related to." }, "limit": { "type": "string", "description": "Default: -1\n\nMaximum number of the resource.\nDefault is unlimited C(-1)." }, "type": { "type": "string", "description": "Type of the resource." }, "resource_type": { "type": "string", "description": "Type of the resource." } } }, "netapp_e_facts": { "required": [ "api_password", "api_username", "ssid", "api_url" ], "type": "object", "description": "Return various information about NetApp E-Series storage arrays (eg, configuration, disks)", "properties": { "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "ssid": { "type": "string", "description": "The ID of the array to manage. This value must be unique for each array." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." } } }, "cs_vpn_customer_gateway": { "allOf": [ { "allOf": [ { "not": { "required": [ "cidrs", "cidr" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and remove VPN customer gateways.", "properties": { "domain": { "type": "string", "description": "Domain the VPN customer gateway is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the gateway." }, "cidrs": { "type": "array", "description": "List of guest CIDRs behind the gateway.\nRequired if C(state=present)." }, "esp_lifetime": { "type": "string", "description": "Lifetime in seconds of phase 2 VPN connection.\nDefaulted to 3600 by the API on creation if not set." }, "esp_policy": { "type": "string", "description": "ESP policy in the format e.g. C(aes256-sha1;modp1536).\nRequired if C(state=present)." }, "ipsec_psk": { "type": "string", "description": "IPsec Preshared-Key.\nCannot contain newline or double quotes.\nRequired if C(state=present)." }, "account": { "type": "string", "description": "Account the VPN customer gateway is related to." }, "ike_lifetime": { "type": "string", "description": "Lifetime in seconds of phase 1 VPN connection.\nDefaulted to 86400 by the API on creation if not set." }, "project": { "type": "string", "description": "Name of the project the VPN gateway is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the VPN customer gateway." }, "dpd": { "type": "string", "description": "Enable Dead Peer Detection.\nDisabled per default by the API on creation if not set." }, "ike_policy": { "type": "string", "description": "IKE policy in the format e.g. C(aes256-sha1;modp1536).\nRequired if C(state=present)." }, "force_encap": { "type": "string", "description": "Force encapsulation for NAT traversal.\nDisabled per default by the API on creation if not set." }, "cidr": { "type": "array", "description": "List of guest CIDRs behind the gateway.\nRequired if C(state=present)." }, "gateway": { "type": "string", "description": "Public IP address of the gateway.\nRequired if C(state=present)." } } }, "vdirect_commit": { "required": [ "vdirect_user", "vdirect_ip", "devices", "vdirect_password" ], "type": "object", "description": "Commits pending configuration changes on one or more Radware devices via vDirect server.\nFor Alteon ADC device, apply, sync and save actions will be performed by default. Skipping of an action is possible by explicit parameter specifying.\nFor Alteon VX Container device, no sync operation will be performed since sync action is only relevant for Alteon ADC devices.\nFor DefensePro and AppWall devices, a bulk commit action will be performed. Explicit apply, sync and save actions specifying is not relevant.", "properties": { "vdirect_user": { "type": "string", "description": "Default: None\n\nvDirect server username, may be set as C(VDIRECT_USER) environment variable." }, "vdirect_http_port": { "type": "string", "description": "Default: 2188\n\nvDirect server HTTP port number, may be set as C(VDIRECT_HTTP_PORT) environment variable." }, "vdirect_validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated,\nmay be set as C(VDIRECT_VALIDATE_CERTS) or C(VDIRECT_VERIFY) environment variable.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "vdirect_timeout": { "type": "string", "description": "Default: 60\n\nAmount of time to wait for async operation completion [seconds],\nmay be set as C(VDIRECT_TIMEOUT) environment variable." }, "vdirect_wait": { "description": "Default: yes\n\nWait for async operation to complete, may be set as C(VDIRECT_WAIT) environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_https_port": { "type": "string", "description": "Default: 2189\n\nvDirect server HTTPS port number, may be set as C(VDIRECT_HTTPS_PORT) environment variable." }, "devices": { "type": "array", "description": "List of Radware Alteon device names for commit operations." }, "vdirect_ip": { "type": "string", "description": "Primary vDirect server IP address, may be set as C(VDIRECT_IP) environment variable." }, "sync": { "description": "Default: yes\n\nIf C(no), sync action will not be performed. Relevant for ADC devices only.", "$ref": "#/definitions/ansible_truth" }, "apply": { "description": "Default: yes\n\nIf C(no), apply action will not be performed. Relevant for ADC devices only.", "$ref": "#/definitions/ansible_truth" }, "vdirect_secondary_ip": { "type": "string", "description": "Default: None\n\nSecondary vDirect server IP address, may be set as C(VDIRECT_SECONDARY_IP) environment variable." }, "save": { "description": "Default: yes\n\nIf C(no), save action will not be performed. Relevant for ADC devices only.", "$ref": "#/definitions/ansible_truth" }, "vdirect_use_ssl": { "description": "Default: yes\n\nIf C(no), an HTTP connection will be used instead of the default HTTPS connection,\nmay be set as C(VDIRECT_HTTPS) or C(VDIRECT_USE_SSL) environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_password": { "type": "string", "description": "Default: None\n\nvDirect server password, may be set as C(VDIRECT_PASSWORD) environment variable." } } }, "cloudfront_facts": { "type": "object", "description": "Gets information about an AWS CloudFront distribution", "properties": { "list_streaming_distributions": { "type": "string", "description": "Get a list of streaming distributions." }, "origin_access_identity_config": { "type": "string", "description": "Get the configuration information about an origin access identity. Requires I(origin_access_identity_id) to be specified." }, "list_origin_access_identities": { "type": "string", "description": "Get a list of cloudfront origin access identities. Requires I(origin_access_identity_id) to be set." }, "web_acl_id": { "type": "string", "description": "Used with I(list_distributions_by_web_acl_id)." }, "invalidation": { "type": "string", "description": "Get information about an invalidation. Requires I(invalidation_id) to be specified." }, "domain_name_alias": { "type": "string", "description": "Can be used instead of I(distribution_id) - uses the aliased CNAME for the cloudfront distribution to get the distribution id where required." }, "list_invalidations": { "type": "string", "description": "Get a list of invalidations. Requires I(distribution_id) or I(domain_name_alias) to be specified." }, "origin_access_identity_id": { "type": "string", "description": "The id of the cloudfront origin access identity to get information about." }, "list_distributions_by_web_acl_id": { "type": "string", "description": "Get a list of distributions using web acl id as a filter. Requires I(web_acl_id) to be set." }, "summary": { "type": "string", "description": "Returns a summary of all distributions, streaming distributions and origin_access_identities. This is the default behaviour if no option is selected." }, "distribution_id": { "type": "string", "description": "The id of the CloudFront distribution. Used with I(distribution), I(distribution_config), I(invalidation), I(streaming_distribution), I(streaming_distribution_config), I(list_invalidations)." }, "origin_access_identity": { "type": "string", "description": "Get information about an origin access identity. Requires I(origin_access_identity_id) to be specified." }, "streaming_distribution_config": { "type": "string", "description": "Get the configuration information about a specified RTMP distribution. Requires I(distribution_id) or I(domain_name_alias) to be specified." }, "distribution_config": { "type": "string", "description": "Get the configuration information about a distribution. Requires I(distribution_id) or I(domain_name_alias) to be specified." }, "all_lists": { "type": "string", "description": "Get all cloudfront lists that do not require parameters." }, "invalidation_id": { "type": "string", "description": "The id of the invalidation to get information about. Used with I(invalidation)." }, "list_distributions": { "type": "string", "description": "Get a list of cloudfront distributions." }, "streaming_distribution": { "type": "string", "description": "Get information about a specified RTMP distribution. Requires I(distribution_id) or I(domain_name_alias) to be specified." }, "distribution": { "type": "string", "description": "Get information about a distribution. Requires I(distribution_id) or I(domain_name_alias) to be specified." } } }, "os_server_actions": { "required": [ "server" ], "type": "object", "description": "Perform server actions on an existing compute instance from OpenStack. This module does not return any data other than changed true/false.", "properties": { "action": { "type": "string", "description": "Default: present\n\nPerform the given action. The lock and unlock actions always return changed as the servers API does not provide lock status." }, "wait": { "type": "string", "description": "Default: yes\n\nIf the module should wait for the instance action to be performed." }, "timeout": { "type": "string", "description": "Default: 180\n\nThe amount of time the module should wait for the instance to perform the requested action." }, "server": { "type": "string", "description": "Name or ID of the instance" } } }, "bigip_gtm_facts": { "required": [ "include" ], "type": "object", "description": "Collect facts from F5 BIG-IP GTM devices.", "properties": { "filter": { "type": "string", "description": "Perform regex filter of response. Filtering is done on the name of the resource. Valid filters are anything that can be provided to Python's C(re) module." }, "include": { "type": "string", "description": "Fact category to collect." } } }, "vmware_host_config_facts": { "type": "object", "description": "This module can be used to gather facts about an ESXi host's advance configuration information when ESXi hostname or Cluster name is given.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster from which the ESXi host belong to.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname to gather facts from.\nIf C(cluster_name) is not given, this parameter is required." } } }, "nxos_switchport": { "allOf": [ { "allOf": [ { "not": { "required": [ "trunk_vlans", "trunk_add_vlans" ], "type": "object" } } ] } ], "type": "object", "description": "Manages Layer 2 interfaces", "properties": { "native_vlan": { "type": "string", "description": "If C(mode=trunk), used as the trunk native VLAN ID." }, "access_vlan": { "type": "string", "description": "If C(mode=access), used as the access VLAN ID." }, "trunk_vlans": { "type": "string", "description": "If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "trunk_allowed_vlans": { "type": "string", "description": "if C(mode=trunk), these are the only VLANs that will be configured on the trunk, i.e. \"2-10,15\"." }, "mode": { "type": "string", "description": "Mode for the Layer 2 port." }, "interface": { "type": "string", "description": "Full name of the interface, i.e. Ethernet1/1." }, "trunk_add_vlans": { "type": "string", "description": "If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk." } } }, "ce_config": { "type": "object", "description": "Huawei CloudEngine configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with CloudEngine configuration sections in a deterministic way. This module works with CLI transports.", "properties": { "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration file to load into the remote system. The path can either be a full system path to the configuration file if the value starts with / or relative to the root of the implemented role or playbook. This argument is mutually exclusive with the I(lines) and I(parents) arguments." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current current-configuration to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current-configuration for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device current-configuration. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "defaults": { "description": "The I(defaults) argument will influence how the current-configuration is collected from the device. When the value is set to true, the command used to collect the current-configuration is append with the all keyword. When the value is set to false, the command is issued without the all keyword.", "$ref": "#/definitions/ansible_truth" }, "save": { "description": "The C(save) argument instructs the module to save the current-configuration to saved-configuration. This operation is performed after any changes are made to the current running config. If no changes are made, the configuration is still saved to the startup config. This option will always cause the module to return changed.", "$ref": "#/definitions/ansible_truth" }, "backup": { "description": "This argument will cause the module to create a full backup of the current C(current-configuration) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the current-configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "cnos_showrun": { "type": "object", "description": "This module allows you to view the switch running configuration. It executes the display running-config CLI command on a switch and returns a file containing the current running configuration of the target network device. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_showrun.html)", "properties": {} }, "aci_contract_subject_to_filter": { "allOf": [ { "allOf": [ { "not": { "required": [ "filter", "filter_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "log", "directive" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subject", "contract_subject", "subject_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "contract", "contract_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Bind Contract Subjects to Filters on Cisco ACI fabrics.", "properties": { "contract_name": { "type": "string", "description": "The name of the contract." }, "log": { "type": "string", "description": "Determines if the binding should be set to log.\nThe APIC defaults new Subject to Filter bindings to C(none)." }, "directive": { "type": "string", "description": "Determines if the binding should be set to log.\nThe APIC defaults new Subject to Filter bindings to C(none)." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "contract_subject": { "type": "string", "description": "The name of the Contract Subject." }, "subject_name": { "type": "string", "description": "The name of the Contract Subject." }, "filter": { "type": "string", "description": "The name of the Filter to bind to the Subject." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "contract": { "type": "string", "description": "The name of the contract." }, "filter_name": { "type": "string", "description": "The name of the Filter to bind to the Subject." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "subject": { "type": "string", "description": "The name of the Contract Subject." } } }, "taiga_issue": { "required": [ "project", "issue_type", "subject" ], "type": "object", "description": "Creates/deletes an issue in a Taiga Project Management Platform (U(https://taiga.io)).\nAn issue is identified by the combination of project, issue subject and issue type.\nThis module implements the creation or deletion of issues (not the update).", "properties": { "status": { "type": "string", "description": "Default: New\n\nThe issue status. Must exist previously." }, "priority": { "type": "string", "description": "Default: Normal\n\nThe issue priority. Must exist previously." }, "severity": { "type": "string", "description": "Default: Normal\n\nThe issue severity. Must exist previously." }, "tags": { "type": "string", "description": "A lists of tags to be assigned to the issue." }, "description": { "type": "string", "description": "The issue description." }, "project": { "type": "string", "description": "Name of the project containing the issue. Must exist previously." }, "taiga_host": { "type": "string", "description": "Default: https://api.taiga.io\n\nThe hostname of the Taiga instance." }, "state": { "type": "string", "description": "Default: present\n\nWhether the issue should be present or not." }, "attachment": { "type": "string", "description": "Default: None\n\nPath to a file to be attached to the issue." }, "issue_type": { "type": "string", "description": "The issue type. Must exist previously." }, "attachment_description": { "type": "string", "description": "A string describing the file to be attached to the issue." }, "subject": { "type": "string", "description": "The issue subject." } } }, "rax_cbs": { "required": [ "size", "volume_type", "state", "name" ], "type": "object", "description": "Manipulate Rackspace Cloud Block Storage Volumes", "properties": { "description": { "type": "string", "description": "Description to give the volume being created" }, "image": { "type": "string", "description": "image to use for bootable volumes. Can be an C(id), C(human_id) or C(name). This option requires C(pyrax>=1.9.3)" }, "volume_type": { "type": "string", "description": "Default: SATA\n\nType of the volume being created" }, "name": { "type": "string", "description": "Name to give the volume being created" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "meta": { "type": "string", "description": "A hash of metadata to associate with the volume" }, "snapshot_id": { "type": "string", "description": "The id of the snapshot to create the volume from" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the volume to be in state 'available' before returning" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "size": { "type": "string", "description": "Default: 100\n\nSize of the volume to create in Gigabytes" } } }, "ce_acl": { "required": [ "acl_name" ], "type": "object", "description": "Manages base ACL configurations on HUAWEI CloudEngine switches.", "properties": { "acl_step": { "type": "string", "description": "ACL step. The value is an integer ranging from 1 to 20. The default value is 5." }, "rule_description": { "type": "string", "description": "Description about an ACL rule. The value is a string of 1 to 127 characters." }, "acl_name": { "type": "string", "description": "ACL number or name. For a numbered rule group, the value ranging from 2000 to 2999 indicates a basic ACL. For a named rule group, the value is a string of 1 to 32 case-sensitive characters starting with a letter, spaces not supported." }, "log_flag": { "type": "string", "description": "Flag of logging matched data packets." }, "source_ip": { "type": "string", "description": "Source IP address. The value is a string of 0 to 255 characters.The default value is 0.0.0.0. The value is in dotted decimal notation." }, "acl_num": { "type": "string", "description": "ACL number. The value is an integer ranging from 2000 to 2999." }, "rule_id": { "type": "string", "description": "ID of a basic ACL rule in configuration mode. The value is an integer ranging from 0 to 4294967294." }, "rule_action": { "type": "string", "description": "Matching mode of basic ACL rules." }, "rule_name": { "type": "string", "description": "Name of a basic ACL rule. The value is a string of 1 to 32 characters. The value is case-insensitive, and cannot contain spaces or begin with an underscore (_)." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "vrf_name": { "type": "string", "description": "VPN instance name. The value is a string of 1 to 31 characters.The default value is _public_." }, "acl_description": { "type": "string", "description": "ACL description. The value is a string of 1 to 127 characters." }, "time_range": { "type": "string", "description": "Name of a time range in which an ACL rule takes effect. The value is a string of 1 to 32 characters. The value is case-insensitive, and cannot contain spaces. The name must start with an uppercase or lowercase letter. In addition, the word \"all\" cannot be specified as a time range name." }, "src_mask": { "type": "string", "description": "Mask of a source IP address. The value is an integer ranging from 1 to 32." }, "frag_type": { "type": "string", "description": "Type of packet fragmentation." } } }, "ce_aaa_server": { "type": "object", "description": "Manages AAA server global configuration on HUAWEI CloudEngine switches.", "properties": { "acct_scheme_name": { "type": "string", "description": "Accounting scheme name. The value is a string of 1 to 32 characters." }, "first_author_mode": { "type": "string", "description": "Preferred authorization mode." }, "authen_scheme_name": { "type": "string", "description": "Name of an authentication scheme. The value is a string of 1 to 32 characters." }, "radius_server_group": { "type": "string", "description": "RADIUS server group's name. The value is a string of 1 to 32 case-insensitive characters." }, "author_scheme_name": { "type": "string", "description": "Name of an authorization scheme. The value is a string of 1 to 32 characters." }, "domain_name": { "type": "string", "description": "Name of a domain. The value is a string of 1 to 64 characters." }, "first_authen_mode": { "type": "string", "description": "Preferred authentication mode." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "local_user_group": { "type": "string", "description": "Name of the user group where the user belongs. The user inherits all the rights of the user group. The value is a string of 1 to 32 characters." }, "hwtacas_template": { "type": "string", "description": "Name of a HWTACACS template. The value is a string of 1 to 32 case-insensitive characters." }, "accounting_mode": { "type": "string", "description": "Accounting Mode." } } }, "find": { "allOf": [ { "allOf": [ { "not": { "required": [ "paths", "name", "path" ], "type": "object" } }, { "oneOf": [ { "required": [ "paths" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "path" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "patterns", "pattern" ], "type": "object" } } ] } ], "type": "object", "description": "Return a list files based on specific criteria. Multiple criteria are AND'd together.", "properties": { "paths": { "type": "array", "description": "List of paths to the file or directory to search. All paths must be fully qualified." }, "name": { "type": "array", "description": "List of paths to the file or directory to search. All paths must be fully qualified." }, "file_type": { "type": "string", "description": "Default: file\n\nType of file to select" }, "pattern": { "type": "string", "description": "Default: *\n\nOne or more (shell or regex) patterns, which type is controlled by C(use_regex) option.\nThe patterns restrict the list of files to be returned to those whose basenames match at least one of the patterns specified. Multiple patterns can be specified using a list." }, "age": { "type": "string", "description": "Select files whose age is equal to or greater than the specified time. Use a negative age to find files equal to or less than the specified time. You can choose seconds, minutes, hours, days, or weeks by specifying the first letter of any of those words (e.g., \"1w\")." }, "contains": { "type": "string", "description": "One or more regex patterns which should be matched against the file content" }, "recurse": { "type": "string", "description": "Default: no\n\nIf target is a directory, recursively descend into the directory looking for files." }, "age_stamp": { "type": "string", "description": "Default: mtime\n\nChoose the file property against which we compare age. Default is mtime." }, "patterns": { "type": "string", "description": "Default: *\n\nOne or more (shell or regex) patterns, which type is controlled by C(use_regex) option.\nThe patterns restrict the list of files to be returned to those whose basenames match at least one of the patterns specified. Multiple patterns can be specified using a list." }, "get_checksum": { "type": "string", "description": "Default: False\n\nSet this to true to retrieve a file's sha1 checksum" }, "follow": { "type": "string", "description": "Default: False\n\nSet this to true to follow symlinks in path for systems with python 2.6+" }, "use_regex": { "type": "string", "description": "Default: False\n\nIf false the patterns are file globs (shell) if true they are python regexes" }, "path": { "type": "array", "description": "List of paths to the file or directory to search. All paths must be fully qualified." }, "hidden": { "type": "string", "description": "Default: False\n\nSet this to true to include hidden files, otherwise they'll be ignored." }, "size": { "type": "string", "description": "Select files whose size is equal to or greater than the specified size. Use a negative size to find files equal to or less than the specified size. Unqualified values are in bytes, but b, k, m, g, and t can be appended to specify bytes, kilobytes, megabytes, gigabytes, and terabytes, respectively. Size is not evaluated for directories." } } }, "cs_vpc_offering": { "allOf": [ { "allOf": [ { "not": { "required": [ "service_providers", "service_provider" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "supported_services", "supported_service" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "service_capabilities", "service_capability" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update, enable, disable and remove CloudStack VPC offerings.", "properties": { "display_text": { "type": "string", "description": "Display text of the vpc offerings" }, "service_providers": { "type": "string", "description": "provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network" }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "The name of the vpc offering" }, "supported_service": { "type": "string", "description": "Services supported by the vpc offering" }, "service_capabilities": { "type": "string", "description": "Desired service capabilities as part of vpc offering." }, "supported_services": { "type": "string", "description": "Services supported by the vpc offering" }, "state": { "type": "string", "description": "Default: present\n\nState of the vpc offering." }, "service_capability": { "type": "string", "description": "Desired service capabilities as part of vpc offering." }, "service_offering": { "type": "string", "description": "The name or ID of the service offering for the VPC router appliance." }, "service_provider": { "type": "string", "description": "provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network" } } }, "lambda_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "function_name", "function", "name" ], "type": "object" } } ] } ], "type": "object", "description": "Gathers various details related to Lambda functions, including aliases, versions and event source mappings. Use module M(lambda) to manage the lambda function itself, M(lambda_alias) to manage function aliases and M(lambda_event) to manage lambda event source mappings.", "properties": { "function": { "type": "string", "description": "The name of the lambda function for which facts are requested." }, "query": { "type": "string", "description": "Default: all\n\nSpecifies the resource type for which to gather facts. Leave blank to retrieve all facts." }, "event_source_arn": { "type": "string", "description": "For query type 'mappings', this is the Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream." }, "name": { "type": "string", "description": "The name of the lambda function for which facts are requested." }, "function_name": { "type": "string", "description": "The name of the lambda function for which facts are requested." } } }, "influxdb_retention_policy": { "required": [ "default", "database_name", "hostname", "policy_name", "replication", "duration" ], "type": "object", "description": "Manage InfluxDB retention policies", "properties": { "username": { "type": "string", "description": "Default: root\n\nUsername that will be used to authenticate against InfluxDB server" }, "default": { "type": "string", "description": "Sets the retention policy as default retention policy" }, "database_name": { "type": "string", "description": "Name of the database where retention policy will be created" }, "hostname": { "type": "string", "description": "The hostname or IP address on which InfluxDB server is listening" }, "policy_name": { "type": "string", "description": "Name of the retention policy" }, "replication": { "type": "string", "description": "Determines how many independent copies of each point are stored in the cluster" }, "duration": { "type": "string", "description": "Determines how long InfluxDB should keep the data" }, "password": { "type": "string", "description": "Default: root\n\nPassword that will be used to authenticate against InfluxDB server" }, "port": { "type": "string", "description": "Default: 8086\n\nThe port on which InfluxDB server is listening" } } }, "rhevm": { "allOf": [ { "allOf": [ { "not": { "required": [ "ifaces", "nics", "interfaces" ], "type": "object" } } ] } ], "type": "object", "description": "Allows you to create/remove/update or powermanage virtual machines on a RHEV/oVirt platform.", "properties": { "vmmem": { "type": "string", "description": "Default: 1\n\nThe amount of memory you want your VM to use (in GB)." }, "cd_drive": { "type": "string", "description": "The CD you wish to have mounted on the VM when I(state = 'CD')." }, "image": { "type": "string", "description": "The template to use for the VM." }, "cpu_share": { "type": "string", "description": "Default: 0\n\nThis parameter is used to configure the cpu share." }, "insecure_api": { "type": "string", "description": "A boolean switch to make a secure or insecure connection to the server." }, "cluster": { "type": "string", "description": "The rhev/ovirt cluster in which you want you VM to start." }, "port": { "type": "string", "description": "Default: 443\n\nThe port on which the API is reacheable." }, "vm_ha": { "type": "string", "description": "Default: True\n\nTo make your VM High Available." }, "nics": { "type": "string", "description": "This option uses complex arguments and is a list of interfaces with the options name and vlan." }, "ifaces": { "type": "string", "description": "This option uses complex arguments and is a list of interfaces with the options name and vlan." }, "state": { "type": "string", "description": "Default: present\n\nThis serves to create/remove/update or powermanage your VM." }, "type": { "type": "string", "description": "Default: server\n\nTo define if the VM is a server or desktop." }, "vmhost": { "type": "string", "description": "The host you wish your VM to run on." }, "boot_order": { "type": "string", "description": "Default: ['network', 'hd']\n\nThis option uses complex arguments and is a list of items that specify the bootorder." }, "interfaces": { "type": "string", "description": "This option uses complex arguments and is a list of interfaces with the options name and vlan." }, "user": { "type": "string", "description": "Default: admin@internal\n\nThe user to authenticate with." }, "datacenter": { "type": "string", "description": "Default: Default\n\nThe rhev/ovirt datacenter in which you want you VM to start." }, "name": { "type": "string", "description": "The name of the VM." }, "disks": { "type": "string", "description": "This option uses complex arguments and is a list of disks with the options name, size and domain." }, "server": { "type": "string", "description": "Default: 127.0.0.1\n\nThe name/ip of your RHEV-m/oVirt instance." }, "osver": { "type": "string", "description": "Default: rhel_6x64\n\nThe operationsystem option in RHEV/oVirt." }, "vmcpu": { "type": "string", "description": "Default: 2\n\nThe number of CPUs you want in your VM." }, "timeout": { "type": "string", "description": "The timeout you wish to define for power actions.\nWhen I(state = 'up')\nWhen I(state = 'down')\nWhen I(state = 'restarted')" }, "del_prot": { "type": "string", "description": "Default: True\n\nThis option sets the delete protection checkbox." }, "mempol": { "type": "string", "description": "Default: 1\n\nThe minimum amount of memory you wish to reserve for this system." } } }, "sf_volume_manager": { "required": [ "name", "account_id", "state" ], "type": "object", "description": "Create, destroy, or update volumes on SolidFire", "properties": { "qos": { "type": "string", "description": "Default: None\n\nInitial quality of service settings for this volume. Configure as dict in playbooks." }, "name": { "type": "string", "description": "The name of the volume to manage." }, "size_unit": { "type": "string", "description": "Default: gb\n\nThe unit used to interpret the size parameter." }, "access": { "type": "string", "description": "Default: None\n\nAccess allowed for the volume.\nreadOnly: Only read operations are allowed.\nreadWrite: Reads and writes are allowed.\nlocked: No reads or writes are allowed.\nreplicationTarget: Identify a volume as the target volume for a paired set of volumes. If the volume is not paired, the access status is locked.\nIf unspecified, the access settings of the clone will be the same as the source." }, "state": { "type": "string", "description": "Whether the specified volume should exist or not." }, "volume_id": { "type": "string", "description": "Default: None\n\nThe ID of the volume to manage or update.\nIn order to create multiple volumes with the same name, but different volume_ids, please declare the I(volume_id) parameter with an arbitrary value. However, the specified volume_id will not be assigned to the newly created volume (since it's an auto-generated property)." }, "512emulation": { "type": "string", "description": "Should the volume provide 512-byte sector emulation?\nRequired when C(state=present)" }, "attributes": { "type": "string", "description": "Default: None\n\nA YAML dictionary of attributes that you would like to apply on this volume." }, "size": { "type": "string", "description": "The size of the volume in (size_unit).\nRequired when C(state = present)." }, "account_id": { "type": "string", "description": "Account ID for the owner of this volume." } } }, "ec2_facts": { "type": "object", "description": "This module fetches data from the metadata servers in ec2 (aws) as per http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html. The module must be called from within the EC2 instance itself.", "properties": { "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "bigip_vcmp_guest": { "required": [ "name" ], "type": "object", "description": "Manages vCMP guests on a BIG-IP. This functionality only exists on actual hardware and must be enabled by provisioning C(vcmp) with the C(bigip_provision) module.", "properties": { "mgmt_address": { "type": "string", "description": "Specifies the IP address, and subnet or subnet mask that you use to access the guest when you want to manage a module running within the guest. This parameter is required if the C(mgmt_network) parameter is C(bridged).\nWhen creating a new guest, if you do not specify a network or network mask, a default of C(/24) (C(255.255.255.0)) will be assumed." }, "mgmt_route": { "type": "string", "description": "Specifies the gateway address for the C(mgmt_address).\nIf this value is not specified when creating a new guest, it is set to C(none).\nThe value C(none) can be used during an update to remove this value." }, "name": { "type": "string", "description": "The name of the vCMP guest to manage." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "delete_virtual_disk": { "type": "string", "description": "When C(state) is C(absent), will additionally delete the virtual disk associated with the vCMP guest. By default, this value is C(no)." }, "initial_image": { "type": "string", "description": "Specifies the base software release ISO image file for installing the TMOS hypervisor instance and any licensed BIG-IP modules onto the guest's virtual disk. When creating a new guest, this parameter is required." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the vCMP guest on the system. Each state implies the actions of all states before it.\nWhen C(configured), guarantees that the vCMP guest exists with the provided attributes. Additionally, ensures that the vCMP guest is turned off.\nWhen C(disabled), behaves the same as C(configured) the name of this state is just a convenience for the user that is more understandable.\nWhen C(provisioned), will ensure that the guest is created and installed. This state will not start the guest; use C(deployed) for that. This state is one step beyond C(present) as C(present) will not install the guest; only setup the configuration for it to be installed.\nWhen C(present), ensures the guest is properly provisioned and starts the guest so that it is in a running state.\nWhen C(absent), removes the vCMP from the system." }, "vlans": { "type": "string", "description": "VLANs that the guest uses to communicate with other guests, the host, and with the external network. The available VLANs in the list are those that are currently configured on the vCMP host.\nThe order of these VLANs is not important; in fact, it's ignored. This module will order the VLANs for you automatically. Therefore, if you deliberately re-order them in subsequent tasks, you will find that this module will B(not) register a change." }, "mgmt_network": { "type": "string", "description": "Specifies the method by which the management address is used in the vCMP guest.\nWhen C(bridged), specifies that the guest can communicate with the vCMP host's management network.\nWhen C(isolated), specifies that the guest is isolated from the vCMP host's management network. In this case, the only way that a guest can communicate with the vCMP host is through the console port or through a self IP address on the guest that allows traffic through port 22.\nWhen C(host only), prevents the guest from installing images and hotfixes other than those provided by the hypervisor.\nIf the guest setting is C(isolated) or C(host only), the C(mgmt_address) does not apply.\nConcerning mode changing, changing C(bridged) to C(isolated) causes the vCMP host to remove all of the guest's management interfaces from its bridged management network. This immediately disconnects the guest's VMs from the physical management network. Changing C(isolated) to C(bridged) causes the vCMP host to dynamically add the guest's management interfaces to the bridged management network. This immediately connects all of the guest's VMs to the physical management network. Changing this property while the guest is in the C(configured) or C(provisioned) state has no immediate effect." }, "cores_per_slot": { "type": "string", "description": "Specifies the number of cores that the system allocates to the guest.\nEach core represents a portion of CPU and memory. Therefore, the amount of memory allocated per core is directly tied to the amount of CPU. This amount of memory varies per hardware platform type.\nThe number you can specify depends on the type of hardware you have.\nIn the event of a reboot, the system persists the guest to the same slot on which it ran prior to the reboot." } } }, "redshift_subnet_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "group_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "group_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "group_description", "description" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "group_subnets", "subnets" ], "type": "object" } } ] } ], "type": "object", "description": "Create, modifies, and deletes Redshift cluster subnet groups.", "properties": { "subnets": { "type": "array", "description": "List of subnet IDs that make up the cluster subnet group." }, "description": { "type": "string", "description": "Database subnet group description." }, "group_name": { "type": "string", "description": "Cluster subnet group name." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether the subnet should be present or absent." }, "group_subnets": { "type": "array", "description": "List of subnet IDs that make up the cluster subnet group." }, "group_description": { "type": "string", "description": "Database subnet group description." }, "name": { "type": "string", "description": "Cluster subnet group name." } } }, "onyx_facts": { "type": "object", "description": "Collects a base set of device facts from a ONYX Mellanox network devices This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: version\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, version, module, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "ovirt_auth": { "type": "object", "description": "This module authenticates to oVirt/RHV engine and creates SSO token, which should be later used in all other oVirt/RHV modules, so all modules don't need to perform login and logout. This module returns an Ansible fact called I(ovirt_auth). Every module can use this fact as C(auth) parameter, to perform authentication.", "properties": { "username": { "type": "string", "description": "The name of the user. For example: I(admin@internal) Default value is set by I(OVIRT_USERNAME) environment variable." }, "timeout": { "type": "string", "description": "The maximum total time to wait for the response, in seconds. A value of zero (the default) means wait forever. If the timeout expires before the response is received an exception will be raised." }, "url": { "type": "string", "description": "A string containing the base URL of the server. For example: I(https://server.example.com/ovirt-engine/api). Default value is set by I(OVIRT_URL) environment variable." }, "insecure": { "type": "string", "description": "A boolean flag that indicates if the server TLS certificate and host name should be checked." }, "kerberos": { "type": "string", "description": "A boolean flag indicating if Kerberos authentication should be used instead of the default basic authentication." }, "compress": { "type": "string", "description": "A boolean flag indicating if the SDK should ask the server to send compressed responses. The default is I(True). Note that this is a hint for the server, and that it may return uncompressed data even when this parameter is set to I(True)." }, "token": { "type": "string", "description": "SSO token to be used instead of login with username/password. Default value is set by I(OVIRT_TOKEN) environment variable." }, "headers": { "type": "object", "description": "A dictionary of HTTP headers to be added to each API call." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies if a token should be created or revoked." }, "ca_file": { "type": "string", "description": "A PEM file containing the trusted CA certificates. The certificate presented by the server will be verified using these CA certificates. If C(ca_file) parameter is not set, system wide CA certificate store is used. Default value is set by I(OVIRT_CAFILE) environment variable." }, "password": { "type": "string", "description": "The password of the user. Default value is set by I(OVIRT_PASSWORD) environment variable." } } }, "ec2_vpc_egress_igw": { "required": [ "vpc_id" ], "type": "object", "description": "Manage an AWS VPC Egress Only Internet gateway", "properties": { "vpc_id": { "type": "string", "description": "The VPC ID for the VPC that this Egress Only Internet Gateway should be attached." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete the EIGW" } } }, "office_365_connector_card": { "required": [ "webhook" ], "type": "object", "description": "Creates Connector Card messages through\nOffice 365 Connectors U(https://dev.outlook.com/Connectors)", "properties": { "title": { "type": "string", "description": "A title for the Connector message. Shown at the top of the message." }, "color": { "type": "string", "description": "Accent color used for branding or indicating status in the card." }, "text": { "type": "string", "description": "The main text of the card.\nThis will be rendered below the sender information and optional title,\nand above any sections or actions present." }, "webhook": { "type": "string", "description": "The webhook URL is given to you when you create a new Connector." }, "actions": { "type": "string", "description": "This array of objects will power the action links\nfound at the bottom of the card." }, "summary": { "type": "string", "description": "A string used for summarizing card content.\nThis will be shown as the message subject.\nThis is required if the text parameter isn't populated." }, "sections": { "type": "string", "description": "Contains a list of sections to display in the card.\nFor more information see https://dev.outlook.com/Connectors/reference." } } }, "aws_batch_job_queue": { "required": [ "priority", "compute_environment_order", "state", "job_queue_name" ], "type": "object", "description": "This module allows the management of AWS Batch Job Queues. It is idempotent and supports \"Check\" mode. Use module M(batch_compute_environment) to manage the compute environment, M(batch_job_queue) to manage job queues, M(batch_job_definition) to manage job definitions.", "properties": { "priority": { "type": "string", "description": "The priority of the job queue. Job queues with a higher priority (or a lower integer value for the priority parameter) are evaluated first when associated with same compute environment. Priority is determined in ascending order, for example, a job queue with a priority value of 1 is given scheduling preference over a job queue with a priority value of 10." }, "compute_environment_order": { "type": "string", "description": "The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment should execute a given job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to 3 compute environments with a job queue." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "job_queue_name": { "type": "string", "description": "The name for the job queue" }, "job_queue_state": { "type": "string", "description": "Default: ENABLED\n\nThe state of the job queue. If the job queue state is ENABLED , it is able to accept jobs." } } }, "ipadm_prop": { "required": [ "protocol", "property" ], "type": "object", "description": "Modify protocol properties on Solaris/illumos systems.", "properties": { "temporary": { "type": "string", "description": "Specifies that the property value is temporary. Temporary property values do not persist across reboots." }, "state": { "type": "string", "description": "Default: present\n\nSet or reset the property value." }, "property": { "type": "string", "description": "Specifies the name of property we want to manage." }, "protocol": { "type": "string", "description": "Specifies the procotol for which we want to manage properties." }, "value": { "type": "string", "description": "Specifies the value we want to set for the property." } } }, "azure_rm_managed_disk": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete an Azure Managed Disk", "properties": { "source_resource_uri": { "type": "string", "description": "The resource ID of the managed disk to copy when I(create_option) is C(copy)." }, "disk_size_gb": { "type": "string", "description": "Size in GB of the managed disk to be created. If I(create_option) is C(copy) then the value must be greater than or equal to the source's size." }, "name": { "type": "string", "description": "Name of the managed disk." }, "resource_group": { "type": "string", "description": "Name of a resource group where the managed disk exists or will be created." }, "tags": { "type": "string", "description": "Tags to assign to the managed disk." }, "source_uri": { "type": "string", "description": "URI to a valid VHD file to be used when I(create_option) is C(import)." }, "storage_account_type": { "type": "string", "description": "Type of storage for the managed disk: C(Standard_LRS) or C(Premium_LRS). If not specified the disk is created C(Standard_LRS)." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the managed disk. Use C(present) to create or update a managed disk and 'absent' to delete a managed disk." }, "managed_by": { "type": "string", "description": "Name of an existing virtual machine with which the disk is or will be associated, this VM should be in the same resource group.\nTo detach a disk from a vm, keep undefined." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid Azure location. Defaults to location of the resource group." }, "os_type": { "type": "string", "description": "Type of Operating System: C(linux) or C(windows). Used when I(create_option) is either C(copy) or C(import) and the source is an OS disk." }, "create_option": { "type": "string", "description": "Allowed values: empty, import, copy. C(import) from a VHD file in I(source_uri) and C(copy) from previous managed disk I(source_resource_uri)." } } }, "vmware_drs_rule_facts": { "type": "object", "description": "This module can be used to gather facts about DRS VM-VM and VM-HOST rules from the given cluster", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nDRS facts for the given cluster will be returned.\nThis is required parameter if C(datacenter) parameter is not provided." }, "datacenter": { "type": "string", "description": "Name of the datacenter.\nDRS facts for all the clusters from the given datacenter will be returned.\nThis is required parameter if C(cluster_name) parameter is not provided." } } }, "avi_poolgroupdeploymentpolicy": { "required": [ "name" ], "type": "object", "description": "This module is used to configure PoolGroupDeploymentPolicy object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "target_test_traffic_ratio": { "type": "string", "description": "Target traffic ratio before pool is made production.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100.\nUnits(RATIO)." }, "evaluation_duration": { "type": "string", "description": "Duration of evaluation period for automatic deployment.\nAllowed values are 60-86400.\nDefault value when not specified in API or module is interpreted by Avi Controller as 300.\nUnits(SEC)." }, "description": { "type": "string", "description": "User defined description for the object." }, "test_traffic_ratio_rampup": { "type": "string", "description": "Ratio of the traffic that is sent to the pool under test.\nTest ratio of 100 means blue green.\nAllowed values are 1-100.\nDefault value when not specified in API or module is interpreted by Avi Controller as 100." }, "rules": { "type": "array", "description": "List of pgdeploymentrule." }, "auto_disable_old_prod_pools": { "description": "It will automatically disable old production pools once there is a new production candidate.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "uuid": { "type": "string", "description": "Uuid of the pool group deployment policy." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "webhook_ref": { "type": "string", "description": "Webhook configured with url that avi controller will pass back information about pool group, old and new pool information and current deployment\nrule results.\nIt is a reference to an object of type webhook.\nField introduced in 17.1.1." }, "scheme": { "type": "string", "description": "Deployment scheme.\nEnum options - BLUE_GREEN, CANARY.\nDefault value when not specified in API or module is interpreted by Avi Controller as BLUE_GREEN." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "The name of the pool group deployment policy." } } }, "ec2_vpc_dhcp_option": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "This module removes, or creates DHCP option sets, and can associate them to a VPC. Optionally, a new DHCP Options set can be created that converges a VPC's existing DHCP option set with values provided. When dhcp_options_id is provided, the module will 1. remove (with state='absent') 2. ensure tags are applied (if state='present' and tags are provided 3. attach it to a VPC (if state='present' and a vpc_id is provided. If any of the optional values are missing, they will either be treated as a no-op (i.e., inherit what already exists for the VPC) To remove existing options while inheriting, supply an empty value (e.g. set ntp_servers to [] if you want to remove them from the VPC's options) Most of the options should be self-explanatory.", "properties": { "dns_servers": { "type": "string", "description": "Default: None\n\nA list of hosts to set the DNS servers for the VPC to. (Should be a list of IP addresses rather than host names.)" }, "tags": { "type": "string", "description": "Default: None\n\nTags to be applied to a VPC options set if a new one is created, or if the resource_id is provided. (options must match)" }, "ntp_servers": { "type": "array", "description": "Default: None\n\nList of hosts to advertise as NTP servers for the VPC." }, "domain_name": { "type": "string", "description": "Default: None\n\nThe domain name to set in the DHCP option sets" }, "delete_old": { "type": "string", "description": "Default: True\n\nWhether to delete the old VPC DHCP option set when associating a new one. This is primarily useful for debugging/development purposes when you want to quickly roll back to the old option set. Note that this setting will be ignored, and the old DHCP option set will be preserved, if it is in use by any other VPC. (Otherwise, AWS will return an error.)" }, "state": { "type": "string", "description": "Default: present\n\ncreate/assign or remove the DHCP options. If state is set to absent, then a DHCP options set matched either by id, or tags and options will be removed if possible." }, "netbios_node_type": { "type": "string", "description": "Default: None\n\nNetBIOS node type to advertise in the DHCP options. The AWS recommendation is to use 2 (when using netbios name services) http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html" }, "vpc_id": { "type": "string", "description": "Default: None\n\nVPC ID to associate with the requested DHCP option set. If no vpc id is provided, and no matching option set is found then a new DHCP option set is created." }, "resource_tags": { "type": "string", "description": "Default: None\n\nTags to be applied to a VPC options set if a new one is created, or if the resource_id is provided. (options must match)" }, "inherit_existing": { "type": "string", "description": "For any DHCP options not specified in these parameters, whether to inherit them from the options set already applied to vpc_id, or to reset them to be empty." }, "dhcp_options_id": { "type": "string", "description": "Default: None\n\nThe resource_id of an existing DHCP options set. If this is specified, then it will override other settings, except tags (which will be updated to match)" }, "netbios_name_servers": { "type": "array", "description": "Default: None\n\nList of hosts to advertise as NetBIOS servers." } } }, "package_facts": { "type": "object", "description": "Return information about installed packages as facts", "properties": { "manager": { "type": "string", "description": "Default: auto\n\nThe package manager used by the system so we can query the package information" } } }, "a10_service_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "service_group", "service", "pool", "group" ], "type": "object" } }, { "oneOf": [ { "required": [ "service_group" ], "type": "object" }, { "required": [ "service" ], "type": "object" }, { "required": [ "pool" ], "type": "object" }, { "required": [ "group" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "service_group_protocol", "proto", "protocol" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "service_group_method", "method" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "servers", "server", "member" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SLB (Server Load Balancing) service-group objects on A10 Networks devices via aXAPIv2.", "properties": { "service_group": { "type": "string", "description": "The SLB (Server Load Balancing) service-group name" }, "group": { "type": "string", "description": "The SLB (Server Load Balancing) service-group name" }, "service": { "type": "string", "description": "The SLB (Server Load Balancing) service-group name" }, "proto": { "type": "string", "description": "Default: tcp\n\nThe SLB service-group protocol of TCP or UDP." }, "partition": { "type": "string", "description": "set active-partition" }, "state": { "type": "string", "description": "Default: present\n\nIf the specified service group should exists." }, "servers": { "type": "string", "description": "A list of servers to add to the service group. Each list item should be a dictionary which specifies the C(server:) and C(port:), but can also optionally specify the C(status:). See the examples below for details." }, "member": { "type": "string", "description": "A list of servers to add to the service group. Each list item should be a dictionary which specifies the C(server:) and C(port:), but can also optionally specify the C(status:). See the examples below for details." }, "service_group_protocol": { "type": "string", "description": "Default: tcp\n\nThe SLB service-group protocol of TCP or UDP." }, "service_group_method": { "type": "string", "description": "Default: round-robin\n\nThe SLB service-group load balancing method, such as round-robin or weighted-rr." }, "protocol": { "type": "string", "description": "Default: tcp\n\nThe SLB service-group protocol of TCP or UDP." }, "server": { "type": "string", "description": "A list of servers to add to the service group. Each list item should be a dictionary which specifies the C(server:) and C(port:), but can also optionally specify the C(status:). See the examples below for details." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled devices using self-signed certificates." }, "method": { "type": "string", "description": "Default: round-robin\n\nThe SLB service-group load balancing method, such as round-robin or weighted-rr." }, "pool": { "type": "string", "description": "The SLB (Server Load Balancing) service-group name" } } }, "azure_rm_mysqlserver": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete instance of MySQL Server.", "properties": { "sku": { "type": "string", "description": "The SKU (pricing tier) of the server." }, "name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "storage_mb": { "type": "string", "description": "The maximum storage allowed for a server." }, "admin_username": { "type": "string", "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." }, "version": { "type": "string", "description": "Server version." }, "location": { "type": "string", "description": "Resource location. If not set, location from the resource group will be used as default." }, "enforce_ssl": { "description": "Enable SSL enforcement.", "$ref": "#/definitions/ansible_truth" }, "admin_password": { "type": "string", "description": "The password of the administrator login." } } }, "nxos_gir": { "required": [ "state" ], "type": "object", "description": "Trigger a graceful removal or insertion (GIR) of the switch.", "properties": { "system_mode_maintenance_dont_generate_profile": { "type": "string", "description": "When C(system_mode_maintenance_dont_generate_profile=true) it prevents the dynamic searching of enabled protocols and executes commands configured in a maintenance-mode profile. Use this option if you want the system to use a maintenance-mode profile that you have created. When C(system_mode_maintenance_dont_generate_profile=false) it prevents the dynamic searching of enabled protocols and executes commands configured in a normal-mode profile. Use this option if you want the system to use a normal-mode profile that you have created." }, "system_mode_maintenance_shutdown": { "type": "string", "description": "Shuts down all protocols, vPC domains, and interfaces except the management interface (using the shutdown command). This option is disruptive while C(system_mode_maintenance) (which uses the isolate command) is not." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "system_mode_maintenance_timeout": { "type": "string", "description": "Keeps the switch in maintenance mode for a specified number of minutes. Range is 5-65535." }, "system_mode_maintenance": { "type": "string", "description": "When C(system_mode_maintenance=true) it puts all enabled protocols in maintenance mode (using the isolate command). When C(system_mode_maintenance=false) it puts all enabled protocols in normal mode (using the no isolate command)." }, "system_mode_maintenance_on_reload_reset_reason": { "type": "string", "description": "Boots the switch into maintenance mode automatically in the event of a specified system crash." } } }, "ec2_vpc_vpn": { "type": "object", "description": "This module creates, modifies, and deletes VPN connections. Idempotence is achieved by using the filters option or specifying the VPN connection identifier.", "properties": { "connection_type": { "type": "string", "description": "Default: ipsec.1\n\nThe type of VPN connection." }, "filters": { "type": "string", "description": "An alternative to using vpn_connection_id. If multiple matches are found, vpn_connection_id is required. If one of the following suboptions is a list of items to filter by, only one item needs to match to find the VPN that correlates. e.g. if the filter 'cidr' is ['194.168.2.0/24', '192.168.2.0/24'] and the VPN route only has the destination cidr block of '192.168.2.0/24' it will be found with this filter (assuming there are not multiple VPNs that are matched). Another example, if the filter 'vpn' is equal to ['vpn-ccf7e7ad', 'vpn-cb0ae2a2'] and one of of the VPNs has the state deleted (exists but is unmodifiable) and the other exists and is not deleted, it will be found via this filter. See examples." }, "tunnel_options": { "type": "string", "description": "An optional list object containing no more than two dict members, each of which may contain 'TunnelInsideCidr' and/or 'PreSharedKey' keys with appropriate string values. AWS defaults will apply in absence of either of the aforementioned keys." }, "purge_tags": { "description": "Whether or not to delete VPN connections tags that are associated with the connection but not specified in the task.", "$ref": "#/definitions/ansible_truth" }, "tags": { "type": "string", "description": "Tags to attach to the VPN connection." }, "purge_routes": { "type": "string", "description": "Whether or not to delete VPN connections routes that are not specified in the task." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state of the VPN connection." }, "vpn_connection_id": { "type": "string", "description": "The ID of the VPN connection. Required to modify or delete a connection if the filters option does not provide a unique match." }, "customer_gateway_id": { "type": "string", "description": "The ID of the customer gateway." }, "routes": { "type": "string", "description": "Routes to add to the connection." }, "vpn_gateway_id": { "type": "string", "description": "The ID of the virtual private gateway." }, "static_only": { "type": "string", "description": "Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP." } } }, "nxos_l2_interface": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "trunk_vlans", "trunk_add_vlans" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of Layer-2 interface on Cisco NXOS devices.", "properties": { "native_vlan": { "type": "string", "description": "Native VLAN to be configured in trunk port. If C(mode=trunk), used as the trunk native VLAN ID." }, "access_vlan": { "type": "string", "description": "Configure given VLAN in access port. If C(mode=access), used as the access VLAN ID." }, "name": { "type": "string", "description": "Full name of the interface excluding any logical unit number, i.e. Ethernet1/1." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the Layer-2 Interface configuration." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." }, "trunk_vlans": { "type": "array", "description": "List of VLANs to be configured in trunk port. If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk." }, "trunk_allowed_vlans": { "type": "array", "description": "List of allowed VLANs in a given trunk port. If C(mode=trunk), these are the only VLANs that will be configured on the trunk, i.e. \"2-10,15\"." }, "mode": { "type": "string", "description": "Mode in which interface needs to be configured." }, "interface": { "type": "string", "description": "Full name of the interface excluding any logical unit number, i.e. Ethernet1/1." }, "trunk_add_vlans": { "type": "array", "description": "List of VLANs to be configured in trunk port. If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk." } } }, "cloudwatchlogs_log_group_facts": { "type": "object", "description": "Lists the specified log groups. You can list all your log groups or filter the results by prefix.", "properties": { "log_group_name": { "type": "string", "description": "The name or prefix of the log group to filter by." } } }, "openssl_privatekey": { "required": [ "path" ], "type": "object", "description": "This module allows one to (re)generate OpenSSL private keys. It uses the pyOpenSSL python library to interact with openssl. One can generate either RSA or DSA private keys. Keys are generated in PEM format.", "properties": { "force": { "type": "string", "description": "Should the key be regenerated even it it already exists" }, "state": { "type": "string", "description": "Default: present\n\nWhether the private key should exist or not, taking action if the state is different from what is stated." }, "cipher": { "type": "string", "description": "The cipher to encrypt the private key. (cipher can be found by running `openssl list-cipher-algorithms`)" }, "passphrase": { "type": "string", "description": "The passphrase for the private key." }, "path": { "type": "string", "description": "Name of the file in which the generated TLS/SSL private key will be written. It will have 0600 mode." }, "type": { "type": "string", "description": "Default: RSA\n\nThe algorithm used to generate the TLS/SSL private key" }, "size": { "type": "string", "description": "Default: 4096\n\nSize (in bits) of the TLS/SSL key to generate" } } }, "nxos_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on Cisco NXOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of L3 interfaces definitions." }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration." }, "ipv6": { "type": "string", "description": "IPv6 of the L3 interface." }, "ipv4": { "type": "string", "description": "IPv4 of the L3 interface." }, "name": { "type": "string", "description": "Name of the L3 interface." } } }, "aws_direct_connect_virtual_interface": { "allOf": [ { "allOf": [ { "not": { "required": [ "id_to_associate", "link_aggregation_group_id", "connection_id" ], "type": "object" } } ] } ], "type": "object", "description": "Create, delete, or modify a Direct Connect public or private virtual interface.", "properties": { "virtual_interface_id": { "type": "string", "description": "The virtual interface ID." }, "name": { "type": "string", "description": "The name of the virtual interface." }, "virtual_gateway_id": { "type": "string", "description": "The virtual gateway ID required for creating a private virtual interface." }, "vlan": { "type": "string", "description": "Default: 100\n\nThe VLAN ID." }, "cidr": { "type": "string", "description": "A list of route filter prefix CIDRs with which to create the public virtual interface." }, "connection_id": { "type": "string", "description": "The ID of the link aggrecation group or connection to associate with the virtual interface." }, "public": { "description": "The type of virtual interface.", "$ref": "#/definitions/ansible_truth" }, "customer_address": { "type": "string", "description": "The customer address CIDR with which to create the virtual interface." }, "state": { "type": "string", "description": "The desired state of the Direct Connect virtual interface." }, "amazon_address": { "type": "string", "description": "The amazon address CIDR with which to create the virtual interface." }, "bgp_asn": { "type": "string", "description": "Default: 65000\n\nThe autonomous system (AS) number for Border Gateway Protocol (BGP) configuration." }, "authentication_key": { "type": "string", "description": "The authentication key for BGP configuration." }, "address_type": { "type": "string", "description": "The type of IP address for the BGP peer." }, "link_aggregation_group_id": { "type": "string", "description": "The ID of the link aggrecation group or connection to associate with the virtual interface." }, "id_to_associate": { "type": "string", "description": "The ID of the link aggrecation group or connection to associate with the virtual interface." } } }, "avi_errorpageprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure ErrorPageProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Field introduced in 17.2.4." }, "error_pages": { "type": "string", "description": "Defined error pages for http status codes.\nField introduced in 17.2.4." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.2.4." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "company_name": { "type": "string", "description": "Name of the company to show in error page.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as Avi Networks." }, "host_name": { "type": "string", "description": "Fully qualified domain name for which the error page is generated.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as Host Header." }, "app_name": { "type": "string", "description": "Name of the virtual service which generated the error page.\nField introduced in 17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as VS Name." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Field introduced in 17.2.4." } } }, "dimensiondata_vlan": { "required": [ "network_domain" ], "type": "object", "description": "Manage VLANs in Cloud Control network domains.", "properties": { "name": { "type": "string", "description": "The name of the target VLAN.\nRequired if C(state) is C(present)." }, "private_ipv4_base_address": { "type": "string", "description": "The base address for the VLAN's IPv4 network (e.g. 192.168.1.0)." }, "private_ipv4_prefix_size": { "type": "string", "description": "The size of the IPv4 address space, e.g 24.\nRequired, if C(private_ipv4_base_address) is specified." }, "state": { "type": "string", "description": "Default: present\n\nThe desired state for the target VLAN.\nC(readonly) ensures that the state is only ever read, not modified (the module will fail if the resource does not exist)." }, "network_domain": { "type": "string", "description": "The Id or name of the target network domain." }, "allow_expand": { "type": "string", "description": "Permit expansion of the target VLAN's network if the module parameters specify a larger network than the VLAN currently posesses?\nIf C(False), the module will fail under these conditions.\nThis is intended to prevent accidental expansion of a VLAN's network (since this operation is not reversible)." }, "description": { "type": "string", "description": "A description of the VLAN." } } }, "avi_actiongroupconfig": { "required": [ "name", "level", "external_only" ], "type": "object", "description": "This module is used to configure ActionGroupConfig object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "snmp_trap_profile_ref": { "type": "string", "description": "Select the snmp trap notification to use when sending alerts via snmp trap.\nIt is a reference to an object of type snmptrapprofile." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "level": { "type": "string", "description": "When an alert is generated, mark its priority via the alert level.\nEnum options - ALERT_LOW, ALERT_MEDIUM, ALERT_HIGH.\nDefault value when not specified in API or module is interpreted by Avi Controller as ALERT_LOW." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "User defined description for the object." }, "syslog_config_ref": { "type": "string", "description": "Select the syslog notification configuration to use when sending alerts via syslog.\nIt is a reference to an object of type alertsyslogconfig." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "action_script_config_ref": { "type": "string", "description": "Reference of the action script configuration to be used.\nIt is a reference to an object of type alertscriptconfig." }, "autoscale_trigger_notification": { "description": "Trigger notification to autoscale manager.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "external_only": { "description": "Generate alert only to external destinations.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "email_config_ref": { "type": "string", "description": "Select the email notification configuration to use when sending alerts via email.\nIt is a reference to an object of type alertemailconfig." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object." } } }, "vmware_vmkernel": { "required": [ "portgroup_name", "vland_id", "subnet_mask", "vswitch_name", "ip_address" ], "type": "object", "description": "Create a VMware VMkernel Interface", "properties": { "portgroup_name": { "type": "string", "description": "The name of the portgroup for the VMK interface" }, "vland_id": { "type": "string", "description": "The VLAN ID for the VMK interface" }, "enable_vmotion": { "type": "string", "description": "Enable the VMK interface for vMotion traffic" }, "vswitch_name": { "type": "string", "description": "The name of the vswitch where to add the VMK interface" }, "enable_mgmt": { "type": "string", "description": "Enable the VMK interface for Management traffic" }, "mtu": { "type": "string", "description": "The MTU for the VMK interface" }, "subnet_mask": { "type": "string", "description": "The Subnet Mask for the VMK interface" }, "enable_vsan": { "type": "string", "description": "Enable the VMK interface for VSAN traffic" }, "ip_address": { "type": "string", "description": "The IP Address for the VMK interface" }, "enable_ft": { "type": "string", "description": "Enable the VMK interface for Fault Tolerance traffic" } } }, "bigip_device_dns": { "type": "object", "description": "Manage BIG-IP device DNS settings", "properties": { "search": { "type": "string", "description": "A list of domains that the system searches for local domain lookups, to resolve local host names." }, "cache": { "type": "string", "description": "Default: disable\n\nSpecifies whether the system caches DNS lookups or performs the operation each time a lookup is needed. Please note that this applies only to Access Policy Manager features, such as ACLs, web application rewrites, and authentication." }, "ip_version": { "type": "string", "description": "Specifies whether the DNS specifies IP addresses using IPv4 or IPv6." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the variable on the system. When C(present), guarantees that an existing variable is set to C(value)." }, "forwarders": { "type": "string", "description": "A list of BIND servers that the system can use to perform DNS lookups" }, "name_servers": { "type": "string", "description": "A list of name serverz that the system uses to validate DNS lookups" } } }, "ec2_vol": { "allOf": [ { "allOf": [ { "not": { "required": [ "zone", "aws_zone", "ec2_zone" ], "type": "object" } } ] } ], "type": "object", "description": "creates an EBS volume and optionally attaches it to an instance. If both an instance ID and a device name is given and the instance has a device at the device name, then no volume is created and no attachment is made. This module has a dependency on python-boto.", "properties": { "aws_zone": { "type": "string", "description": "zone in which to create the volume, if unset uses the zone the instance is in (if set)" }, "name": { "type": "string", "description": "volume Name tag if you wish to attach an existing volume (requires instance)" }, "zone": { "type": "string", "description": "zone in which to create the volume, if unset uses the zone the instance is in (if set)" }, "volume_size": { "type": "string", "description": "size of volume (in GB) to create." }, "encrypted": { "type": "string", "description": "Enable encryption at rest for this volume." }, "delete_on_termination": { "type": "string", "description": "Default: no\n\nWhen set to \"yes\", the volume will be deleted upon instance termination." }, "volume_type": { "type": "string", "description": "Default: standard\n\nType of EBS volume; standard (magnetic), gp2 (SSD), io1 (Provisioned IOPS). \"Standard\" is the old EBS default and continues to remain the Ansible default for backwards compatibility." }, "ec2_zone": { "type": "string", "description": "zone in which to create the volume, if unset uses the zone the instance is in (if set)" }, "instance": { "type": "string", "description": "instance ID if you wish to attach the volume. Since 1.9 you can set to None to detach." }, "state": { "type": "string", "description": "Default: present\n\nwhether to ensure the volume is present or absent, or to list existing volumes (The C(list) option was added in version 1.8)." }, "iops": { "type": "string", "description": "Default: 100\n\nthe provisioned IOPs you want to associate with this volume (integer)." }, "snapshot": { "type": "string", "description": "snapshot ID on which to base the volume" }, "device_name": { "type": "string", "description": "device id to override device mapping. Assumes /dev/sdf for Linux/UNIX and /dev/xvdf for Windows." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nWhen set to \"no\", SSL certificates will not be validated for boto versions >= 2.6.0." }, "id": { "type": "string", "description": "volume id if you wish to attach an existing volume (requires instance) or remove an existing volume" } } }, "aws_direct_connect_link_aggregation_group": { "type": "object", "description": "Create, delete, or modify a Direct Connect link aggregation group.", "properties": { "name": { "type": "string", "description": "The name of the Direct Connect link aggregation group." }, "delete_with_disassociation": { "type": "string", "description": "To be used with I(state=absent) to delete connections after disassociating them with the LAG." }, "force_delete": { "type": "string", "description": "This allows the minimum number of links to be set to 0, any hosted connections disassociated, and any virtual interfaces associated to the LAG deleted." }, "bandwidth": { "type": "string", "description": "The bandwidth of the link aggregation group." }, "connection_id": { "type": "string", "description": "A connection ID to link with the link aggregation group upon creation." }, "num_connections": { "type": "string", "description": "The number of connections with which to intialize the link aggregation group." }, "state": { "type": "string", "description": "The state of the Direct Connect link aggregation group." }, "wait_timeout": { "type": "string", "description": "Default: 120\n\nThe duration in seconds to wait if I(wait) is True." }, "location": { "type": "string", "description": "The location of the link aggregation group." }, "min_links": { "type": "string", "description": "The minimum number of physical connections that must be operational for the LAG itself to be operational." }, "link_aggregation_group_id": { "type": "string", "description": "The ID of the Direct Connect link aggregation group." }, "wait": { "description": "Whether or not to wait for the operation to complete. May be useful when waiting for virtual interfaces to be deleted. May modify the time of waiting with C(wait_timeout).", "$ref": "#/definitions/ansible_truth" } } }, "aci_rest": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "uri" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "uri" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "method", "action" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "src", "config_file" ], "type": "object" } } ] } ], "type": "object", "description": "Enables the management of the Cisco ACI fabric through direct access to the Cisco APIC REST API.\nThanks to the idempotent nature of the APIC, this module is idempotent and reports changes.", "properties": { "src": { "type": "string", "description": "Name of the absolute path of the filname that includes the body of the http request being sent to the ACI fabric." }, "config_file": { "type": "string", "description": "Name of the absolute path of the filname that includes the body of the http request being sent to the ACI fabric." }, "uri": { "type": "string", "description": "URI being used to execute API calls.\nMust end in C(.xml) or C(.json)." }, "content": { "type": "string", "description": "When used instead of C(src), sets the payload of the API request directly.\nThis may be convenient to template simple requests, for anything complex use the M(template) module." }, "action": { "type": "string", "description": "Default: get\n\nThe HTTP method of the request.\nUsing C(delete) is typically used for deleting objects.\nUsing C(get) is typically used for querying objects.\nUsing C(post) is typically used for modifying objects." }, "path": { "type": "string", "description": "URI being used to execute API calls.\nMust end in C(.xml) or C(.json)." }, "method": { "type": "string", "description": "Default: get\n\nThe HTTP method of the request.\nUsing C(delete) is typically used for deleting objects.\nUsing C(get) is typically used for querying objects.\nUsing C(post) is typically used for modifying objects." } } }, "postgresql_ext": { "required": [ "name", "db" ], "type": "object", "description": "Add or remove PostgreSQL extensions from a database.", "properties": { "name": { "type": "string", "description": "name of the extension to add or remove" }, "login_user": { "type": "string", "description": "The username used to authenticate with" }, "login_host": { "type": "string", "description": "Default: localhost\n\nHost running the database" }, "db": { "type": "string", "description": "name of the database to add or remove the extension to/from" }, "state": { "type": "string", "description": "Default: present\n\nThe database extension state" }, "login_password": { "type": "string", "description": "The password used to authenticate with" }, "port": { "type": "string", "description": "Default: 5432\n\nDatabase port to connect to." } } }, "pamd": { "required": [ "control", "name", "module_path", "type" ], "type": "object", "description": "Edit PAM service's type, control, module path and module arguments. In order for a PAM rule to be modified, the type, control and module_path must match an existing rule. See man(5) pam.d for details.", "properties": { "control": { "type": "string", "description": "The control of the PAM rule being modified. This may be a complicated control with brackets. If this is the case, be sure to put \"[bracketed controls]\" in quotes. The type, control and module_path all must match a rule to be modified." }, "new_module_path": { "type": "string", "description": "The new module path to be assigned to the new rule." }, "name": { "type": "string", "description": "The name generally refers to the PAM service file to change, for example system-auth." }, "new_type": { "type": "string", "description": "The new type to assign to the new rule." }, "state": { "type": "string", "description": "Default: updated\n\nThe default of 'updated' will modify an existing rule if type, control and module_path all match an existing rule. With 'before', the new rule will be inserted before a rule matching type, control and module_path. Similarly, with 'after', the new rule will be inserted after an existing rule matching type, control and module_path. With either 'before' or 'after' new_type, new_control, and new_module_path must all be specified. If state is 'args_absent' or 'args_present', new_type, new_control, and new_module_path will be ignored. State 'absent' will remove the rule. The 'absent' state was added in version 2.4 and is only available in Ansible versions >= 2.4." }, "new_control": { "type": "string", "description": "The new control to assign to the new rule." }, "module_path": { "type": "string", "description": "The module path of the PAM rule being modified. The type, control and module_path all must match a rule to be modified." }, "path": { "type": "string", "description": "Default: /etc/pam.d/\n\nThis is the path to the PAM service files" }, "type": { "type": "string", "description": "The type of the PAM rule being modified. The type, control and module_path all must match a rule to be modified." }, "module_arguments": { "type": "string", "description": "When state is 'updated', the module_arguments will replace existing module_arguments. When state is 'args_absent' args matching those listed in module_arguments will be removed. When state is 'args_present' any args listed in module_arguments are added if missing from the existing rule. Furthermore, if the module argument takes a value denoted by '=', the value will be changed to that specified in module_arguments. Note that module_arguments is a list. Please see the examples for usage." } } }, "rds_param_group": { "required": [ "state", "name" ], "type": "object", "description": "Creates, modifies, and deletes RDS parameter groups. This module has a dependency on python-boto >= 2.5.", "properties": { "engine": { "type": "string", "description": "The type of database for this group. Required for state=present." }, "name": { "type": "string", "description": "Database parameter group identifier." }, "immediate": { "type": "string", "description": "Whether to apply the changes immediately, or after the next reboot of any associated instances." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether the group should be present or absent." }, "params": { "type": "string", "description": "Map of parameter names and values. Numeric values may be represented as K for kilo (1024), M for mega (1024^2), G for giga (1024^3), or T for tera (1024^4), and these values will be expanded into the appropriate number before being set in the parameter group." }, "description": { "type": "string", "description": "Database parameter group description. Only set when a new group is added." } } }, "dladm_iptun": { "allOf": [ { "allOf": [ { "not": { "required": [ "local_address", "local" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "type", "tunnel_type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "remote_address", "remote" ], "type": "object" } } ] } ], "type": "object", "description": "Manage IP tunnel interfaces on Solaris/illumos systems.", "properties": { "temporary": { "type": "string", "description": "Specifies that the IP tunnel interface is temporary. Temporary IP tunnel interfaces do not persist across reboots." }, "name": { "type": "string", "description": "IP tunnel interface name." }, "tunnel_type": { "type": "string", "description": "Default: ipv4\n\nSpecifies the type of tunnel to be created." }, "local": { "type": "string", "description": "Literat IP address or hostname corresponding to the tunnel source." }, "remote_address": { "type": "string", "description": "Literal IP address or hostname corresponding to the tunnel destination." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete Solaris/illumos VNIC." }, "local_address": { "type": "string", "description": "Literat IP address or hostname corresponding to the tunnel source." }, "type": { "type": "string", "description": "Default: ipv4\n\nSpecifies the type of tunnel to be created." }, "remote": { "type": "string", "description": "Literal IP address or hostname corresponding to the tunnel destination." } } }, "netapp_e_amg": { "required": [ "ssid", "secondaryArrayId", "api_password", "name", "state", "api_username", "api_url" ], "type": "object", "description": "Allows for the creation, removal and updating of Asynchronous Mirror Groups for NetApp E-series storage arrays", "properties": { "ssid": { "type": "string", "description": "The ID of the primary storage array for the async mirror action" }, "syncIntervalMinutes": { "type": "string", "description": "Default: 10\n\nThe synchronization interval in minutes" }, "recoveryWarnThresholdMinutes": { "type": "string", "description": "Default: 20\n\nRecovery point warning threshold (minutes). The user will be warned when the age of the last good failures point exceeds this value" }, "secondaryArrayId": { "type": "string", "description": "The ID of the secondary array to be used in mirroing process" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "repoUtilizationWarnThreshold": { "type": "string", "description": "Default: 80\n\nRecovery point warning threshold" }, "state": { "type": "string", "description": "A C(state) of present will either create or update the async mirror group.\nA C(state) of absent will remove the async mirror group." }, "interfaceType": { "type": "string", "description": "The intended protocol to use if both Fibre and iSCSI are available." }, "manualSync": { "type": "string", "description": "Setting this to true will cause other synchronization values to be ignored" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "syncWarnThresholdMinutes": { "type": "string", "description": "Default: 10\n\nThe threshold (in minutes) for notifying the user that periodic synchronization has taken too long to complete." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "name": { "type": "string", "description": "The name of the async array you wish to target, or create.\nIf C(state) is present and the name isn't found, it will attempt to create." } } }, "eos_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends an arbitrary set of commands to an EOS node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should be tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditionals." }, "commands": { "type": "string", "description": "The commands to send to the remote EOS device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of I(retries) has been exceeded." }, "waitfor": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. Note - With I(wait_for) the value in C(result['stdout']) can be accessed using C(result), that is to access C(result['stdout'][0]) use C(result[0]) See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditional, the interval indicates how to long to wait before trying the command again." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. Note - With I(wait_for) the value in C(result['stdout']) can be accessed using C(result), that is to access C(result['stdout'][0]) use C(result[0]) See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "gce_labels": { "type": "object", "description": "Create, Update or Destroy GCE Labels on instances, disks, snapshots, etc. When specifying the GCE resource, users may specifiy the full URL for the resource (its 'self_link'), or the individual parameters of the resource (type, location, name). Examples for the two options can be seen in the documentaion. See U(https://cloud.google.com/compute/docs/label-or-tag-resources) for more information about GCE Labels. Labels are gradually being added to more GCE resources, so this module will need to be updated as new resources are added to the GCE (v1) API.", "properties": { "resource_url": { "type": "string", "description": "The 'self_link' for the resource (instance, disk, snapshot, etc)" }, "labels": { "type": "string", "description": "A list of labels (key/value pairs) to add or remove for the resource." }, "resource_type": { "type": "string", "description": "The type of resource (instances, disks, snapshots, images)" }, "resource_name": { "type": "string", "description": "The name of resource." }, "resource_location": { "type": "string", "description": "The location of resource (global, us-central1-f, etc.)" } } }, "elasticache_facts": { "type": "object", "description": "Retrieve facts from AWS Elasticache clusters", "properties": { "name": { "type": "string", "description": "The name of an Elasticache cluster" } } }, "ce_netconf": { "required": [ "rpc", "cfg_xml" ], "type": "object", "description": "Sends an arbitrary netconf command on HUAWEI CloudEngine switches.", "properties": { "rpc": { "type": "string", "description": "The type of rpc." }, "cfg_xml": { "type": "string", "description": "The config xml string." } } }, "avi_network": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Network object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "configured_subnets": { "type": "array", "description": "List of subnet." }, "vrf_context_ref": { "type": "string", "description": "It is a reference to an object of type vrfcontext." }, "name": { "type": "string", "description": "Name of the object." }, "exclude_discovered_subnets": { "description": "When selected, excludes all discovered subnets in this network from consideration for virtual service placement.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "synced_from_se": { "description": "Boolean flag to set synced_from_se.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "vimgrnw_ref": { "type": "string", "description": "It is a reference to an object of type vimgrnwruntime." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "vcenter_dvs": { "description": "Boolean flag to set vcenter_dvs.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "dhcp_enabled": { "description": "Select the ip address management scheme for this network.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "nsupdate": { "required": [ "zone", "server", "record" ], "type": "object", "description": "Create, update and remove DNS records using DDNS updates\nDDNS works well with both bind and Microsoft DNS (see https://technet.microsoft.com/en-us/library/cc961412.aspx)", "properties": { "key_algorithm": { "type": "string", "description": "Default: hmac-md5\n\nSpecify key algorithm used by C(key_secret)." }, "zone": { "type": "string", "description": "DNS record will be modified on this C(zone)." }, "key_name": { "type": "string", "description": "Use TSIG key name to authenticate against DNS C(server)" }, "value": { "type": "string", "description": "Default: None\n\nSets the record value." }, "server": { "type": "string", "description": "Apply DNS modification on this server." }, "record": { "type": "string", "description": "Sets the DNS record to modify." }, "state": { "type": "string", "description": "Default: present\n\nManage DNS record." }, "ttl": { "type": "string", "description": "Default: 3600\n\nSets the record TTL." }, "type": { "type": "string", "description": "Default: A\n\nSets the record type." }, "port": { "type": "string", "description": "Default: 53\n\nUse this TCP port when connecting to C(server)." }, "key_secret": { "type": "string", "description": "Use TSIG key secret, associated with C(key_name), to authenticate against C(server)" } } }, "avi_clusterclouddetails": { "required": [ "name" ], "type": "object", "description": "This module is used to configure ClusterCloudDetails object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Field introduced in 17.2.5." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.2.5." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "azure_info": { "type": "string", "description": "Azure info to configure cluster_vip on the controller.\nField introduced in 17.2.5." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Field introduced in 17.2.5." } } }, "ec2_vpc_net_facts": { "type": "object", "description": "Gather facts about ec2 VPCs in AWS", "properties": { "vpc_ids": { "type": "string", "description": "A list of VPC IDs that exist in your account." }, "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html) for possible filters." } } }, "asa_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Cisco ASA configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with ASA configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "passwords": { "type": "string", "description": "This argument specifies to include passwords in the config when retrieving the running-config from the remote device. This includes passwords related to VPN endpoints. This argument is mutually exclusive with I(defaults)." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct" }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "defaults": { "type": "string", "description": "This argument specifies whether or not to collect all defaults when getting the remote device running config. When enabled, the module will get the current config by issuing the command C(show running-config all)." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "cs_securitygroup_rule": { "allOf": [ { "allOf": [ { "not": { "required": [ "start_port", "port" ], "type": "object" } } ] } ], "type": "object", "description": "Add and remove security group rules.", "properties": { "icmp_code": { "type": "string", "description": "Error code for this icmp message. Required if C(protocol=icmp)." }, "start_port": { "type": "string", "description": "Start port for this rule. Required if C(protocol=tcp) or C(protocol=udp)." }, "user_security_group": { "type": "string", "description": "Security group this rule is based of." }, "end_port": { "type": "string", "description": "End port for this rule. Required if C(protocol=tcp) or C(protocol=udp), but C(start_port) will be used if not set." }, "project": { "type": "string", "description": "Name of the project the security group to be created in." }, "state": { "type": "string", "description": "Default: present\n\nState of the security group rule." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "security_group": { "type": "string", "description": "Name of the security group the rule is related to. The security group must be existing." }, "protocol": { "type": "string", "description": "Default: tcp\n\nProtocol of the security group rule." }, "cidr": { "type": "string", "description": "Default: 0.0.0.0/0\n\nCIDR (full notation) to be used for security group rule." }, "icmp_type": { "type": "string", "description": "Type of the icmp message being sent. Required if C(protocol=icmp)." }, "type": { "type": "string", "description": "Default: ingress\n\nIngress or egress security group rule." }, "port": { "type": "string", "description": "Start port for this rule. Required if C(protocol=tcp) or C(protocol=udp)." } } }, "atomic_image": { "required": [ "name" ], "type": "object", "description": "Manage the container images on the atomic host platform\nAllows to execute the commands on the container images", "properties": { "started": { "type": "string", "description": "Default: True\n\nStart or Stop the continer" }, "state": { "type": "string", "description": "Default: latest\n\nThe state of the container image.\nThe state ```latest``` will ensure container image is upgraded to the latest version and forcefully restart container, if running." }, "name": { "type": "string", "description": "Name of the container image" } } }, "cnos_bgp": { "required": [ "asNum", "bgpArg1" ], "type": "object", "description": "This module allows you to work with Border Gateway Protocol (BGP) related configurations. The operators used are overloaded to ensure control over switch BGP configurations. This module is invoked using method with asNumber as one of its arguments. The first level of the BGP configuration allows to set up an AS number, with the following attributes going into various configuration operations under the context of BGP. After passing this level, there are eight BGP arguments that will perform further configurations. They are bgpArg1, bgpArg2, bgpArg3, bgpArg4, bgpArg5, bgpArg6, bgpArg7, and bgpArg8. For more details on how to use these arguments, see [Overloaded Variables]. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_bgp.html)", "properties": { "bgpArg8": { "type": "string", "description": "This is an overloaded bgp eigth argument. Usage of this argument can be found is the User Guide referenced above." }, "asNum": { "type": "string", "description": "AS number" }, "bgpArg4": { "type": "string", "description": "This is an overloaded bgp fourth argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg5": { "type": "string", "description": "This is an overloaded bgp fifth argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg6": { "type": "string", "description": "This is an overloaded bgp sixth argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg7": { "type": "string", "description": "This is an overloaded bgp seventh argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg1": { "type": "string", "description": "This is an overloaded bgp first argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg2": { "type": "string", "description": "This is an overloaded bgp second argument. Usage of this argument can be found is the User Guide referenced above." }, "bgpArg3": { "type": "string", "description": "This is an overloaded bgp third argument. Usage of this argument can be found is the User Guide referenced above." } } }, "net_static_route": { "required": [ "next_hop", "mask", "prefix" ], "type": "object", "description": "This module provides declarative management of static IP routes on network appliances (routers, switches et. al.).", "properties": { "mask": { "type": "string", "description": "Network prefix mask of the static route." }, "prefix": { "type": "string", "description": "Network prefix of the static route." }, "admin_distance": { "type": "string", "description": "Admin distance of the static route." }, "purge": { "type": "string", "description": "Purge static routes not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the static route configuration." }, "next_hop": { "type": "string", "description": "Next hop IP of the static route." }, "aggregate": { "type": "array", "description": "List of static route definitions" } } }, "cs_zone_facts": { "required": [ "name" ], "type": "object", "description": "Gathering facts from the API of a zone.", "properties": { "name": { "type": "string", "description": "Name of the zone." } } }, "nxos_nxapi": { "allOf": [ { "allOf": [ { "not": { "required": [ "http", "enable_http" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "https", "enable_https" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "sandbox", "enable_sandbox" ], "type": "object" } } ] } ], "type": "object", "description": "Configures the NXAPI feature on devices running Cisco NXOS. The NXAPI feature is absent from the configuration by default. Since this module manages the NXAPI feature it only supports the use of the C(Cli) transport.", "properties": { "http_port": { "type": "string", "description": "Default: 80\n\nConfigure the port with which the HTTP server will listen on for requests. By default, NXAPI will bind the HTTP service to the standard HTTP port 80. This argument accepts valid port values in the range of 1 to 65535." }, "http": { "type": "string", "description": "Default: True\n\nControls the operating state of the HTTP protocol as one of the underlying transports for NXAPI. By default, NXAPI will enable the HTTP transport when the feature is first configured. To disable the use of the HTTP transport, set the value of this argument to False." }, "https_port": { "type": "string", "description": "Default: 443\n\nConfigure the port with which the HTTPS server will listen on for requests. By default, NXAPI will bind the HTTPS service to the standard HTTPS port 443. This argument accepts valid port values in the range of 1 to 65535." }, "enable_sandbox": { "type": "string", "description": "The NXAPI feature provides a web base UI for developers for entering commands. This feature is initially disabled when the NXAPI feature is configured for the first time. When the C(sandbox) argument is set to True, the developer sandbox URL will accept requests and when the value is set to False, the sandbox URL is unavailable. This is supported on NX-OS 7K series." }, "sandbox": { "type": "string", "description": "The NXAPI feature provides a web base UI for developers for entering commands. This feature is initially disabled when the NXAPI feature is configured for the first time. When the C(sandbox) argument is set to True, the developer sandbox URL will accept requests and when the value is set to False, the sandbox URL is unavailable. This is supported on NX-OS 7K series." }, "enable_https": { "type": "string", "description": "Controls the operating state of the HTTPS protocol as one of the underlying transports for NXAPI. By default, NXAPI will disable the HTTPS transport when the feature is first configured. To enable the use of the HTTPS transport, set the value of this argument to True." }, "state": { "type": "string", "description": "Default: present\n\nThe C(state) argument controls whether or not the NXAPI feature is configured on the remote device. When the value is C(present) the NXAPI feature configuration is present in the device running-config. When the values is C(absent) the feature configuration is removed from the running-config." }, "https": { "type": "string", "description": "Controls the operating state of the HTTPS protocol as one of the underlying transports for NXAPI. By default, NXAPI will disable the HTTPS transport when the feature is first configured. To enable the use of the HTTPS transport, set the value of this argument to True." }, "enable_http": { "type": "string", "description": "Default: True\n\nControls the operating state of the HTTP protocol as one of the underlying transports for NXAPI. By default, NXAPI will enable the HTTP transport when the feature is first configured. To disable the use of the HTTP transport, set the value of this argument to False." } } }, "fortios_ipv4_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "service", "services" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "policy_action", "action" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides management of firewall IPv4 policies on FortiOS devices.", "properties": { "comment": { "type": "string", "description": "free text to describe policy." }, "application_list": { "type": "string", "description": "Specifies Application Control name." }, "service_negate": { "type": "string", "description": "Negate policy service(s) defined in service value." }, "ips_sensor": { "type": "string", "description": "Specifies IPS Sensor profile name." }, "id": { "type": "string", "description": "Policy ID. Warning: policy ID number is different than Policy sequence number. The policy ID is the number assigned at policy creation. The sequence number represents the order in which the Fortigate will evaluate the rule for policy enforcement, and also the order in which rules are listed in the GUI and CLI. These two numbers do not necessarily correlate: this module is based off policy ID. TIP: policy ID can be viewed in the GUI by adding 'ID' to the display columns" }, "fixedport": { "type": "string", "description": "Use fixed port for nat." }, "src_addr": { "type": "string", "description": "Specifies source address (or group) object name(s). Required when I(state=present)." }, "service": { "type": "string", "description": "Specifies policy service(s), could be a list (ex: ['MAIL','DNS']). Required when I(state=present)." }, "poolname": { "type": "string", "description": "Specifies NAT pool name." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies if policy I(id) need to be added or deleted." }, "nat": { "type": "string", "description": "Enable or disable Nat." }, "src_addr_negate": { "type": "string", "description": "Negate source address param." }, "schedule": { "type": "string", "description": "Default: always\n\ndefines policy schedule." }, "src_intf": { "type": "string", "description": "Default: any\n\nSpecifies source interface name(s)." }, "dst_addr_negate": { "type": "string", "description": "Negate destination address param." }, "services": { "type": "string", "description": "Specifies policy service(s), could be a list (ex: ['MAIL','DNS']). Required when I(state=present)." }, "webfilter_profile": { "type": "string", "description": "Specifies Webfilter profile name." }, "logtraffic_start": { "type": "string", "description": "Logs beginning of session as well." }, "policy_action": { "type": "string", "description": "Specifies accept or deny action policy. Required when I(state=present)." }, "dst_intf": { "type": "string", "description": "Default: any\n\nSpecifies destination interface name(s)." }, "av_profile": { "type": "string", "description": "Specifies Antivirus profile name." }, "action": { "type": "string", "description": "Specifies accept or deny action policy. Required when I(state=present)." }, "dst_addr": { "type": "string", "description": "Specifies destination address (or group) object name(s). Required when I(state=present)." }, "logtraffic": { "type": "string", "description": "Default: utm\n\nLogs sessions that matched policy." } } }, "cs_zone": { "required": [ "name" ], "type": "object", "description": "Create, update and remove zones.", "properties": { "internal_dns1": { "type": "string", "description": "First internal DNS for the zone.\nIf not set C(dns1) will be used on C(state=present)." }, "domain": { "type": "string", "description": "Domain the zone is related to.\nZone is a public zone if not set." }, "name": { "type": "string", "description": "Name of the zone." }, "dns2": { "type": "string", "description": "Second DNS for the zone." }, "dns1": { "type": "string", "description": "First DNS for the zone.\nRequired if C(state=present)" }, "internal_dns2": { "type": "string", "description": "Second internal DNS for the zone." }, "id": { "type": "string", "description": "uuid of the existing zone." }, "guest_cidr_address": { "type": "string", "description": "Guest CIDR address for the zone." }, "state": { "type": "string", "description": "Default: present\n\nState of the zone." }, "dhcp_provider": { "type": "string", "description": "DHCP provider for the Zone." }, "network_domain": { "type": "string", "description": "Network domain for the zone." }, "dns2_ipv6": { "type": "string", "description": "Second DNS for IPv6 for the zone." }, "network_type": { "type": "string", "description": "Default: basic\n\nNetwork type of the zone." }, "dns1_ipv6": { "type": "string", "description": "First DNS for IPv6 for the zone." } } }, "win_whoami": { "type": "object", "description": "Designed to return the same information as the C(whoami /all) command.\nAlso includes information missing from C(whoami) such as logon metadata like logon rights, id, type.", "properties": {} }, "aci_switch_policy_vpc_protection_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "vpc_domain_policy", "vpc_domain_policy_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "protection_group", "name", "protection_group_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "protection_group" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "protection_group_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "protection_group_id", "id" ], "type": "object" } }, { "oneOf": [ { "required": [ "protection_group_id" ], "type": "object" }, { "required": [ "id" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage switch policy explicit vPC protection groups on Cisco ACI fabrics.", "properties": { "protection_group_name": { "type": "string", "description": "The name of the Explicit vPC Protection Group." }, "name": { "type": "string", "description": "The name of the Explicit vPC Protection Group." }, "switch_2_id": { "type": "string", "description": "The ID of the Second Leaf Switch for the Explicit vPC Protection Group." }, "switch_1_id": { "type": "string", "description": "The ID of the first Leaf Switch for the Explicit vPC Protection Group." }, "vpc_domain_policy": { "type": "string", "description": "The vPC domain policy to be associated with the Explicit vPC Protection Group." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "vpc_domain_policy_name": { "type": "string", "description": "The vPC domain policy to be associated with the Explicit vPC Protection Group." }, "protection_group": { "type": "string", "description": "The name of the Explicit vPC Protection Group." }, "protection_group_id": { "type": "string", "description": "The Explicit vPC Protection Group ID." }, "id": { "type": "string", "description": "The Explicit vPC Protection Group ID." } } }, "azure_rm_loadbalancer": { "allOf": [ { "allOf": [ { "not": { "required": [ "public_ip_address_name", "public_ip_address", "public_ip_name", "public_ip" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and delete Azure load balancers", "properties": { "probe_port": { "type": "string", "description": "(deprecated) The port that the health probe will use.\nThis option has been deprecated, and will be removed in 2.9. Use I(probes) instead." }, "load_balancing_rules": { "type": "string", "description": "Object collection representing the load balancing rules Gets the provisioning." }, "resource_group": { "type": "string", "description": "Name of a resource group where the load balancer exists or will be created." }, "natpool_protocol": { "type": "string", "description": "(deprecated) The protocol for the NAT pool.\nThis option has been deprecated, and will be removed in 2.9. Use I(inbound_nat_pools) instead." }, "public_ip": { "type": "string", "description": "(deprecated) Name of an existing public IP address object to associate with the security group.\nThis option has been deprecated, and will be removed in 2.9. Use I(frontend_ip_configurations) instead." }, "public_ip_name": { "type": "string", "description": "(deprecated) Name of an existing public IP address object to associate with the security group.\nThis option has been deprecated, and will be removed in 2.9. Use I(frontend_ip_configurations) instead." }, "load_distribution": { "type": "string", "description": "(deprecated) The type of load distribution that the load balancer will employ.\nThis option has been deprecated, and will be removed in 2.9. Use I(load_balancing_rules) instead." }, "backend_port": { "type": "string", "description": "(deprecated) Backend port that will be exposed for the load balancer.\nThis option has been deprecated, and will be removed in 2.9. Use I(load_balancing_rules) instead." }, "public_ip_address_name": { "type": "string", "description": "(deprecated) Name of an existing public IP address object to associate with the security group.\nThis option has been deprecated, and will be removed in 2.9. Use I(frontend_ip_configurations) instead." }, "probe_fail_count": { "type": "string", "description": "Default: 3\n\n(deprecated) The amount of probe failures for the load balancer to make a health determination.\nThis option has been deprecated, and will be removed in 2.9. Use I(probes) instead." }, "protocol": { "type": "string", "description": "(deprecated) The protocol (TCP or UDP) that the load balancer will use.\nThis option has been deprecated, and will be removed in 2.9. Use I(load_balancing_rules) instead." }, "frontend_ip_configurations": { "type": "array", "description": "List of frontend IPs to be used" }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the load balancer. Use C(present) to create/update a load balancer, or C(absent) to delete one." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "public_ip_address": { "type": "string", "description": "(deprecated) Name of an existing public IP address object to associate with the security group.\nThis option has been deprecated, and will be removed in 2.9. Use I(frontend_ip_configurations) instead." }, "inbound_nat_pools": { "type": "string", "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer.\nInbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range.\nDefining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules.\nInbound NAT pools are referenced from virtual machine scale sets.\nNICs that are associated with individual virtual machines cannot reference an inbound NAT pool.\nThey have to reference individual inbound NAT rules." }, "idle_timeout": { "type": "string", "description": "Default: 4\n\n(deprecated) Timeout for TCP idle connection in minutes.\nThis option has been deprecated, and will be removed in 2.9. Use I(load_balancing_rules) instead." }, "probe_interval": { "type": "string", "description": "Default: 15\n\n(deprecated) Time (in seconds) between endpoint health probes.\nThis option has been deprecated, and will be removed in 2.9. Use I(probes) instead." }, "probe_protocol": { "type": "string", "description": "(deprecated) The protocol to use for the health probe.\nThis option has been deprecated, and will be removed in 2.9. Use I(probes) instead." }, "frontend_port": { "type": "string", "description": "(deprecated) Frontend port that will be exposed for the load balancer.\nThis option has been deprecated, and will be removed in 2.9. Use I(load_balancing_rules) instead." }, "probes": { "type": "array", "description": "List of probe definitions used to check endpoint health." }, "natpool_frontend_port_end": { "type": "string", "description": "(deprecated) End of the port range for a NAT pool.\nThis option has been deprecated, and will be removed in 2.9. Use I(inbound_nat_pools) instead." }, "natpool_backend_port": { "type": "string", "description": "(deprecated) Backend port used by the NAT pool.\nThis option has been deprecated, and will be removed in 2.9. Use I(inbound_nat_pools) instead." }, "name": { "type": "string", "description": "Name of the load balancer." }, "backend_address_pools": { "type": "array", "description": "List of backend address pools" }, "natpool_frontend_port_start": { "type": "string", "description": "(deprecated) Start of the port range for a NAT pool.\nThis option has been deprecated, and will be removed in 2.9. Use I(inbound_nat_pools) instead." }, "probe_request_path": { "type": "string", "description": "(deprecated) The URL that an HTTP probe will use (only relevant if probe_protocol is set to Http).\nThis option has been deprecated, and will be removed in 2.9. Use I(probes) instead." } } }, "imgadm": { "required": [ "state" ], "type": "object", "description": "Manage SmartOS virtual machine images through imgadm(1M)", "properties": { "force": { "type": "string", "description": "Force a given operation (where supported by imgadm(1M))." }, "uuid": { "type": "string", "description": "Image UUID. Can either be a full UUID or C(*) for all images." }, "source": { "type": "string", "description": "URI for the image source." }, "state": { "type": "string", "description": "State the object operated on should be in. C(imported) is an alias for for C(present) and C(deleted) for C(absent). When set to C(vacuumed) and C(uuid) to C(*), it will remove all unused images." }, "type": { "type": "string", "description": "Default: imgapi\n\nType for image sources." }, "pool": { "type": "string", "description": "Default: zones\n\nzpool to import to or delete images from." } } }, "ce_mtu": { "type": "object", "description": "Manages MTU settings on HUAWEI CloudEngine switches.", "properties": { "interface": { "type": "string", "description": "Full name of interface, i.e. 40GE1/0/22." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "jumbo_max": { "type": "string", "description": "Maximum frame size. The default value is 9216. The value is an integer and expressed in bytes. The value range is 1536 to 12224 for the CE12800 and 1536 to 12288 for ToR switches." }, "jumbo_min": { "type": "string", "description": "Non-jumbo frame size threshod. The default value is 1518. The value is an integer that ranges from 1518 to jumbo_max, in bytes." }, "mtu": { "type": "string", "description": "MTU for a specific interface. The value is an integer ranging from 46 to 9600, in bytes." } } }, "ldap_entry": { "required": [ "dn" ], "type": "object", "description": "Add or remove LDAP entries. This module only asserts the existence or non-existence of an LDAP entry, not its attributes. To assert the attribute values of an entry, see M(ldap_attr).", "properties": { "dn": { "type": "string", "description": "The DN of the entry to add or remove." }, "objectClass": { "type": "string", "description": "If I(state=present), value or list of values to use when creating the entry. It can either be a string or an actual list of strings." }, "start_tls": { "type": "string", "description": "Default: no\n\nIf true, we'll use the START_TLS LDAP extension." }, "bind_dn": { "type": "string", "description": "A DN to bind with. If this is omitted, we'll try a SASL bind with the EXTERNAL mechanism. If this is blank, we'll use an anonymous bind." }, "server_uri": { "type": "string", "description": "Default: ldapi:///\n\nA URI to the LDAP server. The default value lets the underlying LDAP client library look for a UNIX domain socket in its default location." }, "state": { "type": "string", "description": "Default: present\n\nThe target state of the entry." }, "params": { "type": "array", "description": "List of options which allows to overwrite any of the task or the I(attributes) options. To remove an option, set the value of the option to C(null)." }, "bind_pw": { "type": "string", "description": "The password to use with I(bind_dn)." }, "attributes": { "type": "string", "description": "If I(state=present), attributes necessary to create an entry. Existing entries are never modified. To assert specific attribute values on an existing entry, use M(ldap_attr) module instead." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on sites using self-signed certificates." } } }, "ovirt_quotas": { "required": [ "data_center", "name" ], "type": "object", "description": "Module to manage datacenter quotas in oVirt/RHV", "properties": { "description": { "type": "string", "description": "Description of the quota to manage." }, "cluster_grace": { "type": "string", "description": "Cluster grace(hard limit) defined in percentage (1-100)." }, "data_center": { "type": "string", "description": "Name of the datacenter where quota should be managed." }, "state": { "type": "string", "description": "Default: present\n\nShould the quota be present/absent." }, "storage_grace": { "type": "string", "description": "Storage grace(hard limit) defined in percentage (1-100)." }, "storage_threshold": { "type": "string", "description": "Storage threshold(soft limit) defined in percentage (0-100)." }, "cluster_threshold": { "type": "string", "description": "Cluster threshold(soft limit) defined in percentage (0-100)." }, "clusters": { "type": "array", "description": "List of dictionary of cluster limits, which is valid to specific cluster.\nIf cluster isn't spefied it's valid to all clusters in system:\nC(cluster) - Name of the cluster.\nC(memory) - Memory limit (in GiB).\nC(cpu) - CPU limit." }, "storages": { "type": "array", "description": "List of dictionary of storage limits, which is valid to specific storage.\nIf storage isn't spefied it's valid to all storages in system:\nC(storage) - Name of the storage.\nC(size) - Size limit (in GiB)." }, "name": { "type": "string", "description": "Name of the quota to manage." } } }, "ce_interface": { "required": [ "state" ], "type": "object", "description": "Manages physical attributes of interfaces on HUAWEI CloudEngine switches.", "properties": { "description": { "type": "string", "description": "Specifies an interface description. The value is a string of 1 to 242 case-sensitive characters, spaces supported but question marks (?) not supported." }, "interface_type": { "type": "string", "description": "Interface type to be configured from the device." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "admin_state": { "type": "string", "description": "Specifies the interface management status. The value is an enumerated type. up, An interface is in the administrative Up state. down, An interface is in the administrative Down state." }, "mode": { "type": "string", "description": "Manage Layer 2 or Layer 3 state of the interface." }, "interface": { "type": "string", "description": "Full name of interface, i.e. 40GE1/0/10, Tunnel1." }, "l2sub": { "type": "string", "description": "Specifies whether the interface is a Layer 2 sub-interface." } } }, "onyx_ospf": { "required": [ "ospf" ], "type": "object", "description": "This module provides declarative management and configuration of OSPF protocol on Mellanox ONYX network devices.", "properties": { "router_id": { "type": "string", "description": "OSPF router ID. Required if I(state=present)." }, "interfaces": { "type": "array", "description": "List of interfaces and areas. Required if I(state=present)." }, "ospf": { "type": "string", "description": "OSPF instance number 1-65535" }, "state": { "type": "string", "description": "Default: present\n\nOSPF state." } } }, "aci_domain": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain", "domain_name", "domain_profile", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "dscp", "target" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "domain_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Manage physical, virtual, bridged, routed or FC domain profiles on Cisco ACI fabrics.", "properties": { "domain_profile": { "type": "string", "description": "Name of the physical, virtual, bridged routed or FC domain profile." }, "domain": { "type": "string", "description": "Name of the physical, virtual, bridged routed or FC domain profile." }, "target": { "type": "string", "description": "Default: unspecified\n\nThe target Differentiated Service (DSCP) value." }, "domain_name": { "type": "string", "description": "Name of the physical, virtual, bridged routed or FC domain profile." }, "dscp": { "type": "string", "description": "Default: unspecified\n\nThe target Differentiated Service (DSCP) value." }, "domain_type": { "type": "string", "description": "The type of domain profile.\nC(fc): The FC domain profile is a policy pertaining to single FC Management domain\nC(l2dom): The external bridged domain profile is a policy for managing L2 bridged infrastructure bridged outside the fabric.\nC(l3dom): The external routed domain profile is a policy for managing L3 routed infrastructure outside the fabric.\nC(phys): The physical domain profile stores the physical resources and encap resources that should be used for EPGs associated with this domain.\nC(vmm): The VMM domain profile is a policy for grouping VM controllers with similar networking policy requirements." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "vswitch": { "type": "string", "description": "Default: default\n\nThe virtual switch to use for vmm domains." }, "encap_mode": { "type": "string", "description": "The layer 2 encapsulation protocol to use with the virtual switch." }, "multicast_address": { "type": "string", "description": "The muticast IP address to use for the virtual switch." }, "type": { "type": "string", "description": "The type of domain profile.\nC(fc): The FC domain profile is a policy pertaining to single FC Management domain\nC(l2dom): The external bridged domain profile is a policy for managing L2 bridged infrastructure bridged outside the fabric.\nC(l3dom): The external routed domain profile is a policy for managing L3 routed infrastructure outside the fabric.\nC(phys): The physical domain profile stores the physical resources and encap resources that should be used for EPGs associated with this domain.\nC(vmm): The VMM domain profile is a policy for grouping VM controllers with similar networking policy requirements." }, "vm_provider": { "type": "string", "description": "The VM platform for VMM Domains.\nSupport for Kubernetes was added in ACI v3.0.\nSupport for CloudFoundry, OpenShift and Red Hat was added in ACI v3.1." }, "name": { "type": "string", "description": "Name of the physical, virtual, bridged routed or FC domain profile." } } }, "aci_ap": { "allOf": [ { "allOf": [ { "not": { "required": [ "ap", "app_profile", "app_profile_name", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "ap" ], "type": "object" }, { "required": [ "app_profile" ], "type": "object" }, { "required": [ "app_profile_name" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage top level Application Profile (AP) objects on Cisco ACI fabrics", "properties": { "name": { "type": "string", "description": "The name of the application network profile." }, "descr": { "type": "string", "description": "Description for the AP." }, "app_profile": { "type": "string", "description": "The name of the application network profile." }, "tenant_name": { "type": "string", "description": "The name of an existing tenant." }, "ap": { "type": "string", "description": "The name of the application network profile." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "app_profile_name": { "type": "string", "description": "The name of the application network profile." }, "tenant": { "type": "string", "description": "The name of an existing tenant." }, "description": { "type": "string", "description": "Description for the AP." } } }, "digital_ocean_sshkey_facts": { "required": [ "oauth_token" ], "type": "object", "description": "Fetch DigitalOcean SSH keys facts.", "properties": { "oauth_token": { "type": "string", "description": "DigitalOcean API token." }, "timeout": { "type": "string", "description": "Default: 30\n\nThe timeout in seconds used for polling DigitalOcean's API." } } }, "vmware_guest_facts": { "required": [ "datacenter" ], "type": "object", "description": "Gather facts about a single VM on a VMware ESX cluster", "properties": { "datacenter": { "type": "string", "description": "Destination datacenter for the deploy operation" }, "folder": { "type": "string", "description": "Default: /vm\n\nDestination folder, absolute or relative path to find an existing guest.\nThis is required if name is supplied.\nThe folder should include the datacenter. ESX's datacenter is ha-datacenter\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2\n folder: vm/folder2\n folder: folder2" }, "uuid": { "type": "string", "description": "UUID of the instance to manage if known, this is VMware's unique identifier.\nThis is required if name is not supplied." }, "name": { "type": "string", "description": "Name of the VM to work with\nThis is required if UUID is not supplied." }, "name_match": { "type": "string", "description": "Default: first\n\nIf multiple VMs matching the name, use the first or last found" } } }, "cl_bridge": { "required": [ "name", "ports" ], "type": "object", "description": "Configures a bridge interface on Cumulus Linux To configure a bond port use the cl_bond module. To configure any other type of interface use the cl_interface module. Follow the guidelines for bridging found in the Cumulus User Guide at U(http://docs.cumulusnetworks.com)", "properties": { "addr_method": { "type": "string", "description": "Configures the port to use DHCP. To enable this feature use the option I(dhcp)." }, "name": { "type": "string", "description": "Name of the interface." }, "vlan_aware": { "type": "string", "description": "Enables vlan-aware mode." }, "mstpctl_treeprio": { "type": "string", "description": "Set spanning tree root priority. Must be a multiple of 4096." }, "virtual_mac": { "type": "string", "description": "Define Ethernet mac associated with Cumulus Linux VRR feature." }, "mtu": { "type": "string", "description": "Set MTU. Configure Jumbo Frame by setting MTU to I(9000)." }, "pvid": { "type": "string", "description": "In vlan-aware mode, defines vlan that is the untagged vlan." }, "ipv4": { "type": "array", "description": "List of IPv4 addresses to configure on the interface. In the form I(X.X.X.X/YY)." }, "stp": { "type": "string", "description": "Default: yes\n\nEnables spanning tree Protocol. As of Cumulus Linux 2.5 the default bridging mode, only per vlan RSTP or 802.1d is supported. For the vlan aware mode, only common instance STP is supported" }, "virtual_ip": { "type": "string", "description": "Define IPv4 virtual IP used by the Cumulus Linux VRR feature." }, "ipv6": { "type": "array", "description": "List of IPv6 addresses to configure on the interface. In the form I(X:X:X::X/YYY)." }, "vids": { "type": "string", "description": "In vlan-aware mode, lists VLANs defined under the interface." }, "alias_name": { "type": "string", "description": "Description of the port." }, "ports": { "type": "array", "description": "List of bridge members." }, "location": { "type": "string", "description": "Default: ['/etc/network/interfaces.d']\n\nInterface directory location." } } }, "aci_tenant_span_src_group_to_dst_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind SPAN source groups to associated destinaton groups on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "The description for Span source group to destination group binding." }, "descr": { "type": "string", "description": "The description for Span source group to destination group binding." }, "tenant_name": { "type": "string", "description": "The name of the Tenant." }, "src_group": { "type": "string", "description": "The name of the Span source group." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "dst_group": { "type": "string", "description": "The Span destination group to associate with the source group." }, "tenant": { "type": "string", "description": "The name of the Tenant." } } }, "avi_applicationpersistenceprofile": { "required": [ "persistence_type", "name" ], "type": "object", "description": "This module is used to configure ApplicationPersistenceProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the persistence profile." }, "app_cookie_persistence_profile": { "type": "string", "description": "Specifies the application cookie persistence profile parameters." }, "persistence_type": { "type": "string", "description": "Method used to persist clients to the same server for a duration of time or a session.\nEnum options - PERSISTENCE_TYPE_CLIENT_IP_ADDRESS, PERSISTENCE_TYPE_HTTP_COOKIE, PERSISTENCE_TYPE_TLS, PERSISTENCE_TYPE_CLIENT_IPV6_ADDRESS,\nPERSISTENCE_TYPE_CUSTOM_HTTP_HEADER, PERSISTENCE_TYPE_APP_COOKIE, PERSISTENCE_TYPE_GSLB_SITE.\nDefault value when not specified in API or module is interpreted by Avi Controller as PERSISTENCE_TYPE_CLIENT_IP_ADDRESS." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "is_federated": { "description": "This field describes the object's replication scope.\nIf the field is set to false, then the object is visible within the controller-cluster and its associated service-engines.\nIf the field is set to true, then the object is replicated across the federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "server_hm_down_recovery": { "type": "string", "description": "Specifies behavior when a persistent server has been marked down by a health monitor.\nEnum options - HM_DOWN_PICK_NEW_SERVER, HM_DOWN_ABORT_CONNECTION, HM_DOWN_CONTINUE_PERSISTENT_SERVER.\nDefault value when not specified in API or module is interpreted by Avi Controller as HM_DOWN_PICK_NEW_SERVER." }, "http_cookie_persistence_profile": { "type": "string", "description": "Specifies the http cookie persistence profile parameters." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "ip_persistence_profile": { "type": "string", "description": "Specifies the client ip persistence profile parameters." }, "hdr_persistence_profile": { "type": "string", "description": "Specifies the custom http header persistence profile parameters." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "A user-friendly name for the persistence profile." } } }, "rax_cdb_database": { "type": "object", "description": "create / delete a database in the Cloud Databases.", "properties": { "cdb_id": { "type": "string", "description": "The databases server UUID" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "character_set": { "type": "string", "description": "Default: utf8\n\nSet of symbols and encodings" }, "name": { "type": "string", "description": "Name to give to the database" }, "collate": { "type": "string", "description": "Default: utf8_general_ci\n\nSet of rules for comparing characters in a character set" } } }, "nxos_ping": { "required": [ "dest" ], "type": "object", "description": "Tests reachability using ping from switch to a remote destination.", "properties": { "dest": { "type": "string", "description": "IP address or hostname (resolvable by switch) of remote node." }, "count": { "type": "string", "description": "Default: 2\n\nNumber of packets to send." }, "vrf": { "type": "string", "description": "Outgoing VRF." }, "source": { "type": "string", "description": "Source IP Address." } } }, "aci_bd_subnet": { "allOf": [ { "allOf": [ { "not": { "required": [ "bd", "bd_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mask", "subnet_mask" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "gateway", "gateway_ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subnet_name", "name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage Subnets on Cisco ACI fabrics.", "properties": { "bd": { "type": "string", "description": "The name of the Bridge Domain." }, "gateway_ip": { "type": "string", "description": "The IPv4 or IPv6 gateway address for the Subnet." }, "description": { "type": "string", "description": "The description for the Subnet." }, "descr": { "type": "string", "description": "The description for the Subnet." }, "tenant_name": { "type": "string", "description": "The name of the Tenant." }, "nd_prefix_policy": { "type": "string", "description": "The IPv6 Neighbor Discovery Prefix Policy to associate with the Subnet." }, "enable_vip": { "description": "Default: no\n\nDetermines if the Subnet should be treated as a VIP; used when the BD is extended to multiple sites.\nThe APIC defaults new Subnets to C(no).", "$ref": "#/definitions/ansible_truth" }, "mask": { "type": "string", "description": "The subnet mask for the Subnet.\nThis is the number assocated with CIDR notation." }, "preferred": { "description": "Default: no\n\nDetermines if the Subnet is preferred over all available Subnets. Only one Subnet per Address Family (IPv4/IPv6). can be preferred in the Bridge Domain.\nThe APIC defaults new Subnets to C(no).", "$ref": "#/definitions/ansible_truth" }, "subnet_control": { "type": "string", "description": "Default: nd_ra\n\nDetermines the Subnet's Control State.\nThe C(querier_ip) option is used to treat the gateway_ip as an IGMP querier source IP.\nThe C(nd_ra) option is used to treate the gateway_ip address as a Neighbor Discovery Router Advertisement Prefix.\nThe C(no_gw) option is used to remove default gateway functionality from the gateway address.\nThe APIC defaults new Subnets to C(nd_ra)." }, "subnet_mask": { "type": "string", "description": "The subnet mask for the Subnet.\nThis is the number assocated with CIDR notation." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "route_profile": { "type": "string", "description": "The Route Profile to the associate with the Subnet." }, "route_profile_l3_out": { "type": "string", "description": "The L3 Out that contains the assocated Route Profile." }, "bd_name": { "type": "string", "description": "The name of the Bridge Domain." }, "scope": { "type": "string", "description": "Default: private\n\nDetermines the scope of the Subnet.\nThe C(private) option only allows communication with hosts in the same VRF.\nThe C(public) option allows the Subnet to be advertised outside of the ACI Fabric, and allows communication with hosts in other VRFs.\nThe shared option limits communication to hosts in either the same VRF or the shared VRF.\nThe value is a list of options, C(private) and C(public) are mutually exclusive, but both can be used with C(shared).\nThe APIC defaults new Subnets to C(private)." }, "name": { "type": "string", "description": "The name of the Subnet." }, "gateway": { "type": "string", "description": "The IPv4 or IPv6 gateway address for the Subnet." }, "tenant": { "type": "string", "description": "The name of the Tenant." }, "subnet_name": { "type": "string", "description": "The name of the Subnet." } } }, "profitbricks_volume_attachments": { "required": [ "datacenter", "server", "volume" ], "type": "object", "description": "Allows you to attach or detach a volume from a ProfitBricks server. This module has a dependency on profitbricks >= 1.0.0", "properties": { "datacenter": { "type": "string", "description": "The datacenter in which to operate." }, "subscription_user": { "type": "string", "description": "The ProfitBricks username. Overrides the PB_SUBSCRIPTION_ID environment variable." }, "server": { "type": "string", "description": "The name of the server you wish to detach or attach the volume." }, "volume": { "type": "string", "description": "The volume name or ID." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "subscription_password": { "type": "string", "description": "THe ProfitBricks password. Overrides the PB_PASSWORD environment variable." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the operation to complete before returning" } } }, "znode": { "required": [ "hosts", "name" ], "type": "object", "description": "Create, delete, retrieve, and update znodes using ZooKeeper.", "properties": { "name": { "type": "string", "description": "The path of the znode." }, "recursive": { "type": "string", "description": "Recursively delete node and all its children." }, "value": { "type": "string", "description": "Default: None\n\nThe value assigned to the znode." }, "state": { "type": "string", "description": "Default: None\n\nThe state to enforce. Mutually exclusive with op." }, "hosts": { "type": "string", "description": "A list of ZooKeeper servers (format '[server]:[port]')." }, "timeout": { "type": "string", "description": "Default: 300\n\nThe amount of time to wait for a node to appear." }, "op": { "type": "string", "description": "Default: None\n\nAn operation to perform. Mutually exclusive with state." } } }, "sendgrid": { "required": [ "from_address", "subject", "to_addresses" ], "type": "object", "description": "Sends an email with a SendGrid account through their API, not through the SMTP service.", "properties": { "username": { "type": "string", "description": "username for logging into the SendGrid account.\nSince 2.2 it is only required if api_key is not supplied." }, "password": { "type": "string", "description": "password that corresponds to the username\nSince 2.2 it is only required if api_key is not supplied." }, "from_name": { "type": "string", "description": "the name you want to appear in the from field, i.e 'John Doe'" }, "from_address": { "type": "string", "description": "the address in the \"from\" field for the email" }, "cc": { "type": "string", "description": "a list of email addresses to cc" }, "bcc": { "type": "string", "description": "a list of email addresses to bcc" }, "attachments": { "type": "string", "description": "a list of relative or explicit paths of files you want to attach (7MB limit as per SendGrid docs)" }, "headers": { "type": "string", "description": "a dict to pass on as headers" }, "to_addresses": { "type": "string", "description": "a list with one or more recipient email addresses" }, "api_key": { "type": "string", "description": "sendgrid API key to use instead of username/password" }, "html_body": { "type": "string", "description": "whether the body is html content that should be rendered" }, "subject": { "type": "string", "description": "the desired subject for the email" } } }, "profitbricks_datacenter": { "required": [ "name" ], "type": "object", "description": "This is a simple module that supports creating or removing vDCs. A vDC is required before you can create servers. This module has a dependency on profitbricks >= 1.0.0", "properties": { "name": { "type": "string", "description": "The name of the virtual datacenter." }, "subscription_user": { "type": "string", "description": "The ProfitBricks username. Overrides the PB_SUBSCRIPTION_ID environement variable." }, "description": { "type": "string", "description": "The description of the virtual datacenter." }, "subscription_password": { "type": "string", "description": "THe ProfitBricks password. Overrides the PB_PASSWORD environement variable." }, "state": { "type": "string", "description": "Default: present\n\ncreate or terminate datacenters" }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "location": { "type": "string", "description": "Default: us/las\n\nThe datacenter location." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the datacenter to be created before returning" } } }, "nxos_igmp_interface": { "required": [ "interface" ], "type": "object", "description": "Manages IGMP interface configuration settings.", "properties": { "startup_query_interval": { "type": "string", "description": "Query interval used when the IGMP process starts up. The range is from 1 to 18000. The default is 31." }, "report_llg": { "type": "string", "description": "Configures report-link-local-groups. Enables sending reports for groups in 224.0.0.0/24. Reports are always sent for nonlink local groups. By default, reports are not sent for link local groups." }, "last_member_qrt": { "type": "string", "description": "Sets the query interval waited after sending membership reports before the software deletes the group state. Values can range from 1 to 25 seconds. The default is 1 second." }, "group_timeout": { "type": "string", "description": "Sets the group membership timeout for IGMPv2. Values can range from 3 to 65,535 seconds. The default is 260 seconds." }, "robustness": { "type": "string", "description": "Sets the robustness variable. Values can range from 1 to 7. The default is 2." }, "startup_query_count": { "type": "string", "description": "Query count used when the IGMP process starts up. The range is from 1 to 10. The default is 2." }, "oif_routemap": { "type": "string", "description": "Configure a routemap for static outgoing interface (OIF)." }, "immediate_leave": { "type": "string", "description": "Enables the device to remove the group entry from the multicast routing table immediately upon receiving a leave message for the group. Use this command to minimize the leave latency of IGMPv2 group memberships on a given IGMP interface because the device does not send group-specific queries. The default is disabled." }, "oif_source": { "type": "string", "description": "Configure a source for static outgoing interface (OIF)." }, "state": { "type": "string", "description": "Default: present\n\nManages desired state of the resource." }, "version": { "type": "string", "description": "IGMP version. It can be 2 or 3." }, "oif_prefix": { "type": "string", "description": "Configure a prefix for static outgoing interface (OIF)." }, "interface": { "type": "string", "description": "The full interface name for IGMP configuration. e.g. I(Ethernet1/2)." }, "querier_timeout": { "type": "string", "description": "Sets the querier timeout that the software uses when deciding to take over as the querier. Values can range from 1 to 65535 seconds. The default is 255 seconds." }, "last_member_query_count": { "type": "string", "description": "Sets the number of times that the software sends an IGMP query in response to a host leave message. Values can range from 1 to 5. The default is 2." }, "query_interval": { "type": "string", "description": "Sets the frequency at which the software sends IGMP host query messages. Values can range from 1 to 18000 seconds. The default is 125 seconds." }, "restart": { "type": "string", "description": "Restart IGMP." }, "query_mrt": { "type": "string", "description": "Sets the response time advertised in IGMP queries. Values can range from 1 to 25 seconds. The default is 10 seconds." } } }, "vmware_guest_snapshot": { "required": [ "datacenter", "state" ], "type": "object", "description": "Create virtual machines snapshots", "properties": { "datacenter": { "type": "string", "description": "Destination datacenter for the deploy operation" }, "new_snapshot_name": { "type": "string", "description": "Value to rename the existing snapshot to" }, "uuid": { "type": "string", "description": "UUID of the instance to manage if known, this is VMware's unique identifier.\nThis is required if name is not supplied." }, "quiesce": { "description": "If set to C(true) and virtual machine is powered on, it will quiesce the file system in virtual machine.\nNote that VMWare Tools are required for this flag.\nIf virtual machine is powered off or VMware Tools are not available, then this flag is set to C(false).\nIf virtual machine does not provide capability to take quiesce snapshot, then this flag is set to C(false).", "$ref": "#/definitions/ansible_truth" }, "description": { "type": "string", "description": "Define an arbitrary description to attach to snapshot." }, "memory_dump": { "description": "If set to C(true), memory dump of virtual machine is also included in snapshot.\nNote that memory snapshots take time and resources, this will take longer time to create.\nIf virtual machine does not provide capability to take memory snapshot, then this flag is set to C(false).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nManage snapshots attached to a specific virtual machine." }, "snapshot_name": { "type": "string", "description": "Sets the snapshot name to manage.\nThis param is required only if state is not C(remove_all)" }, "name_match": { "type": "string", "description": "Default: first\n\nIf multiple VMs matching the name, use the first or last found" }, "remove_children": { "description": "If set to C(true) and state is set to C(absent), then entire snapshot subtree is set for removal.", "$ref": "#/definitions/ansible_truth" }, "new_description": { "type": "string", "description": "Value to change the description of an existing snapshot to" }, "folder": { "type": "string", "description": "Destination folder, absolute or relative path to find an existing guest.\nThis is required if name is supplied.\nThe folder should include the datacenter. ESX's datacenter is ha-datacenter\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2\n folder: vm/folder2\n folder: folder2" }, "name": { "type": "string", "description": "Name of the VM to work with\nThis is required if uuid is not supplied." } } }, "udm_dns_record": { "required": [ "type", "name", "zone" ], "type": "object", "description": "This module allows to manage dns records on a univention corporate server (UCS). It uses the python API of the UCS to create a new object or edit it.", "properties": { "data": { "type": "string", "description": "Additional data for this record, e.g. ['a': '192.0.2.1']. Required if C(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nWhether the dns record is present or not." }, "type": { "type": "string", "description": "Define the record type. C(host_record) is a A or AAAA record, C(alias) is a CNAME, C(ptr_record) is a PTR record, C(srv_record) is a SRV record and C(txt_record) is a TXT record." }, "name": { "type": "string", "description": "Name of the record, this is also the DNS record. E.g. www for www.example.com." }, "zone": { "type": "string", "description": "Corresponding DNS zone for this record, e.g. example.com." } } }, "user": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "user" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "user" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage user accounts and user attributes.", "properties": { "comment": { "type": "string", "description": "Optionally sets the description (aka I(GECOS)) of user account." }, "ssh_key_bits": { "type": "string", "description": "Default: default set by ssh-keygen\n\nOptionally specify number of bits in SSH key to create." }, "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users." }, "non_unique": { "type": "string", "description": "Default: no\n\nOptionally when used with the -u option, this option allows to change the user ID to a non-unique value." }, "force": { "type": "string", "description": "Default: no\n\nWhen used with C(state=absent), behavior is as with C(userdel --force)." }, "ssh_key_type": { "type": "string", "description": "Default: rsa\n\nOptionally specify the type of SSH key to generate. Available SSH key types will depend on implementation present on target host." }, "ssh_key_passphrase": { "type": "string", "description": "Set a passphrase for the SSH key. If no passphrase is provided, the SSH key will default to having no passphrase." }, "home": { "type": "string", "description": "Optionally set the user's home directory." }, "skeleton": { "type": "string", "description": "Optionally set a home skeleton directory. Requires createhome option!" }, "append": { "type": "string", "description": "Default: no\n\nIf C(yes), will only add groups, not set them to just the list in I(groups)." }, "uid": { "type": "string", "description": "Optionally sets the I(UID) of the user." }, "ssh_key_comment": { "type": "string", "description": "Default: ansible-generated on $HOSTNAME\n\nOptionally define the comment for the SSH key." }, "group": { "type": "string", "description": "Optionally sets the user's primary group (takes a group name)." }, "system": { "type": "string", "description": "Default: no\n\nWhen creating an account, setting this to C(yes) makes the user a system account. This setting cannot be changed on existing users." }, "state": { "type": "string", "description": "Default: present\n\nWhether the account should exist or not, taking action if the state is different from what is stated." }, "shell": { "type": "string", "description": "Optionally set the user's shell." }, "expires": { "type": "string", "description": "Default: None\n\nAn expiry time for the user in epoch, it will be ignored on platforms that do not support this. Currently supported on Linux and FreeBSD." }, "ssh_key_file": { "type": "string", "description": "Default: .ssh/id_rsa\n\nOptionally specify the SSH key filename. If this is a relative filename then it will be relative to the user's home directory." }, "user": { "type": "string", "description": "Name of the user to create, remove or modify." }, "groups": { "type": "string", "description": "Puts the user in this comma-delimited list of groups. When set to the empty string ('groups='), the user is removed from all groups except the primary group." }, "move_home": { "type": "string", "description": "Default: no\n\nIf set to C(yes) when used with C(home=), attempt to move the user's home directory to the specified directory if it isn't there already." }, "password": { "type": "string", "description": "Optionally set the user's password to this crypted value. See the user example in the github examples directory for what this looks like in a playbook. See U(http://docs.ansible.com/ansible/faq.html#how-do-i-generate-crypted-passwords-for-the-user-module) for details on various ways to generate these password values. Note on Darwin system, this value has to be cleartext. Beware of security issues." }, "seuser": { "type": "string", "description": "Optionally sets the seuser type (user_u) on selinux enabled systems." }, "name": { "type": "string", "description": "Name of the user to create, remove or modify." }, "createhome": { "type": "string", "description": "Default: yes\n\nUnless set to C(no), a home directory will be made for the user when the account is created or if the home directory does not exist." }, "remove": { "type": "string", "description": "Default: no\n\nWhen used with C(state=absent), behavior is as with C(userdel --remove)." }, "login_class": { "type": "string", "description": "Optionally sets the user's login class for FreeBSD, OpenBSD and NetBSD systems." }, "generate_ssh_key": { "type": "string", "description": "Default: no\n\nWhether to generate a SSH key for the user in question. This will B(not) overwrite an existing SSH key." } } }, "pn_vrouterif": { "required": [ "pn_vrouter_name", "state" ], "type": "object", "description": "Execute vrouter-interface-add, vrouter-interface-remove, vrouter-interface-modify command.\nYou configure interfaces to vRouter services on a fabric, cluster, standalone switch or virtual network(VNET).", "properties": { "pn_nic_enable": { "type": "string", "description": "Specify if the NIC is enabled or not" }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_exclusive": { "type": "string", "description": "Specify if the interface is exclusive to the configuration. Exclusive means that other configurations cannot use the interface. Exclusive is specified when you configure the interface as span interface and allows higher throughput through the interface." }, "pn_nic_str": { "type": "string", "description": "Specify the type of NIC. Used for vrouter-interface remove/modify." }, "pn_vrouter_name": { "type": "string", "description": "Specify the name of the vRouter interface." }, "pn_vrrp_adv_int": { "type": "string", "description": "Specify a VRRP advertisement interval in milliseconds. The range is from 30 to 40950 with a default value of 1000." }, "pn_vrrp_priority": { "type": "string", "description": "Specify the priority for the VRRP interface. This is a value between 1 (lowest) and 255 (highest)." }, "pn_alias": { "type": "string", "description": "Specify an alias for the interface." }, "pn_secondary_macs": { "type": "string", "description": "Specify a secondary MAC address for the interface." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_interface_ip": { "type": "string", "description": "Specify the IP address of the interface in x.x.x.x/n format." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to add vrouter interface, 'absent' to remove vrouter interface and 'update' to modify vrouter interface." }, "pn_vrrp_id": { "type": "string", "description": "Specify the ID for the VRRP interface. The IDs on both vRouters must be the same IS number." }, "pn_vlan": { "type": "string", "description": "Specify the VLAN identifier. This is a value between 1 and 4092." }, "pn_interface": { "type": "string", "description": "Specify if the interface is management, data or span interface." }, "pn_l3port": { "type": "string", "description": "Specify a Layer 3 port for the interface." }, "pn_vxlan": { "type": "string", "description": "Specify the VXLAN identifier. This is a value between 1 and 16777215." }, "pn_cliswitch": { "type": "string", "description": "Target switch to run the cli on." }, "pn_assignment": { "type": "string", "description": "Specify the DHCP method for IP address assignment." } } }, "gcpubsub": { "required": [ "topic" ], "type": "object", "description": "Create and Delete Topics/Subscriptions, Publish and pull messages on PubSub. See U(https://cloud.google.com/pubsub/docs) for an overview.", "properties": { "pull": { "type": "string", "description": "Subfield of subscription. Not required. If specified, messages will be retrieved from topic via the provided subscription name. max_messages (int; default None; max number of messages to pull), message_ack (bool; default False; acknowledge the message) and return_immediately (bool; default True, don't wait for messages to appear). If the messages are acknowledged, changed is set to True, otherwise, changed is False." }, "ack_deadline": { "type": "string", "description": "Subfield of subscription. Not required. Default deadline for subscriptions to ACK the message before it is resent. See examples." }, "name": { "type": "string", "description": "Subfield of subscription. Required if subscription is specified. See examples." }, "publish": { "type": "array", "description": "List of dictionaries describing messages and attributes to be published. Dictionary is in message(str):attributes(dict) format. Only message is required." }, "topic": { "type": "string", "description": "GCP pubsub topic name.\nOnly the name, not the full path, is required." }, "state": { "type": "string", "description": "Default: present\n\nState of the topic or queue.\nApplies to the most granular resource.\nIf subscription isspecified we remove it.\nIf only topic is specified, that is what is removed.\nNOTE - A topic can be removed without first removing the subscription." }, "push_endpoint": { "type": "string", "description": "Subfield of subscription. Not required. If specified, message will be sent to an endpoint. See U(https://cloud.google.com/pubsub/docs/advanced#push_endpoints) for more information." }, "subscription": { "type": "object", "description": "Dictionary containing a subscripton name associated with a topic (required), along with optional ack_deadline, push_endpoint and pull. For pulling from a subscription, message_ack (bool), max_messages (int) and return_immediate are available as subfields. See subfields name, push_endpoint and ack_deadline for more information." } } }, "ipadm_ifprop": { "allOf": [ { "allOf": [ { "not": { "required": [ "interface", "nic" ], "type": "object" } }, { "oneOf": [ { "required": [ "interface" ], "type": "object" }, { "required": [ "nic" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "property", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "property" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Modify IP interface properties on Solaris/illumos systems.", "properties": { "temporary": { "type": "string", "description": "Specifies that the property value is temporary. Temporary property values do not persist across reboots." }, "name": { "type": "string", "description": "Specifies the name of the property we want to manage." }, "nic": { "type": "string", "description": "Specifies the IP interface we want to manage." }, "value": { "type": "string", "description": "Specifies the value we want to set for the property." }, "state": { "type": "string", "description": "Default: present\n\nSet or reset the property value." }, "interface": { "type": "string", "description": "Specifies the IP interface we want to manage." }, "protocol": { "type": "string", "description": "Specifies the procotol for which we want to manage properties." }, "property": { "type": "string", "description": "Specifies the name of the property we want to manage." } } }, "vr_startup_script": { "allOf": [ { "allOf": [ { "not": { "required": [ "script_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and remove startup scripts.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the script." }, "script": { "type": "string", "description": "The script source code.\nRequired if (state=present)." }, "type": { "type": "string", "description": "Default: boot\n\nThe script type, can not be changed once created." }, "name": { "type": "string", "description": "The script name." }, "script_type": { "type": "string", "description": "Default: boot\n\nThe script type, can not be changed once created." } } }, "rax_files": { "required": [ "container" ], "type": "object", "description": "Manipulate Rackspace Cloud Files Containers", "properties": { "web_index": { "type": "string", "description": "Sets an object to be presented as the HTTP index page when accessed by the CDN URL" }, "container": { "type": "string", "description": "The container to use for container or metadata operations." }, "region": { "type": "string", "description": "Default: DFW\n\nRegion to create an instance in" }, "private": { "type": "string", "description": "Used to set a container as private, removing it from the CDN. B(Warning!) Private containers, if previously made public, can have live objects available until the TTL on cached objects expires" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "clear_meta": { "type": "string", "description": "Default: no\n\nOptionally clear existing metadata when applying metadata to existing containers. Selecting this option is only appropriate when setting type=meta" }, "meta": { "type": "string", "description": "A hash of items to set as metadata values on a container" }, "ttl": { "type": "string", "description": "In seconds, set a container-wide TTL for all objects cached on CDN edge nodes. Setting a TTL is only appropriate for containers that are public" }, "web_error": { "type": "string", "description": "Sets an object to be presented as the HTTP error page when accessed by the CDN URL" }, "type": { "type": "string", "description": "Default: file\n\nType of object to do work on, i.e. metadata object or a container object" }, "public": { "type": "string", "description": "Used to set a container as public, available via the Cloud Files CDN" } } }, "docker": { "required": [ "image" ], "type": "object", "description": "This is the original Ansible module for managing the Docker container life cycle.\nNOTE - Additional and newer modules are available. For the latest on orchestrating containers with Ansible visit our Getting Started with Docker Guide at U(https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/guide_docker.rst).", "properties": { "publish_all_ports": { "description": "Default: no\n\nPublish all exposed ports to the host interfaces.", "$ref": "#/definitions/ansible_truth" }, "tty": { "description": "Default: no\n\nAllocate a pseudo-tty within the container.", "$ref": "#/definitions/ansible_truth" }, "cap_add": { "description": "Default: no\n\nAdd capabilities for the container.\nRequires docker-py >= 0.5.0.", "$ref": "#/definitions/ansible_truth" }, "insecure_registry": { "description": "Default: no\n\nUse insecure private registry by HTTP instead of HTTPS.\nNeeded for docker-py >= 0.5.0.", "$ref": "#/definitions/ansible_truth" }, "links": { "type": "array", "description": "List of other containers to link within this container with an optional.\nalias. Use docker CLI-style syntax: C(redis:myredis)." }, "docker_user": { "type": "string", "description": "Username or UID to use within the container" }, "lxc_conf": { "type": "string", "description": "LXC configuration parameters, such as C(lxc.aa_profile:unconfined)." }, "image": { "type": "string", "description": "Container image used to match and launch containers." }, "labels": { "type": "string", "description": "Set container labels.\nRequires docker >= 1.6 and docker-py >= 1.2.0." }, "pid": { "type": "string", "description": "Set the PID namespace mode for the container (currently only supports 'host').\nRequires docker-py >= 1.0.0 and docker >= 1.5.0" }, "docker_api_version": { "type": "string", "description": "Default: docker-py default remote API version\n\nRemote API version to use. This defaults to the current default as specified by docker-py." }, "stop_timeout": { "type": "string", "description": "Default: 10\n\nHow many seconds to wait for the container to stop before killing it." }, "tls_client_key": { "type": "string", "description": "Default: ${DOCKER_CERT_PATH}/key.pem\n\nPath to the PEM-encoded key used to authenticate docker client. If specified tls_client_cert must be valid" }, "env_file": { "type": "string", "description": "Pass in a path to a file with environment variable (FOO=BAR). If a key value is present in both explicitly presented (i.e. as 'env') and in the environment file, the explicit value will override. Requires docker-py >= 1.4.0." }, "read_only": { "type": "string", "description": "Mount the container's root filesystem as read only." }, "tls_ca_cert": { "type": "string", "description": "Default: ${DOCKER_CERT_PATH}/ca.pem\n\nPath to a PEM-encoded certificate authority to secure the Docker connection. This has no effect if use_tls is encrypt." }, "timeout": { "type": "string", "description": "Default: 60\n\nDocker daemon response timeout in seconds." }, "detach": { "description": "Default: yes\n\nEnable detached mode to leave the container running in background. If disabled, fail unless the process exits cleanly.", "$ref": "#/definitions/ansible_truth" }, "hostname": { "type": "string", "description": "Container hostname." }, "docker_url": { "type": "string", "description": "Default: ${DOCKER_HOST} or unix://var/run/docker.sock\n\nURL of the host running the docker daemon. This will default to the env var DOCKER_HOST if unspecified." }, "use_tls": { "type": "string", "description": "Whether to use tls to connect to the docker server. \"no\" means not to use tls (and ignore any other tls related parameters). \"encrypt\" means to use tls to encrypt the connection to the server. \"verify\" means to also verify that the server's certificate is valid for the server (this both verifies the certificate against the CA and that the certificate was issued for that host. If this is unspecified, tls will only be used if one of the other tls options require it." }, "state": { "type": "string", "description": "Default: started\n\nAssert the container's desired state. \"present\" only asserts that the matching containers exist. \"started\" asserts that the matching containers both exist and are running, but takes no action if any configuration has changed. \"reloaded\" (added in Ansible 1.9) asserts that all matching containers are running and restarts any that have any images or configuration out of date. \"restarted\" unconditionally restarts (or starts) the matching containers. \"stopped\" and '\"killed\" stop and kill all matching containers. \"absent\" stops and then' removes any matching containers." }, "tls_client_cert": { "type": "string", "description": "Default: ${DOCKER_CERT_PATH}/cert.pem\n\nPath to the PEM-encoded certificate used to authenticate docker client. If specified tls_client_key must be valid" }, "entrypoint": { "type": "string", "description": "Corresponds to C(--entrypoint) option of C(docker run) command and C(ENTRYPOINT) directive of Dockerfile.\nUsed to match and launch containers." }, "env": { "type": "string", "description": "Pass a dict of environment variables to the container." }, "volumes_from": { "type": "array", "description": "List of names of containers to mount volumes from." }, "net": { "description": "Default: no\n\nNetwork mode for the launched container: bridge, none, container:\nor host.\nRequires docker >= 0.11.", "$ref": "#/definitions/ansible_truth" }, "privileged": { "description": "Default: no\n\nWhether the container should run in privileged mode or not.", "$ref": "#/definitions/ansible_truth" }, "username": { "type": "string", "description": "Remote API username." }, "memory_limit": { "type": "string", "description": "RAM allocated to the container as a number of bytes or as a human-readable string like \"512MB\".\nLeave as \"0\" to specify no limit." }, "extra_hosts": { "type": "string", "description": "Dict of custom host-to-IP mappings to be defined in the container" }, "log_driver": { "type": "string", "description": "Default: json-file\n\nYou can specify a different logging driver for the container than for the daemon.\nC(awslogs) - (added in 2.1) Awslogs logging driver for Docker. Writes log messages to AWS Cloudwatch Logs.\nC(fluentd) - Fluentd logging driver for Docker. Writes log messages to \"fluentd\" (forward input).\nC(gelf) - Graylog Extended Log Format (GELF) logging driver for Docker. Writes log messages to a GELF endpoint likeGraylog or Logstash.\nC(journald) - Journald logging driver for Docker. Writes log messages to \"journald\".\nC(json-file) - Default logging driver for Docker. Writes JSON messages to file. docker logs command is available only for this logging driver.\nC(none) - disables any logging for the container.\nC(syslog) - Syslog logging driver for Docker. Writes log messages to syslog. docker logs command is not available for this logging driver.\nRequires docker >= 1.6.0." }, "expose": { "type": "array", "description": "List of additional container ports to expose for port mappings or links. If the port is already exposed using EXPOSE in a Dockerfile, you don't need to expose it again." }, "stdin_open": { "description": "Default: no\n\nKeep stdin open after a container is launched.", "$ref": "#/definitions/ansible_truth" }, "tls_hostname": { "type": "string", "description": "Default: Taken from docker_url\n\nA hostname to check matches what's supplied in the docker server's certificate. If unspecified, the hostname is taken from the docker_url." }, "domainname": { "type": "string", "description": "Container domain name." }, "registry": { "type": "string", "description": "Default: DockerHub\n\nRemote registry URL to pull images from." }, "password": { "type": "string", "description": "Remote API password." }, "cpu_set": { "type": "string", "description": "CPUs in which to allow execution.\nRequires docker-py >= 0.6.0." }, "pull": { "type": "string", "description": "Default: missing\n\nControl when container images are updated from the C(docker_url) registry.\nIf C(missing), images will be pulled only when missing from the host;\nif C(always), the registry will be checked for a newer version of the image each time the task executes." }, "dns": { "type": "array", "description": "List of custom DNS servers for the container." }, "name": { "type": "string", "description": "Name used to match and uniquely name launched containers. Explicit names are used to uniquely identify a single container or to link among containers. Mutually exclusive with a \"count\" other than \"1\"." }, "signal": { "type": "string", "description": "Default: KILL\n\nWith the state \"killed\", you can alter the signal sent to the container." }, "log_opt": { "type": "string", "description": "Additional options to pass to the logging driver selected above. See Docker `log-driver ` documentation for more information. Requires docker >=1.7.0." }, "restart_policy": { "type": "string", "description": "Container restart policy.\nThe 'unless-stopped' choice is only available starting in Ansible 2.1 and for Docker 1.9 and above." }, "count": { "type": "string", "description": "Default: 1\n\nNumber of matching containers that should be in the desired state." }, "devices": { "type": "array", "description": "List of host devices to expose to container." }, "email": { "type": "string", "description": "Remote API email." }, "command": { "type": "string", "description": "Command used to match and launch containers." }, "restart_policy_retry": { "type": "string", "description": "Maximum number of times to restart a container.\nLeave as \"0\" for unlimited retries." }, "volumes": { "type": "array", "description": "List of volumes to mount within the container.\nUse docker CLI-style syntax: C(/host:/container[:mode])\nYou can specify a read mode for the mount with either C(ro) or C(rw). Starting at version 2.1, SELinux hosts can additionally use C(z) or C(Z) mount options to use a shared or private label for the volume." }, "cap_drop": { "description": "Default: no\n\nDrop capabilities for the container.\nRequires docker-py >= 0.5.0.", "$ref": "#/definitions/ansible_truth" }, "ports": { "type": "array", "description": "List containing private to public port mapping specification. Use docker 'CLI-style syntax: C(8000), C(9000:8000), or C(0.0.0.0:9000:8000)' where 8000 is a container port, 9000 is a host port, and 0.0.0.0 is - a host interface. The container ports need to be exposed either in the Dockerfile or via the C(expose) option." }, "ulimits": { "type": "string", "description": "ulimits, list ulimits with name, soft and optionally hard limit separated by colons. e.g. C(nofile:1024:2048)\nRequires docker-py >= 1.2.0 and docker >= 1.6.0" }, "cpu_shares": { "type": "string", "description": "CPU shares (relative weight).\nRequires docker-py >= 0.6.0." } } }, "telegram": { "required": [ "msg", "token", "chat_id" ], "type": "object", "description": "Send notifications via telegram bot, to a verified group or user", "properties": { "msg": { "type": "string", "description": "What message you wish to send." }, "msg_format": { "type": "string", "description": "Default: plain\n\nMessage format. Formatting options `markdown` and `html` described in Telegram API docs (https://core.telegram.org/bots/api#formatting-options). If option `plain` set, message will not be formatted." }, "token": { "type": "string", "description": "Token identifying your telegram bot." }, "chat_id": { "type": "string", "description": "Telegram group or user chat_id" } } }, "ce_vxlan_gateway": { "type": "object", "description": "Configuring Centralized All-Active Gateways or Distributed Gateway for the VXLAN Network on HUAWEI CloudEngine devices.", "properties": { "dfs_source_vpn": { "type": "string", "description": "Specifies the name of a VPN instance bound to a DFS group. The value is a string of 1 to 31 case-sensitive characters without spaces. If the character string is quoted by double quotation marks, the character string can contain spaces. The value C(_public_) is reserved and cannot be used as the VPN instance name." }, "dfs_id": { "type": "string", "description": "Specifies the ID of a DFS group. The value must be 1." }, "arp_direct_route": { "type": "string", "description": "Enable VLINK direct route on VBDIF interface." }, "dfs_peer_vpn": { "type": "string", "description": "Specifies the name of the VPN instance that is associated with all-active gateway peer. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value C(_public_) is reserved and cannot be used as the VPN instance name." }, "vbdif_name": { "type": "string", "description": "Full name of VBDIF interface, i.e. Vbdif100." }, "vpn_vni": { "type": "string", "description": "Specifies a VNI ID. Binds a VXLAN network identifier (VNI) to a virtual private network (VPN) instance. The value is an integer ranging from 1 to 16000000." }, "vbdif_mac": { "type": "string", "description": "Specifies a MAC address for a VBDIF interface. The value is in the format of H-H-H. Each H is a 4-digit hexadecimal number, such as C(00e0) or C(fc01). If an H contains less than four digits, 0s are added ahead. For example, C(e0) is equal to C(00e0). A MAC address cannot be all 0s or 1s or a multicast MAC address." }, "arp_distribute_gateway": { "type": "string", "description": "Enable the distributed gateway function on VBDIF interface." }, "dfs_source_ip": { "type": "string", "description": "Specifies the IPv4 address bound to a DFS group. The value is in dotted decimal notation." }, "dfs_udp_port": { "type": "string", "description": "Specifies the UDP port number of the DFS group. The value is an integer that ranges from 1025 to 65535." }, "vbdif_bind_vpn": { "type": "string", "description": "Specifies the name of the VPN instance that is associated with the interface. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value C(_public_) is reserved and cannot be used as the VPN instance name." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "dfs_all_active": { "type": "string", "description": "Creates all-active gateways." }, "vpn_instance": { "type": "string", "description": "Specifies the name of a VPN instance. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value C(_public_) is reserved and cannot be used as the VPN instance name." }, "dfs_peer_ip": { "type": "string", "description": "Configure the IP address of an all-active gateway peer. The value is in dotted decimal notation." } } }, "dladm_etherstub": { "required": [ "name" ], "type": "object", "description": "Create or delete etherstubs on Solaris/illumos systems.", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreate or delete Solaris/illumos etherstub." }, "temporary": { "type": "string", "description": "Specifies that the etherstub is temporary. Temporary etherstubs do not persist across reboots." }, "name": { "type": "string", "description": "Etherstub name." } } }, "ce_snmp_community": { "type": "object", "description": "Manages SNMP community configuration on HUAWEI CloudEngine switches.", "properties": { "notify_view": { "type": "string", "description": "Mib view name for notification." }, "write_view": { "type": "string", "description": "Mib view name for write." }, "community_mib_view": { "type": "string", "description": "Mib view name." }, "read_view": { "type": "string", "description": "Mib view name for read." }, "acl_number": { "type": "string", "description": "Access control list number." }, "group_name": { "type": "string", "description": "Unique name to identify the SNMPv3 group." }, "community_name": { "type": "string", "description": "Unique name to identify the community." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "security_level": { "type": "string", "description": "Security level indicating whether to use authentication and encryption." }, "access_right": { "type": "string", "description": "Access right read or write." } } }, "azure_rm_storageblob": { "allOf": [ { "allOf": [ { "not": { "required": [ "src", "source" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "dest", "destination" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "blob", "blob_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "container", "container_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "container" ], "type": "object" }, { "required": [ "container_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "storage_account_name", "account_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "storage_account_name" ], "type": "object" }, { "required": [ "account_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create, update and delete blob containers and blob objects. Use to upload a file and store it as a blob object, or download a blob object to a file.", "properties": { "src": { "type": "string", "description": "Source file path. Use with state 'present' to upload a blob." }, "container_name": { "type": "string", "description": "Name of a blob container within the storage account." }, "force": { "type": "string", "description": "Overwrite existing blob or file when uploading or downloading. Force deletion of a container that contains blobs." }, "resource_group": { "type": "string", "description": "Name of the resource group to use." }, "dest": { "type": "string", "description": "Destination file path. Use with state 'present' to download a blob." }, "content_disposition": { "type": "string", "description": "Set the blob content-disposition header." }, "destination": { "type": "string", "description": "Destination file path. Use with state 'present' to download a blob." }, "cache_control": { "type": "string", "description": "Set the blob cache-control header." }, "source": { "type": "string", "description": "Source file path. Use with state 'present' to upload a blob." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of a container or blob.\nUse state 'absent' with a container value only to delete a container. Include a blob value to remove a specific blob. A container will not be deleted, if it contains blobs. Use the force option to override, deleting the container and all associated blobs.\nUse state 'present' to create or update a container and upload or download a blob. If the container does not exist, it will be created. If it exists, it will be updated with configuration options. Provide a blob name and either src or dest to upload or download. Provide a src path to upload and a dest path to download. If a blob (uploading) or a file (downloading) already exists, it will not be overwritten unless the force parameter is true." }, "container": { "type": "string", "description": "Name of a blob container within the storage account." }, "content_language": { "type": "string", "description": "Set the blob content-language header." }, "blob": { "type": "string", "description": "Name of a blob object within the container." }, "content_type": { "type": "string", "description": "Set the blob content-type header. For example, 'image/png'." }, "public_access": { "type": "string", "description": "Determine a container's level of public access. By default containers are private. Can only be set at time of container creation." }, "content_md5": { "type": "string", "description": "Set the blob md5 hash value." }, "storage_account_name": { "type": "string", "description": "Name of the storage account to use." }, "blob_name": { "type": "string", "description": "Name of a blob object within the container." }, "account_name": { "type": "string", "description": "Name of the storage account to use." }, "content_encoding": { "type": "string", "description": "Set the blob encoding header." } } }, "ce_vrf": { "required": [ "vrf" ], "type": "object", "description": "Manages VPN instance of HUAWEI CloudEngine switches.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "vrf": { "type": "string", "description": "VPN instance, the length of vrf name is 1 - 31, i.e. \"test\", but can not be C(_public_)." }, "description": { "type": "string", "description": "Description of the vrf, the string length is 1 - 242 ." } } }, "netapp_e_auth": { "required": [ "new_password" ], "type": "object", "description": "Sets or updates the password for a storage array. When the password is updated on the storage array, it must be updated on the SANtricity Web Services proxy. Note, all storage arrays do not have a Monitor or RO role.", "properties": { "ssid": { "type": "string", "description": "the identifier of the storage array in the Web Services Proxy." }, "new_password": { "type": "string", "description": "The password you would like to set. Cannot be more than 30 characters." }, "api_password": { "type": "string", "description": "The password used to authenticate against the API\nThis can optionally be set via an environment variable, API_PASSWORD" }, "current_password": { "type": "string", "description": "The current admin password. This is not required if the password hasn't been set before." }, "api_username": { "type": "string", "description": "The username used to authenticate against the API\nThis can optionally be set via an environment variable, API_USERNAME" }, "api_url": { "type": "string", "description": "The full API url.\nExample: http://ENDPOINT:8080/devmgr/v2\nThis can optionally be set via an environment variable, API_URL" }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "set_admin": { "type": "string", "description": "Boolean value on whether to update the admin password. If set to false then the RO account is updated." }, "name": { "type": "string", "description": "The name of the storage array. Note that if more than one storage array with this name is detected, the task will fail and you'll have to use the ID instead." } } }, "panos_query_rules": { "required": [ "password", "ip_address" ], "type": "object", "description": "- Security policies allow you to enforce rules and take action, and can be as general or specific as needed. The policy rules are compared against the incoming traffic in sequence, and because the first rule that matches the traffic is applied, the more specific rules must precede the more general ones.\n", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for authentication." }, "destination_ip": { "type": "string", "description": "Default: None\n\nThe destination IP address to be queried." }, "password": { "type": "string", "description": "Password credentials to use for authentication." }, "protocol": { "type": "string", "description": "Default: None\n\nThe protocol used to be queried. Must be either I(tcp) or I(udp)." }, "source_zone": { "type": "string", "description": "Default: None\n\nName of the source security zone to be queried." }, "source_ip": { "type": "string", "description": "Default: None\n\nThe source IP address to be queried." }, "application": { "type": "string", "description": "Default: None\n\nName of the application or application group to be queried." }, "tag_name": { "type": "string", "description": "Default: None\n\nName of the rule tag to be queried." }, "destination_zone": { "type": "string", "description": "Default: None\n\nName of the destination security zone to be queried." }, "source_port": { "type": "string", "description": "Default: None\n\nThe source port to be queried." }, "devicegroup": { "type": "string", "description": "Default: None\n\nThe Panorama device group in which to conduct the query." }, "destination_port": { "type": "string", "description": "Default: None\n\nThe destination port to be queried." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS firewall or Panorama management console being queried." } } }, "os_keystone_domain": { "required": [ "name" ], "type": "object", "description": "Create, update, or delete OpenStack Identity domains. If a domain with the supplied name already exists, it will be updated with the new description and enabled attributes.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "enabled": { "type": "string", "description": "Default: True\n\nIs the domain enabled" }, "name": { "type": "string", "description": "Name that has to be given to the instance" }, "description": { "type": "string", "description": "Default: None\n\nDescription of the domain" } } }, "ovirt": { "allOf": [ { "allOf": [ { "not": { "required": [ "instance_mem", "vmmem" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_cores", "vmcores" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_cpus", "vmcpus" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_hostname", "hostname" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_disksize", "vm_disksize" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_nic", "vmnic" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_network", "vmnetwork" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_type", "vmtype" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_os", "vmos" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_ip", "ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_dns", "dns" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_name", "vmname" ], "type": "object" } }, { "oneOf": [ { "required": [ "instance_name" ], "type": "object" }, { "required": [ "vmname" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "instance_netmask", "netmask" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_key", "key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_domain", "domain" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_rootpw", "rootpw" ], "type": "object" } } ] } ], "type": "object", "description": "This module only supports oVirt/RHEV version 3. A newer module M(ovirt_vms) supports oVirt/RHV version 4.\nAllows you to create new instances, either from scratch or an image, in addition to deleting or stopping instances on the oVirt/RHEV platform.", "properties": { "vmcores": { "type": "string", "description": "Default: 1\n\nDefine the instance's number of cores." }, "instance_mem": { "type": "string", "description": "The instance's amount of memory in MB." }, "key": { "type": "string", "description": "Define the instance's Authorized key." }, "vmnic": { "type": "string", "description": "The name of the network interface in oVirt/RHEV." }, "vmmem": { "type": "string", "description": "The instance's amount of memory in MB." }, "instance_cpus": { "type": "string", "description": "Default: 1\n\nThe instance's number of CPUs." }, "ip": { "type": "string", "description": "Define the instance's IP." }, "image": { "type": "string", "description": "The template to use for the instance." }, "domain": { "type": "string", "description": "Define the instance's Domain." }, "vmtype": { "type": "string", "description": "Default: server\n\nDefine whether the instance is a server, desktop or high_performance.\nI(high_performance) is supported since Ansible 2.5 and oVirt/RHV 4.2." }, "instance_nic": { "type": "string", "description": "The name of the network interface in oVirt/RHEV." }, "vmnetwork": { "type": "string", "description": "Default: rhevm\n\nThe logical network the machine should belong to." }, "vmname": { "type": "string", "description": "The name of the instance to use." }, "vm_disksize": { "type": "string", "description": "Size of the instance's disk in GB." }, "instance_cores": { "type": "string", "description": "Default: 1\n\nDefine the instance's number of cores." }, "zone": { "type": "string", "description": "Deploy the image to this oVirt cluster." }, "vmos": { "type": "string", "description": "Type of Operating System." }, "hostname": { "type": "string", "description": "Define the instance's Hostname." }, "instance_netmask": { "type": "string", "description": "Define the instance's Netmask." }, "state": { "type": "string", "description": "Default: present\n\nCreate, terminate or remove instances." }, "instance_key": { "type": "string", "description": "Define the instance's Authorized key." }, "dns": { "type": "string", "description": "Define the instance's Primary DNS server." }, "instance_domain": { "type": "string", "description": "Define the instance's Domain." }, "rootpw": { "type": "string", "description": "Define the instance's Root password." }, "instance_rootpw": { "type": "string", "description": "Define the instance's Root password." }, "vmcpus": { "type": "string", "description": "Default: 1\n\nThe instance's number of CPUs." }, "instance_hostname": { "type": "string", "description": "Define the instance's Hostname." }, "netmask": { "type": "string", "description": "Define the instance's Netmask." }, "user": { "type": "string", "description": "The user to authenticate with." }, "instance_network": { "type": "string", "description": "Default: rhevm\n\nThe logical network the machine should belong to." }, "password": { "type": "string", "description": "Password of the user to authenticate with." }, "sdomain": { "type": "string", "description": "The Storage Domain where you want to create the instance's disk on." }, "instance_os": { "type": "string", "description": "Type of Operating System." }, "instance_ip": { "type": "string", "description": "Define the instance's IP." }, "instance_disksize": { "type": "string", "description": "Size of the instance's disk in GB." }, "url": { "type": "string", "description": "The url of the oVirt instance." }, "region": { "type": "string", "description": "The oVirt/RHEV datacenter where you want to deploy to." }, "disk_alloc": { "type": "string", "description": "Default: thin\n\nDefine whether disk is thin or preallocated." }, "instance_dns": { "type": "string", "description": "Define the instance's Primary DNS server." }, "instance_name": { "type": "string", "description": "The name of the instance to use." }, "instance_type": { "type": "string", "description": "Default: server\n\nDefine whether the instance is a server, desktop or high_performance.\nI(high_performance) is supported since Ansible 2.5 and oVirt/RHV 4.2." }, "resource_type": { "type": "string", "description": "Whether you want to deploy an image or create an instance from scratch." }, "disk_int": { "type": "string", "description": "Default: virtio\n\nInterface type of the disk." } } }, "etcd3": { "required": [ "key", "state", "value" ], "type": "object", "description": "Sets or deletes values in etcd3 cluster using its v3 api.\nNeeds python etcd3 lib to work", "properties": { "value": { "type": "string", "description": "the information stored" }, "host": { "type": "string", "description": "Default: localhost\n\nthe IP address of the cluster" }, "state": { "type": "string", "description": "the state of the value for the key.\ncan be present or absent" }, "key": { "type": "string", "description": "the key where the information is stored in the cluster" }, "port": { "type": "string", "description": "Default: 2379\n\nthe port number used to connect to the cluster" } } }, "redhat_subscription": { "allOf": [ { "allOf": [ { "not": { "required": [ "auto_attach", "autosubscribe" ], "type": "object" } } ] } ], "type": "object", "description": "Manage registration and subscription to the Red Hat Subscription Management entitlement platform using the C(subscription-manager) command", "properties": { "username": { "type": "string", "description": "access.redhat.com or Sat6 username" }, "server_hostname": { "type": "string", "description": "Specify an alternative Red Hat Subscription Management or Sat6 server" }, "password": { "type": "string", "description": "access.redhat.com or Sat6 password" }, "pool_ids": { "type": "string", "description": "Specify subscription pool IDs to consume. Prefer over I(pool) when possible as it is much faster.\nA pool ID may be specified as a C(string) - just the pool ID (ex. C(0123456789abcdef0123456789abcdef)),\nor as a C(dict) with the pool ID as the key, and a quantity as the value (ex.\nC(0123456789abcdef0123456789abcdef: 2). If the quantity is provided, it is used to consume multiple\nentitlements from a pool (the pool must support this). Mutually exclusive with I(pool).\n" }, "consumer_type": { "type": "string", "description": "The type of unit to register, defaults to system" }, "org_id": { "type": "string", "description": "Organization ID to use in conjunction with activationkey" }, "server_proxy_hostname": { "type": "string", "description": "Specify a HTTP proxy hostname" }, "consumer_id": { "type": "string", "description": "References an existing consumer ID to resume using a previous registration\nfor this system. If the system's identity certificate is lost or corrupted,\nthis option allows it to resume using its previous identity and subscriptions.\nThe default is to not specify a consumer ID so a new ID is created.\n" }, "environment": { "type": "string", "description": "Register with a specific environment in the destination org. Used with Red Hat Satellite 6.x or Katello" }, "force_register": { "type": "string", "description": "Register the system even if it is already registered" }, "state": { "type": "string", "description": "Default: present\n\nwhether to register and subscribe (C(present)), or unregister (C(absent)) a system" }, "server_proxy_user": { "type": "string", "description": "Specify a user for HTTP proxy with basic authentication" }, "auto_attach": { "description": "Upon successful registration, auto-consume available subscriptions\nAdded in favor of depracated autosubscribe in 2.5.", "$ref": "#/definitions/ansible_truth" }, "pool": { "type": "string", "description": "Default: ^$\n\nSpecify a subscription pool name to consume. Regular expressions accepted. Use I(pool_ids) instead if\npossible, as it is much faster. Mutually exclusive with I(pool_ids).\n" }, "server_proxy_password": { "type": "string", "description": "Specify a password for HTTP proxy with basic authentication" }, "activationkey": { "type": "string", "description": "supply an activation key for use with registration" }, "server_insecure": { "type": "string", "description": "Enable or disable https server certificate verification when connecting to C(server_hostname)" }, "consumer_name": { "type": "string", "description": "Name of the system to register, defaults to the hostname" }, "rhsm_baseurl": { "type": "string", "description": "Specify CDN baseurl" }, "autosubscribe": { "description": "Upon successful registration, auto-consume available subscriptions\nAdded in favor of depracated autosubscribe in 2.5.", "$ref": "#/definitions/ansible_truth" }, "server_proxy_port": { "type": "string", "description": "Specify a HTTP proxy port" } } }, "cv_server_provision": { "required": [ "username", "switch_port", "server_name", "host", "template", "password", "switch_name" ], "type": "object", "description": "This module allows a server team to provision server network ports for new servers without having to access Arista CVP or asking the network team to do it for them. Provide the information for connecting to CVP, switch rack, port the new server is connected to, optional vlan, and an action and the module will apply the configuration to the switch port via CVP. Actions are add (applies template config to port), remove (defaults the interface config) and show (returns the current port config).", "properties": { "username": { "type": "string", "description": "The user that will be used to connect to CVP for making API calls." }, "port_vlan": { "type": "string", "description": "Default: None\n\nThe vlan that should be applied to the port for this server. This parameter is dependent on a proper template that supports single vlan provisioning with it. If a port vlan is specified by the template specified does not support this the module will exit out with no changes. If a template is specified that requires a port vlan but no port vlan is specified the module will exit out with no changes." }, "protocol": { "type": "string", "description": "Default: https\n\nThe protocol to use when making API calls to CVP. CVP defaults to https and newer versions of CVP no longer support http." }, "switch_port": { "type": "string", "description": "The physical port number on the switch that the new server is connected to." }, "server_name": { "type": "string", "description": "The hostname or identifier for the server that is having it's switch port provisioned." }, "switch_name": { "type": "string", "description": "The hostname of the switch is being configured for the server being provisioned." }, "host": { "type": "string", "description": "The hostname or IP address of the CVP node being connected to." }, "template": { "type": "string", "description": "A path to a Jinja formatted template file that contains the configuration block that will be applied to the specified switch port. This template will have variable fields replaced by the module before being applied to the switch configuration." }, "auto_run": { "description": "Flag that determines whether or not the module will execute the CVP task spawned as a result of changes to a switch configlet. When an add or remove action is taken which results in a change to a switch configlet, CVP will spawn a task that needs to be executed for the configuration to be applied to the switch. If this option is True then the module will determined the task number created by the configuration change, execute it and wait for the task to complete. If the option is False then the task will remain in the Pending state in CVP for a network administrator to review and execute.", "$ref": "#/definitions/ansible_truth" }, "action": { "type": "string", "description": "Default: show\n\nThe action for the module to take. The actions are add, which applies the specified template config to port, remove, which defaults the specified interface configuration, and show, which will return the current port configuration with no changes." }, "password": { "type": "string", "description": "The password of the user that will be used to connect to CVP for API calls." }, "port": { "type": "string", "description": "Default: None\n\nThe port number to use when making API calls to the CVP node. This will default to the default port for the specified protocol. Port 80 for http and port 443 for https." } } }, "gitlab_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "validate_certs", "verify_ssl" ], "type": "object" } } ] } ], "type": "object", "description": "When the group does not exist in Gitlab, it will be created.\nWhen the group does exists and state=absent, the group will be deleted.", "properties": { "verify_ssl": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." }, "name": { "type": "string", "description": "Name of the group you want to create." }, "login_user": { "type": "string", "description": "Gitlab user name." }, "login_token": { "type": "string", "description": "Gitlab token for logging in." }, "server_url": { "type": "string", "description": "Url of Gitlab server, with protocol (http or https)." }, "state": { "type": "string", "description": "Default: present\n\ncreate or delete group.\nPossible values are present and absent." }, "login_password": { "type": "string", "description": "Gitlab password for login_user" }, "path": { "type": "string", "description": "The path of the group you want to create, this will be server_url/group_path\nIf not supplied, the group_name will be used." }, "validate_certs": { "type": "string", "description": "Default: True\n\nWhen using https if SSL certificate needs to be verified." } } }, "win_iis_website": { "required": [ "name" ], "type": "object", "description": "Creates, Removes and configures a IIS Web site", "properties": { "hostname": { "type": "string", "description": "The host header to bind to / use for the new site." }, "name": { "type": "string", "description": "Names of web site" }, "parameters": { "type": "string", "description": "Custom site Parameters from string where properties are separated by a pipe and property name/values by colon Ex. \"foo:1|bar:2\"" }, "ip": { "type": "string", "description": "The IP address to bind to / use for the new site." }, "physical_path": { "type": "string", "description": "The physical path on the remote host to use for the new site. The specified folder must already exist." }, "application_pool": { "type": "string", "description": "The application pool in which the new site executes." }, "site_id": { "type": "string", "description": "Explicitly set the IIS numeric ID for a site. Note that this value cannot be changed after the website has been created." }, "ssl": { "type": "string", "description": "Enables HTTPS binding on the site.." }, "state": { "type": "string", "description": "State of the web site" }, "port": { "type": "string", "description": "The port to bind to / use for the new site." } } }, "ipa_dnszone": { "required": [ "zone_name" ], "type": "object", "description": "Add and delete an IPA DNS Zones using IPA API", "properties": { "zone_name": { "type": "string", "description": "The DNS zone name to which needs to be managed." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" } } }, "kinesis_stream": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "resource_tags" ], "type": "object" } } ] } ], "type": "object", "description": "Create or Delete a Kinesis Stream.\nUpdate the retention period of a Kinesis Stream.\nUpdate Tags on a Kinesis Stream.\nEnable/disable server side encryption on a Kinesis Stream.", "properties": { "name": { "type": "string", "description": "Default: None\n\nThe name of the Kinesis Stream you are managing." }, "tags": { "type": "object", "description": "A dictionary of resource tags of the form: { tag1: value1, tag2: value2 }." }, "encryption_type": { "type": "string", "description": "Default: KMS\n\nThe type of encryption." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow many seconds to wait for an operation to complete before timing out." }, "shards": { "type": "string", "description": "Default: None\n\nThe number of shards you want to have with this stream.\nThis is required when state == present" }, "encryption_state": { "type": "string", "description": "Enable or Disable encryption on the Kinesis Stream." }, "retention_period": { "type": "string", "description": "Default: None\n\nThe default retention period is 24 hours and can not be less than 24 hours.\nThe retention period can be modified during any point in time." }, "state": { "type": "string", "description": "Default: present\n\nCreate or Delete the Kinesis Stream." }, "key_id": { "type": "string", "description": "Default: None\n\nThe GUID or alias for the KMS key." }, "resource_tags": { "type": "object", "description": "A dictionary of resource tags of the form: { tag1: value1, tag2: value2 }." }, "wait": { "type": "string", "description": "Default: True\n\nWait for operation to complete before returning." } } }, "nxos_vtp_password": { "type": "object", "description": "Manages VTP password configuration.", "properties": { "vtp_password": { "type": "string", "description": "VTP password" }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource" } } }, "sqs_queue": { "required": [ "name" ], "type": "object", "description": "Create or delete AWS SQS queues.\nUpdate attributes on existing queues.", "properties": { "message_retention_period": { "type": "string", "description": "The message retention period in seconds." }, "name": { "type": "string", "description": "Name of the queue." }, "delivery_delay": { "type": "string", "description": "The delivery delay in seconds." }, "default_visibility_timeout": { "type": "string", "description": "The default visibility timeout in seconds." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete the queue" }, "maximum_message_size": { "type": "string", "description": "The maximum message size in bytes." }, "policy": { "type": "string", "description": "The json dict policy to attach to queue" }, "redrive_policy": { "type": "string", "description": "json dict with the redrive_policy (see example)" }, "receive_message_wait_time": { "type": "string", "description": "The receive message wait time in seconds." } } }, "fortios_config": { "type": "object", "description": "This module provides management of FortiOS Devices configuration.", "properties": { "filter": { "type": "string", "description": "Only for partial backup, you can restrict by giving expected configuration path (ex. firewall address)." }, "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration template to load into the remote device." } } }, "s3_lifecycle": { "required": [ "name" ], "type": "object", "description": "Manage s3 bucket lifecycle rules in AWS", "properties": { "status": { "type": "string", "description": "Default: enabled\n\nIf 'enabled', the rule is currently being applied. If 'disabled', the rule is not currently being applied." }, "transition_days": { "type": "string", "description": "Indicates when, in days, an object transitions to a different storage class. If transition_date is not specified, this parameter is required." }, "name": { "type": "string", "description": "Name of the s3 bucket" }, "expiration_date": { "type": "string", "description": "Indicates the lifetime of the objects that are subject to the rule by the date they will expire. The value must be ISO-8601 format, the time must be midnight and a GMT timezone must be specified." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove the lifecycle rule" }, "prefix": { "type": "string", "description": "Prefix identifying one or more objects to which the rule applies. If no prefix is specified, the rule will apply to the whole bucket." }, "storage_class": { "type": "string", "description": "Default: glacier\n\nThe storage class to transition to. Currently there are two supported values - 'glacier' or 'standard_ia'.\nThe 'standard_ia' class is only being available from Ansible version 2.2." }, "expiration_days": { "type": "string", "description": "Indicates the lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer." }, "rule_id": { "type": "string", "description": "Unique identifier for the rule. The value cannot be longer than 255 characters. A unique value for the rule will be generated if no value is provided." }, "transition_date": { "type": "string", "description": "Indicates the lifetime of the objects that are subject to the rule by the date they will transition to a different storage class. The value must be ISO-8601 format, the time must be midnight and a GMT timezone must be specified. If transition_days is not specified, this parameter is required." } } }, "os_port": { "required": [ "network" ], "type": "object", "description": "Add, Update or Remove ports from an OpenStack cloud. A I(state) of 'present' will ensure the port is created or updated if required.", "properties": { "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the port." }, "allowed_address_pairs": { "type": "string", "description": "Default: None\n\nAllowed address pairs list. Allowed address pairs are supported with dictionary structure. e.g. allowed_address_pairs: - ip_address: 10.1.0.12 mac_address: ab:cd:ef:12:34:56 - ip_address: ..." }, "admin_state_up": { "type": "string", "description": "Default: None\n\nSets admin state." }, "extra_dhcp_opts": { "type": "string", "description": "Default: None\n\nExtra dhcp options to be assigned to this port. Extra options are supported with dictionary structure. e.g. extra_dhcp_opts: - opt_name: opt name1 opt_value: value1 - opt_name: ..." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "device_owner": { "type": "string", "description": "Default: None\n\nThe ID of the entity that uses this port." }, "no_security_groups": { "type": "string", "description": "Do not associate a security group with this port." }, "mac_address": { "type": "string", "description": "Default: None\n\nMAC address of this port." }, "device_id": { "type": "string", "description": "Default: None\n\nDevice ID of device using this port." }, "fixed_ips": { "type": "string", "description": "Default: None\n\nDesired IP and/or subnet for this port. Subnet is referenced by subnet_id and IP is referenced by ip_address." }, "security_groups": { "type": "string", "description": "Default: None\n\nSecurity group(s) ID(s) or name(s) associated with the port (comma separated string or YAML list)" }, "network": { "type": "string", "description": "Network ID or name this port belongs to." } } }, "seport": { "required": [ "setype", "proto", "state", "ports" ], "type": "object", "description": "Manages SELinux network port type definitions.", "properties": { "ports": { "type": "string", "description": "Ports or port ranges, separated by a comma." }, "reload": { "description": "Default: yes\n\nReload SELinux policy after commit.", "$ref": "#/definitions/ansible_truth" }, "setype": { "type": "string", "description": "SELinux type for the specified port." }, "state": { "type": "string", "description": "Default: present\n\nDesired boolean value." }, "proto": { "type": "string", "description": "Protocol for the specified port." } } }, "ipa_hostgroup": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify and delete an IPA host-group using IPA API", "properties": { "name": { "type": "string", "description": "Name of host-group.\nCan not be changed as it is the unique identifier." }, "description": { "type": "string", "description": "Description" }, "state": { "type": "string", "description": "Default: present\n\nState to ensure." }, "hostgroup": { "type": "array", "description": "List of host-groups than belong to that host-group.\nIf an empty list is passed all host-groups will be removed from the group.\nIf option is omitted host-groups will not be checked or changed.\nIf option is passed all assigned hostgroups that are not passed will be unassigned from the group." }, "host": { "type": "array", "description": "List of hosts that belong to the host-group.\nIf an empty list is passed all hosts will be removed from the group.\nIf option is omitted hosts will not be checked or changed.\nIf option is passed all assigned hosts that are not passed will be unassigned from the group." }, "cn": { "type": "string", "description": "Name of host-group.\nCan not be changed as it is the unique identifier." } } }, "typetalk": { "required": [ "topic", "client_secret", "client_id", "msg" ], "type": "object", "description": "Send a message to typetalk using typetalk API ( http://developers.typetalk.in/ )", "properties": { "topic": { "type": "string", "description": "topic id to post message" }, "client_secret": { "type": "string", "description": "OAuth2 client secret" }, "client_id": { "type": "string", "description": "OAuth2 client ID" }, "msg": { "type": "string", "description": "message body" } } }, "postgresql_db": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "db" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "db" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add or remove PostgreSQL databases from a remote host.", "properties": { "name": { "type": "string", "description": "name of the database to add or remove" }, "encoding": { "type": "string", "description": "Encoding of the database" }, "lc_collate": { "type": "string", "description": "Collation order (LC_COLLATE) to use in the database. Must match collation order of template database unless C(template0) is used as template." }, "target_opts": { "type": "string", "description": "Further arguments for pg_dump or pg_restore. Used when state is \"dump\" or \"restore\"" }, "db": { "type": "string", "description": "name of the database to add or remove" }, "lc_ctype": { "type": "string", "description": "Character classification (LC_CTYPE) to use in the database (e.g. lower, upper, ...) Must match LC_CTYPE of template database unless C(template0) is used as template." }, "maintenance_db": { "type": "string", "description": "Default: postgres\n\nThe value specifies the initial database (which is also called as maintenance DB) that Ansible connects to." }, "state": { "type": "string", "description": "Default: present\n\nThe database state. present implies that the database should be created if necessary.\nabsent implies that the database should be removed if present.\ndump requires a target definition to which the database will be backed up.\n(Added in 2.4) restore also requires a target definition from which the database will be restored.\n(Added in 2.4) The format of the backup will be detected based on the target name.\nSupported compression formats for dump and restore are: .bz2, .gz, and .xz\nSupported formats for dump and restore are: .sql and .tar\n" }, "template": { "type": "string", "description": "Template used to create the database" }, "owner": { "type": "string", "description": "Name of the role to set as owner of the database" }, "target": { "type": "string", "description": "File to back up or restore from. Used when state is \"dump\" or \"restore\"" } } }, "ce_ip_interface": { "required": [ "interface" ], "type": "object", "description": "Manages Layer 3 attributes for IPv4 and IPv6 interfaces on HUAWEI CloudEngine switches.", "properties": { "addr": { "type": "string", "description": "IPv4 or IPv6 Address." }, "mask": { "type": "string", "description": "Subnet mask for IPv4 or IPv6 Address in decimal format." }, "ipv4_type": { "type": "string", "description": "Default: main\n\nSpecifies an address type. The value is an enumerated type. main, primary IP address. sub, secondary IP address." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "version": { "type": "string", "description": "Default: v4\n\nIP address version." }, "interface": { "type": "string", "description": "Full name of interface, i.e. 40GE1/0/22, vlanif10." } } }, "bigip_traffic_group": { "required": [ "name" ], "type": "object", "description": "Supports managing traffic groups and their attributes on a BIG-IP.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the traffic group exists.\nWhen C(absent), ensures the traffic group is removed." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "The name of the traffic group." } } }, "win_get_url": { "allOf": [ { "allOf": [ { "not": { "required": [ "url_password", "password" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "url_username", "username" ], "type": "object" } } ] } ], "type": "object", "description": "Downloads files from HTTP, HTTPS, or FTP to the remote server. The remote server I(must) have direct access to the remote resource.\nFor non-Windows targets, use the M(get_url) module instead.", "properties": { "username": { "type": "string", "description": "Basic authentication username." }, "url_password": { "type": "string", "description": "Basic authentication password." }, "proxy_url": { "type": "string", "description": "The full URL of the proxy server to download through." }, "force": { "description": "Default: yes\n\nIf C(yes), will always download the file. If C(no), will only download the file if it does not exist or the remote file has been modified more recently than the local file.\nThis works by sending an http HEAD request to retrieve last modified time of the requested resource, so for this to work, the remote web server must support HEAD requests.", "$ref": "#/definitions/ansible_truth" }, "use_proxy": { "description": "Default: yes\n\nIf C(no), it will not use a proxy, even if one is defined in an environment variable on the target hosts.", "$ref": "#/definitions/ansible_truth" }, "headers": { "type": "string", "description": "Add custom HTTP headers to a request (as a dictionary)." }, "url": { "type": "string", "description": "The full URL of a file to download." }, "skip_certificate_validation": { "description": "Default: no\n\nThis option is deprecated since v2.4, please use C(validate_certs) instead.\nIf C(yes), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "force_basic_auth": { "description": "Default: no\n\nIf C(yes), will add a Basic authentication header on the initial request.\nIf C(no), will use Microsoft's WebClient to handle authentication.", "$ref": "#/definitions/ansible_truth" }, "proxy_password": { "type": "string", "description": "Proxy authentication password." }, "dest": { "type": "string", "description": "The location to save the file at the URL.\nBe sure to include a filename and extension as appropriate." }, "proxy_username": { "type": "string", "description": "Proxy authentication username." }, "timeout": { "type": "string", "description": "Default: 10\n\nTimeout in seconds for URL request." }, "url_username": { "type": "string", "description": "Basic authentication username." }, "password": { "type": "string", "description": "Basic authentication password." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.\nIf C(skip_certificate_validation) was set, it overrides this option.", "$ref": "#/definitions/ansible_truth" } } }, "net_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service configuration on network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP service configuration." } } }, "aci_static_binding_to_epg": { "allOf": [ { "allOf": [ { "not": { "required": [ "interface_mode", "interface_mode_name", "mode" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "primary_encap_id", "primary_vlan", "primary_vlan_id" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "encap_id", "vlan", "vlan_id" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "ap", "app_profile", "app_profile_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "leafs", "leaves", "nodes", "paths", "switches" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "epg", "epg_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "pod_id", "pod", "pod_number" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] } ], "type": "object", "description": "Bind static paths to EPGs on Cisco ACI fabrics.", "properties": { "primary_vlan_id": { "type": "string", "description": "Determines the primary encapsulation ID associating the C(epg) with the interface path when using micro-segmentation." }, "tenant_name": { "type": "string", "description": "Name of an existing tenant." }, "primary_vlan": { "type": "string", "description": "Determines the primary encapsulation ID associating the C(epg) with the interface path when using micro-segmentation." }, "switches": { "type": "string", "description": "The switch ID(s) that the C(interface) belongs to.\nWhen C(interface_type) is C(switch_port), C(port_channel), or C(fex), then C(leafs) is a string of the leaf ID.\nWhen C(interface_type) is C(vpc), then C(leafs) is a list with both leaf IDs.\nThe C(leafs) value is usually something like '101' or '101-102' depending on C(connection_type)." }, "ap": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "pod_number": { "type": "string", "description": "The pod number part of the tDn.\nC(pod_id) is usually an integer below 10." }, "leafs": { "type": "string", "description": "The switch ID(s) that the C(interface) belongs to.\nWhen C(interface_type) is C(switch_port), C(port_channel), or C(fex), then C(leafs) is a string of the leaf ID.\nWhen C(interface_type) is C(vpc), then C(leafs) is a list with both leaf IDs.\nThe C(leafs) value is usually something like '101' or '101-102' depending on C(connection_type)." }, "pod": { "type": "string", "description": "The pod number part of the tDn.\nC(pod_id) is usually an integer below 10." }, "pod_id": { "type": "string", "description": "The pod number part of the tDn.\nC(pod_id) is usually an integer below 10." }, "vlan_id": { "type": "string", "description": "The encapsulation ID associating the C(epg) with the interface path.\nThis acts as the secondary C(encap_id) when using micro-segmentation." }, "epg_name": { "type": "string", "description": "The name of the end point group." }, "paths": { "type": "string", "description": "The switch ID(s) that the C(interface) belongs to.\nWhen C(interface_type) is C(switch_port), C(port_channel), or C(fex), then C(leafs) is a string of the leaf ID.\nWhen C(interface_type) is C(vpc), then C(leafs) is a list with both leaf IDs.\nThe C(leafs) value is usually something like '101' or '101-102' depending on C(connection_type)." }, "interface_mode": { "type": "string", "description": "Default: trunk\n\nDetermines how layer 2 tags will be read from and added to frames.\nValues C(802.1p) and C(native) are identical.\nValues C(access) and C(untagged) are identical.\nValues C(regular), C(tagged) and C(trunk) are identical.\nThe APIC defaults the mode to C(trunk)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "app_profile_name": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "nodes": { "type": "string", "description": "The switch ID(s) that the C(interface) belongs to.\nWhen C(interface_type) is C(switch_port), C(port_channel), or C(fex), then C(leafs) is a string of the leaf ID.\nWhen C(interface_type) is C(vpc), then C(leafs) is a list with both leaf IDs.\nThe C(leafs) value is usually something like '101' or '101-102' depending on C(connection_type)." }, "interface_type": { "type": "string", "description": "Default: switch_port\n\nThe type of interface for the static EPG deployement.\nThe APIC defaults the C(interface_type) to C(switch_port)." }, "app_profile": { "type": "string", "description": "Name of an existing application network profile, that will contain the EPGs." }, "interface_mode_name": { "type": "string", "description": "Default: trunk\n\nDetermines how layer 2 tags will be read from and added to frames.\nValues C(802.1p) and C(native) are identical.\nValues C(access) and C(untagged) are identical.\nValues C(regular), C(tagged) and C(trunk) are identical.\nThe APIC defaults the mode to C(trunk)." }, "vlan": { "type": "string", "description": "The encapsulation ID associating the C(epg) with the interface path.\nThis acts as the secondary C(encap_id) when using micro-segmentation." }, "primary_encap_id": { "type": "string", "description": "Determines the primary encapsulation ID associating the C(epg) with the interface path when using micro-segmentation." }, "interface": { "type": "string", "description": "The C(interface) string value part of the tDn.\nUsually a policy group like \"test-IntPolGrp\" or an interface of the following format \"1/7\" depending on C(interface_type)." }, "encap_id": { "type": "string", "description": "The encapsulation ID associating the C(epg) with the interface path.\nThis acts as the secondary C(encap_id) when using micro-segmentation." }, "tenant": { "type": "string", "description": "Name of an existing tenant." }, "leaves": { "type": "string", "description": "The switch ID(s) that the C(interface) belongs to.\nWhen C(interface_type) is C(switch_port), C(port_channel), or C(fex), then C(leafs) is a string of the leaf ID.\nWhen C(interface_type) is C(vpc), then C(leafs) is a list with both leaf IDs.\nThe C(leafs) value is usually something like '101' or '101-102' depending on C(connection_type)." }, "deploy_immediacy": { "type": "string", "description": "Default: lazy\n\nThe Deployement Immediacy of Static EPG on PC, VPC or Interface.\nThe APIC defaults the Deployement Immediacy to C(lazy)." }, "mode": { "type": "string", "description": "Default: trunk\n\nDetermines how layer 2 tags will be read from and added to frames.\nValues C(802.1p) and C(native) are identical.\nValues C(access) and C(untagged) are identical.\nValues C(regular), C(tagged) and C(trunk) are identical.\nThe APIC defaults the mode to C(trunk)." }, "epg": { "type": "string", "description": "The name of the end point group." }, "extpaths": { "type": "string", "description": "The C(extpaths) integer value part of the tDn.\nC(extpaths) is only used if C(interface_type) is C(fex).\nUsually something like '1011'." } } }, "ec2_key": { "required": [ "name" ], "type": "object", "description": "maintains ec2 key pairs. This module has a dependency on python-boto >= 2.5", "properties": { "state": { "type": "string", "description": "Default: present\n\ncreate or delete keypair" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long before wait gives up, in seconds" }, "name": { "type": "string", "description": "Name of the key pair." }, "wait": { "type": "string", "description": "Wait for the specified action to complete before returning." }, "key_material": { "type": "string", "description": "Public key material." } } }, "cs_network": { "required": [ "name" ], "type": "object", "description": "Create, update, restart and delete networks.", "properties": { "domain": { "type": "string", "description": "Domain the network is related to." }, "end_ipv6": { "type": "string", "description": "The ending IPv6 address of the network belongs to.\nIf not specified, value of C(start_ipv6) is used.\nOnly considered on create." }, "gateway": { "type": "string", "description": "The gateway of the network.\nRequired for shared networks and isolated networks when it belongs to a VPC.\nOnly considered on create." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "zone": { "type": "string", "description": "Name of the zone in which the network should be deployed.\nIf not set, default zone is used." }, "start_ipv6": { "type": "string", "description": "The beginning IPv6 address of the network belongs to.\nOnly considered on create." }, "cidr_ipv6": { "type": "string", "description": "CIDR of IPv6 network, must be at least /64.\nOnly considered on create." }, "state": { "type": "string", "description": "Default: present\n\nState of the network." }, "end_ip": { "type": "string", "description": "The ending IPv4 address of the network belongs to.\nIf not specified, value of C(start_ip) is used.\nOnly considered on create." }, "vlan": { "type": "string", "description": "The ID or VID of the network." }, "clean_up": { "type": "string", "description": "Cleanup old network elements.\nOnly considered on C(state=restarted)." }, "netmask": { "type": "string", "description": "The netmask of the network.\nRequired for shared networks and isolated networks when it belongs to a VPC.\nOnly considered on create." }, "network_offering": { "type": "string", "description": "Name of the offering for the network.\nRequired if C(state=present)." }, "vpc": { "type": "string", "description": "Name of the VPC of the network." }, "start_ip": { "type": "string", "description": "The beginning IPv4 address of the network belongs to.\nOnly considered on create." }, "gateway_ipv6": { "type": "string", "description": "The gateway of the IPv6 network.\nRequired for shared networks.\nOnly considered on create." }, "display_text": { "type": "string", "description": "Display text of the network.\nIf not specified, C(name) will be used as C(display_text)." }, "isolated_pvlan": { "type": "string", "description": "The isolated private VLAN for this network." }, "account": { "type": "string", "description": "Account the network is related to." }, "network_domain": { "type": "string", "description": "The network domain." }, "name": { "type": "string", "description": "Name (case sensitive) of the network." }, "project": { "type": "string", "description": "Name of the project the network to be deployed in." }, "acl_type": { "type": "string", "description": "Default: account\n\nAccess control type.\nOnly considered on create." } } }, "accelerate": { "type": "object", "description": "This module has been removed, this file is kept for historical documentation purposes.\nThis modules launches an ephemeral I(accelerate) daemon on the remote node which Ansible can use to communicate with nodes at high speed.\nThe daemon listens on a configurable port for a configurable amount of time.\nFireball mode is AES encrypted", "properties": { "ipv6": { "type": "string", "description": "The listener daemon on the remote host will bind to the ipv6 localhost socket if this parameter is set to true." }, "minutes": { "type": "string", "description": "Default: 30\n\nThe I(accelerate) listener daemon is started on nodes and will stay around for this number of minutes before turning itself off." }, "port": { "type": "string", "description": "Default: 5099\n\nTCP port for the socket connection" }, "timeout": { "type": "string", "description": "Default: 300\n\nThe number of seconds the socket will wait for data. If none is received when the timeout value is reached, the connection will be closed." }, "multi_key": { "type": "string", "description": "When enabled, the daemon will open a local socket file which can be used by future daemon executions to upload a new key to the already running daemon, so that multiple users can connect using different keys. This access still requires an ssh connection as the uid for which the daemon is currently running." } } }, "vr_dns_record": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "subrecord" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "record_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and remove DNS records.", "properties": { "domain": { "type": "string", "description": "The domain the record is related to." }, "multiple": { "description": "Whether to use more than one record with similar C(name) including no name and C(record_type).\nOnly allowed for a few record types, e.g. C(record_type=A), C(record_type=NS) or C(record_type=MX).\nC(data) will not be updated, instead it is used as a key to find existing records.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "The record name (subrecord)." }, "data": { "type": "string", "description": "Data of the record.\nRequired if C(state=present) or C(multiple=yes)." }, "priority": { "type": "string", "description": "Priority of the record." }, "record_type": { "type": "string", "description": "Default: A\n\nType of the record." }, "state": { "type": "string", "description": "Default: present\n\nState of the DNS record." }, "subrecord": { "type": "string", "description": "The record name (subrecord)." }, "ttl": { "type": "string", "description": "Default: 300\n\nTTL of the record." }, "type": { "type": "string", "description": "Default: A\n\nType of the record." } } }, "iosxr_banner": { "required": [ "banner" ], "type": "object", "description": "This module will configure both exec and motd banners on remote device running Cisco IOS XR. It allows playbooks to add or remove banner text from the running configuration.", "properties": { "text": { "type": "string", "description": "Banner text to be configured. Accepts multiline string, without empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nExistential state of the configuration on the device." }, "banner": { "type": "string", "description": "Specifies the type of banner to configure on remote device." } } }, "openvswitch_bridge": { "required": [ "bridge" ], "type": "object", "description": "Manage Open vSwitch bridges", "properties": { "bridge": { "type": "string", "description": "Name of bridge to manage" }, "state": { "type": "string", "description": "Default: present\n\nWhether the bridge should exist" }, "fail_mode": { "type": "string", "description": "Default: None\n\nSet bridge fail-mode. The default value (None) is a No-op." }, "external_ids": { "type": "object", "description": "Default: None\n\nA dictionary of external-ids. Omitting this parameter is a No-op. To clear all external-ids pass an empty value." }, "timeout": { "type": "string", "description": "Default: 5\n\nHow long to wait for ovs-vswitchd to respond" } } }, "digital_ocean_domain": { "type": "object", "description": "Create/delete a DNS record in DigitalOcean.", "properties": { "ip": { "type": "string", "description": "The IP address to point a domain at." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "id": { "type": "string", "description": "Numeric, the droplet id you want to operate on." }, "name": { "type": "string", "description": "String, this is the name of the droplet - must be formatted by hostname rules, or the name of a SSH key, or the name of a domain." }, "api_token": { "type": "string", "description": "DigitalOcean api token." } } }, "oneview_network_set": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage Network Set resources. Can create, update, or delete.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired state for the Network Set resource. - C(present) will ensure data properties are compliant with OneView. - C(absent) will remove the resource from OneView, if it exists." }, "data": { "type": "array", "description": "List with the Network Set properties." } } }, "panos_mgtconfig": { "required": [ "password", "ip_address" ], "type": "object", "description": "Configure management settings of device", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "panorama_primary": { "type": "string", "description": "Default: None\n\naddress of primary Panorama server" }, "dns_server_secondary": { "type": "string", "description": "Default: None\n\naddress of secondary DNS server" }, "dns_server_primary": { "type": "string", "description": "Default: None\n\naddress of primary DNS server" }, "panorama_secondary": { "type": "string", "description": "Default: None\n\naddress of secondary Panorama server" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "panos_sag": { "required": [ "static_match_filter", "sag_name", "operation", "password", "ip_address" ], "type": "object", "description": "Create a static address group object in the firewall used for policy rules.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "password": { "type": "string", "description": "password for authentication" }, "devicegroup": { "type": "string", "description": "Default: None\n\n- The name of the Panorama device group. The group must exist on Panorama. If device group is not defined it is assumed that we are contacting a firewall.\n" }, "description": { "type": "string", "description": "The purpose / objective of the static Address Group" }, "tags": { "type": "string", "description": "Tags to be associated with the address group" }, "static_match_filter": { "type": "string", "description": "Static filter user by the address group" }, "sag_name": { "type": "string", "description": "name of the dynamic address group" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "operation": { "type": "string", "description": "The operation to perform Supported values are I(add)/I(list)/I(delete)." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "tower_job_list": { "type": "object", "description": "List Ansible Tower jobs. See U(https://www.ansible.com/tower) for an overview.", "properties": { "status": { "type": "string", "description": "Only list jobs with this status." }, "query": { "type": "string", "description": "Query used to further filter the list of jobs. {\"foo\":\"bar\"} will be passed at ?foo=bar" }, "page": { "type": "string", "description": "Page number of the results to fetch." }, "all_pages": { "type": "string", "description": "Fetch all the pages and return a single result." } } }, "avi_authprofile": { "required": [ "name", "type" ], "type": "object", "description": "This module is used to configure AuthProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "http": { "type": "string", "description": "Http user authentication params." }, "uuid": { "type": "string", "description": "Uuid of the auth profile." }, "saml": { "type": "string", "description": "Saml settings.\nField introduced in 17.2.3." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "User defined description for the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "tacacs_plus": { "type": "string", "description": "Tacacs+ settings." }, "ldap": { "type": "string", "description": "Ldap server and directory settings." }, "type": { "type": "string", "description": "Type of the auth profile.\nEnum options - AUTH_PROFILE_LDAP, AUTH_PROFILE_TACACS_PLUS, AUTH_PROFILE_SAML." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the auth profile." } } }, "infini_fs": { "required": [ "name", "pool" ], "type": "object", "description": "This module creates, deletes or modifies filesystems on Infinibox.", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies file system when present or removes when absent." }, "name": { "type": "string", "description": "File system name." }, "pool": { "type": "string", "description": "Pool that will host file system." }, "size": { "type": "string", "description": "File system size in MB, GB or TB units. See examples." } } }, "ironware_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to a Brocade Ironware node and returns the results read from the device. This module includes a I(wait_for) argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retires as expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "mssql_db": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "db" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "db" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add or remove MSSQL databases from a remote host.", "properties": { "autocommit": { "type": "string", "description": "Automatically commit the change only if the import succeed. Sometimes it is necessary to use autocommit=true, since some content can't be changed within a transaction." }, "login_port": { "type": "string", "description": "Default: 1433\n\nPort of the MSSQL server. Requires login_host be defined as other then localhost if login_port is used" }, "name": { "type": "string", "description": "name of the database to add or remove" }, "login_user": { "type": "string", "description": "The username used to authenticate with" }, "login_host": { "type": "string", "description": "Host running the database" }, "db": { "type": "string", "description": "name of the database to add or remove" }, "state": { "type": "string", "description": "Default: present\n\nThe database state" }, "login_password": { "type": "string", "description": "The password used to authenticate with" }, "target": { "type": "string", "description": "Location, on the remote host, of the dump file to read from or write to. Uncompressed SQL files (C(.sql)) files are supported." } } }, "bigip_sys_db": { "required": [ "key" ], "type": "object", "description": "Manage BIG-IP system database variables", "properties": { "state": { "type": "string", "description": "Default: present\n\nThe state of the variable on the system. When C(present), guarantees that an existing variable is set to C(value). When C(reset) sets the variable back to the default value. At least one of value and state C(reset) are required." }, "value": { "type": "string", "description": "The value to set the key to. At least one of value and state C(reset) are required." }, "key": { "type": "string", "description": "The database variable to manipulate." } } }, "ovirt_external_provider_facts": { "required": [ "type" ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV external providers.", "properties": { "type": { "type": "string", "description": "Type of the external provider." }, "name": { "type": "string", "description": "Name of the external provider, can be used as glob expression." } } }, "nova_compute": { "required": [ "image_name", "image_id", "login_password", "login_username", "name", "login_tenant_name" ], "type": "object", "description": "Create or Remove virtual machines from Openstack.", "properties": { "availability_zone": { "type": "string", "description": "Default: None\n\nName of the availability zone" }, "image_exclude": { "type": "string", "description": "Text to use to filter image names, for the case, such as HP, where there are multiple image names matching the common identifying portions. image_exclude is a negative match filter - it is text that may not exist in the image name. Defaults to \"(deprecated)\"" }, "flavor_include": { "type": "string", "description": "Text to use to filter flavor names, for the case, such as Rackspace, where there are multiple flavors that have the same ram count. flavor_include is a positive match filter - it must exist in the flavor name." }, "meta": { "type": "string", "description": "Default: None\n\nA list of key value pairs that should be provided as a metadata to the new VM" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "wait_for": { "type": "string", "description": "Default: 180\n\nThe amount of time the module should wait for the VM to get into active state" }, "security_groups": { "type": "string", "description": "Default: None\n\nThe name of the security group to which the VM should be added" }, "scheduler_hints": { "type": "string", "description": "Default: None\n\nArbitrary key/value pairs to the scheduler for custom use" }, "nics": { "type": "string", "description": "Default: None\n\nA list of network id's to which the VM's interface should be attached" }, "floating_ips": { "type": "array", "description": "Default: None\n\nlist of valid floating IPs that pre-exist to assign to this node" }, "flavor_ram": { "type": "string", "description": "Default: 1\n\nThe minimum amount of ram in MB that the flavor in which the new VM has to be created must have. Mutually exclusive with flavor_id" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auto_floating_ip": { "type": "string", "description": "Default: no\n\nShould a floating ip be auto created and assigned" }, "config_drive": { "type": "string", "description": "Default: no\n\nWhether to boot the server with config drive enabled" }, "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "key_name": { "type": "string", "description": "Default: None\n\nThe key pair name to be used when creating a VM" }, "image_name": { "type": "string", "description": "Default: None\n\nThe name of the base image to boot. Mutually exclusive with image_id" }, "user_data": { "type": "string", "description": "Default: None\n\nOpaque blob of data which is made available to the instance" }, "image_id": { "type": "string", "description": "Default: None\n\nThe id of the base image to boot. Mutually exclusive with image_name" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "wait": { "type": "string", "description": "Default: yes\n\nIf the module should wait for the VM to be created." }, "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the instance" }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "flavor_id": { "type": "string", "description": "Default: 1\n\nThe id of the flavor in which the new VM has to be created. Mutually exclusive with flavor_ram" }, "floating_ip_pools": { "type": "array", "description": "Default: None\n\nlist of floating IP pools from which to choose a floating IP" } } }, "ipadm_if": { "required": [ "name" ], "type": "object", "description": "Create, delete, enable or disable IP interfaces on Solaris/illumos systems.", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreate or delete Solaris/illumos IP interfaces." }, "temporary": { "type": "string", "description": "Specifies that the IP interface is temporary. Temporary IP interfaces do not persist across reboots." }, "name": { "type": "string", "description": "IP interface name." } } }, "netapp_e_hostgroup": { "required": [ "ssid", "api_password", "state", "api_username", "api_url" ], "type": "object", "description": "Create, update or destroy host groups on a NetApp E-Series storage array.", "properties": { "new_name": { "type": "string", "description": "specify this when you need to update the name of a host group" }, "ssid": { "type": "string", "description": "The ID of the array to manage (as configured on the web services proxy)." }, "name": { "type": "string", "description": "The name of the host group to manage. Either this or C(id_num) must be supplied." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "hosts:": { "type": "string", "description": "a list of host names/labels to add to the group" }, "state": { "type": "string", "description": "Whether the specified host group should exist or not." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "id": { "type": "string", "description": "The id number of the host group to manage. Either this or C(name) must be supplied." }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." } } }, "ufw": { "allOf": [ { "allOf": [ { "not": { "required": [ "to_ip", "dest", "to" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "to_port", "port" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "from_ip", "from", "src" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "interface", "if" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "app" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "policy", "default" ], "type": "object" } } ] } ], "type": "object", "description": "Manage firewall with UFW.", "properties": { "comment": { "type": "string", "description": "Add a comment to the rule. Requires UFW version >=0.35." }, "to_port": { "type": "string", "description": "Destination port." }, "app": { "type": "string", "description": "Use profile located in C(/etc/ufw/applications.d)." }, "port": { "type": "string", "description": "Destination port." }, "if": { "type": "string", "description": "Specify interface for rule." }, "from": { "type": "string", "description": "Default: any\n\nSource IP address." }, "log": { "description": "Log new connections matched to this rule", "$ref": "#/definitions/ansible_truth" }, "proto": { "type": "string", "description": "TCP/IP protocol." }, "to": { "type": "string", "description": "Default: any\n\nDestination IP address." }, "state": { "type": "string", "description": "C(enabled) reloads firewall and enables firewall on boot.\nC(disabled) unloads firewall and disables firewall on boot.\nC(reloaded) reloads firewall.\nC(reset) disables and resets firewall to installation defaults." }, "policy": { "type": "string", "description": "Change the default policy for incoming or outgoing traffic." }, "direction": { "type": "string", "description": "Select direction for a rule or default policy command." }, "from_port": { "type": "string", "description": "Source port." }, "to_ip": { "type": "string", "description": "Default: any\n\nDestination IP address." }, "insert": { "type": "string", "description": "Insert the corresponding rule as rule number NUM" }, "dest": { "type": "string", "description": "Default: any\n\nDestination IP address." }, "from_ip": { "type": "string", "description": "Default: any\n\nSource IP address." }, "interface": { "type": "string", "description": "Specify interface for rule." }, "src": { "type": "string", "description": "Default: any\n\nSource IP address." }, "logging": { "type": "string", "description": "Toggles logging. Logged packets use the LOG_KERN syslog facility." }, "name": { "type": "string", "description": "Use profile located in C(/etc/ufw/applications.d)." }, "default": { "type": "string", "description": "Change the default policy for incoming or outgoing traffic." }, "route": { "description": "Apply the rule to routed/forwarded packets.", "$ref": "#/definitions/ansible_truth" }, "rule": { "type": "string", "description": "Add firewall rule" }, "delete": { "description": "Delete rule.", "$ref": "#/definitions/ansible_truth" } } }, "ce_acl_interface": { "required": [ "interface", "direction", "acl_name" ], "type": "object", "description": "Manages applying ACLs to interfaces on HUAWEI CloudEngine switches.", "properties": { "interface": { "type": "string", "description": "Interface name. Only support interface full name, such as \"40GE2/0/1\"." }, "direction": { "type": "string", "description": "Direction ACL to be applied in on the interface." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "acl_name": { "type": "string", "description": "ACL number or name. For a numbered rule group, the value ranging from 2000 to 4999. For a named rule group, the value is a string of 1 to 32 case-sensitive characters starting with a letter, spaces not supported." } } }, "katello": { "required": [ "username", "password", "params", "server_url", "entity" ], "type": "object", "description": "Allows the management of Katello resources inside your Foreman server.", "properties": { "username": { "type": "string", "description": "Username on Foreman server." }, "password": { "type": "string", "description": "Password for user accessing Foreman server." }, "params": { "type": "string", "description": "Parameters associated to the entity resource to set or edit in dictionary format (e.g. name, description)." }, "server_url": { "type": "string", "description": "URL of Foreman server." }, "entity": { "type": "string", "description": "The Foreman resource that the action will be performed on (e.g. organization, host)." } } }, "netscaler_gslb_site": { "type": "object", "description": "Manage gslb site entities in Netscaler.", "properties": { "naptrreplacementsuffix": { "type": "string", "description": "The naptr replacement suffix configured here will be used to construct the naptr replacement field in NAPTR record.\nMinimum length = 1" }, "siteipaddress": { "type": "string", "description": "IP address for the GSLB site. The GSLB site uses this IP address to communicate with other GSLB sites. For a local site, use any IP address that is owned by the appliance (for example, a SNIP or MIP address, or the IP address of the ADNS service).\nMinimum length = 1" }, "metricexchange": { "type": "string", "description": "Exchange metrics with other sites. Metrics are exchanged by using Metric Exchange Protocol (MEP). The appliances in the GSLB setup exchange health information once every second.\nIf you disable metrics exchange, you can use only static load balancing methods (such as round robin, static proximity, or the hash-based methods), and if you disable metrics exchange when a dynamic load balancing method (such as least connection) is in operation, the appliance falls back to round robin. Also, if you disable metrics exchange, you must use a monitor to determine the state of GSLB services. Otherwise, the service is marked as DOWN." }, "nwmetricexchange": { "type": "string", "description": "Exchange, with other GSLB sites, network metrics such as round-trip time (RTT), learned from communications with various local DNS (LDNS) servers used by clients. RTT information is used in the dynamic RTT load balancing method, and is exchanged every 5 seconds." }, "sitename": { "type": "string", "description": "Name for the GSLB site. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Cannot be changed after the virtual server is created.\nMinimum length = 1" }, "sitetype": { "type": "string", "description": "Type of site to create. If the type is not specified, the appliance automatically detects and sets the type on the basis of the IP address being assigned to the site. If the specified site IP address is owned by the appliance (for example, a MIP address or SNIP address), the site is a local site. Otherwise, it is a remote site." }, "sessionexchange": { "type": "string", "description": "Exchange persistent session entries with other GSLB sites every five seconds." }, "publicclip": { "type": "string", "description": "IP address to be used to globally access the remote cluster when it is deployed behind a NAT. It can be same as the normal cluster IP address." }, "publicip": { "type": "string", "description": "Public IP address for the local site. Required only if the appliance is deployed in a private address space and the site has a public IP address hosted on an external firewall or a NAT device.\nMinimum length = 1" }, "parentsite": { "type": "string", "description": "Parent site of the GSLB site, in a parent-child topology." }, "clip": { "type": "string", "description": "Cluster IP address. Specify this parameter to connect to the remote cluster site for GSLB auto-sync. Note: The cluster IP address is defined when creating the cluster." }, "triggermonitor": { "type": "string", "description": "Specify the conditions under which the GSLB service must be monitored by a monitor, if one is bound. Available settings function as follows:\n* C(ALWAYS) - Monitor the GSLB service at all times.\n* C(MEPDOWN) - Monitor the GSLB service only when the exchange of metrics through the Metrics Exchange Protocol (MEP) is disabled.\nC(MEPDOWN_SVCDOWN) - Monitor the service in either of the following situations:\n* The exchange of metrics through MEP is disabled.\n* The exchange of metrics through MEP is enabled but the status of the service, learned through metrics exchange, is DOWN." } } }, "bigip_device_httpd": { "type": "object", "description": "Manages HTTPD related settings on the BIG-IP. These settings are interesting to change when you want to set GUI timeouts and other TMUI related settings.", "properties": { "auth_pam_validate_ip": { "description": "Sets the authPamValidateIp setting.", "$ref": "#/definitions/ansible_truth" }, "hostname_lookup": { "description": "Sets whether or not to display the hostname, if possible.", "$ref": "#/definitions/ansible_truth" }, "log_level": { "type": "string", "description": "Sets the minimum httpd log level." }, "redirect_http_to_https": { "description": "Whether or not to redirect http requests to the GUI to https.", "$ref": "#/definitions/ansible_truth" }, "auth_pam_dashboard_timeout": { "description": "Sets whether or not the BIG-IP dashboard will timeout.", "$ref": "#/definitions/ansible_truth" }, "auth_name": { "type": "string", "description": "Sets the BIG-IP authentication realm name." }, "fast_cgi_timeout": { "type": "string", "description": "Sets the timeout of FastCGI." }, "allow": { "type": "string", "description": "Specifies, if you have enabled HTTPD access, the IP address or address range for other systems that can communicate with this system." }, "ssl_port": { "type": "string", "description": "The HTTPS port to listen on." }, "auth_pam_idle_timeout": { "type": "string", "description": "Sets the GUI timeout for automatic logout, in seconds." }, "max_clients": { "type": "string", "description": "Sets the maximum number of clients that can connect to the GUI at once." } } }, "service_facts": { "type": "object", "description": "Return service state information as fact data for various service management utilities", "properties": {} }, "junos_logging": { "type": "object", "description": "This module provides declarative management of logging on Juniper JUNOS devices.", "properties": { "files": { "type": "string", "description": "Number of files to be archived, this is applicable if value of I(dest) is C(file). The acceptable value is in range from 1 to 1000." }, "name": { "type": "string", "description": "If value of C(dest) is I(file) it indicates file-name, for I(user) it indicates username and for I(host) indicates the host name to be notified." }, "facility": { "type": "string", "description": "Set logging facility." }, "dest": { "type": "string", "description": "Destination of the logs." }, "level": { "type": "string", "description": "Set logging severity levels." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." }, "rotate_frequency": { "type": "string", "description": "Rotate log frequency in minutes, this is applicable if value of I(dest) is C(file). The acceptable value is in range of 1 to 59. This controls the frequency after which log file is rotated." }, "size": { "type": "string", "description": "Size of the file in archive, this is applicable if value of I(dest) is C(file). The acceptable value is in range from 65536 to 1073741824 bytes." } } }, "digital_ocean_tag": { "required": [ "name" ], "type": "object", "description": "Create and remove tag(s) to DigitalOcean resource.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the tag should be present or absent on the resource." }, "api_token": { "type": "string", "description": "DigitalOcean api token." }, "name": { "type": "string", "description": "The name of the tag. The supported characters for names include alphanumeric characters, dashes, and underscores." }, "resource_type": { "type": "string", "description": "Default: droplet\n\nThe type of resource to operate on. Currently only tagging of droplets is supported." }, "resource_id": { "type": "string", "description": "The ID of the resource to operate on." } } }, "ucs_san_connectivity": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures SAN Connectivity Policies on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "vhba_list": { "type": "array", "description": "List of vHBAs used by the SAN Connectivity Policy.\nvHBAs used by the SAN Connectivity Policy must be created from a vHBA template.\nEach list element has the following suboptions:\n= name\n The name of the virtual HBA (required).\n= vhba_template\n The name of the virtual HBA template (required).\n- adapter_policy\n The name of the Fibre Channel adapter policy.\n A user defined policy can be used, or one of the system defined policies (default, Linux, Solaris, VMware, Windows, WindowsBoot)\n [Default: default]\n- order\n String specifying the vHBA assignment order (e.g., '1', '2').\n [Default: unspecified]" }, "description": { "type": "string", "description": "A description of the policy.\nCisco recommends including information about where and when to use the policy.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "descr": { "type": "string", "description": "A description of the policy.\nCisco recommends including information about where and when to use the policy.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify SAN Connectivity Policies are present and will create if needed.\nIf C(absent), will verify SAN Connectivity Policies are absent and will delete if needed." }, "wwnn_pool": { "type": "string", "description": "Default: default\n\nName of the WWNN pool to use for WWNN assignment." }, "name": { "type": "string", "description": "The name of the SAN Connectivity Policy.\nThis name can be between 1 and 16 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the policy is created." } } }, "zabbix_host": { "required": [ "host_name" ], "type": "object", "description": "This module allows you to create, modify and delete Zabbix host entries and associated group and template data.", "properties": { "force": { "type": "string", "description": "Default: yes\n\nOverwrite the host configuration, even if already present" }, "host_groups": { "type": "array", "description": "List of host groups the host is part of." }, "ipmi_username": { "type": "string", "description": "IPMI username.\nalso see the last note in the I(ipmi_authtype) documentation" }, "ipmi_authtype": { "type": "string", "description": "IPMI authentication algorithm.\nPlease review the Host object documentation for more information on the supported properties\nhttps://www.zabbix.com/documentation/3.4/manual/api/reference/host/object\nPossible values are, C(0) (none), C(1) (MD2), C(2) (MD5), C(4) (straight), C(5) (OEM), C(6) (RMCP+), with -1 being the API default.\nPlease note that the Zabbix API will treat absent settings as default when updating any of the I(ipmi_)-options; this means that if you attempt to set any of the four options individually, the rest will be reset to default values." }, "inventory_zabbix": { "type": "string", "description": "Add Facts for a zabbix inventory (e.g. Tag) (see example below).\nPlease review the interface documentation for more information on the supported properties\nhttps://www.zabbix.com/documentation/3.2/manual/api/reference/host/object#host_inventory" }, "tls_psk": { "type": "string", "description": "The preshared key, at least 32 hex digits. Required if either tls_connect or tls_accept has PSK enabled.\nWorks only with >= Zabbix 3.0" }, "ipmi_privilege": { "type": "string", "description": "IPMI privilege level.\nPlease review the Host object documentation for more information on the supported properties\nhttps://www.zabbix.com/documentation/3.4/manual/api/reference/host/object\nPossible values are C(1) (callback), C(2) (user), C(3) (operator), C(4) (admin), C(5) (OEM), with C(2) being the API default.\nalso see the last note in the I(ipmi_authtype) documentation" }, "visible_name": { "type": "string", "description": "Visible name of the host in Zabbix." }, "state": { "type": "string", "description": "Default: present\n\nState of the host.\nOn C(present), it will create if host does not exist or update the host if the associated data is different.\nOn C(absent) will remove a host if it exists." }, "status": { "type": "string", "description": "Default: enabled\n\nMonitoring status of the host." }, "inventory_mode": { "type": "string", "description": "Configure the inventory mode." }, "description": { "type": "string", "description": "Description of the host in Zabbix." }, "interfaces": { "type": "array", "description": "List of interfaces to be created for the host (see example below).\nAvailable keys are: I(dns), I(ip), I(main), I(port), I(type), I(useip), and I(bulk).\nPlease review the interface documentation for more information on the supported properties\nhttps://www.zabbix.com/documentation/2.0/manual/appendix/api/hostinterface/definitions#host_interface\nIf an interface definition is incomplete, this module will attempt to fill in sensible values.\nI(type) can also be C(agent), C(snmp), C(ipmi), or C(jmx) instead of its numerical value." }, "tls_accept": { "type": "string", "description": "Default: 1\n\nSpecifies what types of connections are allowed for incoming connections.\nThe tls_accept parameter accepts values of 1 to 7\nPossible values, 1 (no encryption), 2 (PSK), 4 (certificate).\nValues can be combined.\nWorks only with >= Zabbix 3.0" }, "proxy": { "type": "string", "description": "Default: None\n\nThe name of the Zabbix Proxy to be used" }, "ipmi_password": { "type": "string", "description": "IPMI password.\nalso see the last note in the I(ipmi_authtype) documentation" }, "tls_issuer": { "type": "string", "description": "Required certificate issuer.\nWorks only with >= Zabbix 3.0" }, "tls_psk_identity": { "type": "string", "description": "PSK value is a hard to guess string of hexadecimal digits.\nIt is a unique name by which this specific PSK is referred to by Zabbix components\nDo not put sensitive information in PSK identity string, it is transmitted over the network unencrypted.\nWorks only with >= Zabbix 3.0" }, "tls_connect": { "type": "string", "description": "Default: 1\n\nSpecifies what encryption to use for outgoing connections.\nThe tls_connect parameter accepts values of 1 to 7\nPossible values, 1 (no encryption), 2 (PSK), 4 (certificate).\nValues can be combined.\nWorks only with >= Zabbix 3.0" }, "host_name": { "type": "string", "description": "Name of the host in Zabbix.\nhost_name is the unique identifier used and cannot be updated using this module." }, "tls_subject": { "type": "string", "description": "Required certificate subject.\nWorks only with >= Zabbix 3.0" }, "link_templates": { "type": "array", "description": "Default: None\n\nList of templates linked to the host." } } }, "docker_image_facts": { "required": [ "name" ], "type": "object", "description": "Provide one or more image names, and the module will inspect each, returning an array of inspection results.", "properties": { "name": { "type": "string", "description": "An image name or a list of image names. Name format will be name[:tag] or repository/name[:tag], where tag is optional. If a tag is not provided, 'latest' will be used." } } }, "enos_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to an ENOS node and returns the results read from the device. The C(enos_command) module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retires as expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "profitbricks_nic": { "required": [ "datacenter", "lan", "name", "server" ], "type": "object", "description": "This module allows you to create or restore a volume snapshot. This module has a dependency on profitbricks >= 1.0.0", "properties": { "datacenter": { "type": "string", "description": "The datacenter in which to operate." }, "lan": { "type": "string", "description": "The LAN to place the NIC on. You can pass a LAN that doesn't exist and it will be created. Required on create." }, "name": { "type": "string", "description": "The name or ID of the NIC. This is only required on deletes, but not on create." }, "subscription_user": { "type": "string", "description": "The ProfitBricks username. Overrides the PB_SUBSCRIPTION_ID environment variable." }, "server": { "type": "string", "description": "The server name or ID." }, "subscription_password": { "type": "string", "description": "THe ProfitBricks password. Overrides the PB_PASSWORD environment variable." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the operation to complete before returning" } } }, "quantum_floating_ip": { "required": [ "login_password", "instance_name", "login_tenant_name", "login_username", "network_name" ], "type": "object", "description": "Add or Remove a floating IP to an instance", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "internal_network_name": { "type": "string", "description": "Default: None\n\nThe name of the network of the port to associate with the floating ip. Necessary when VM multiple networks." }, "instance_name": { "type": "string", "description": "Default: None\n\nThe name of the instance to which the IP address should be assigned" }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "network_name": { "type": "string", "description": "Default: None\n\nName of the network from which IP has to be assigned to VM. Please make sure the network is an external network" } } }, "ovirt_networks": { "required": [ "name" ], "type": "object", "description": "Module to manage logical networks in oVirt/RHV", "properties": { "comment": { "type": "string", "description": "Comment of the network." }, "description": { "type": "string", "description": "Description of the network." }, "mtu": { "type": "string", "description": "Maximum transmission unit (MTU) of the network." }, "state": { "type": "string", "description": "Default: present\n\nShould the network be present or absent" }, "vm_network": { "type": "string", "description": "If I(True) network will be marked as network for VM.\nVM network carries traffic relevant to the virtual machine." }, "data_center": { "type": "string", "description": "Datacenter name where network reside." }, "clusters": { "type": "array", "description": "List of dictionaries describing how the network is managed in specific cluster.\nC(name) - Cluster name.\nC(assigned) - I(true) if the network should be assigned to cluster. Default is I(true).\nC(required) - I(true) if the network must remain operational for all hosts associated with this network.\nC(display) - I(true) if the network should marked as display network.\nC(migration) - I(true) if the network should marked as migration network.\nC(gluster) - I(true) if the network should marked as gluster network." }, "vlan_tag": { "type": "string", "description": "Specify VLAN tag." }, "label": { "type": "string", "description": "Name of the label to assign to the network." }, "name": { "type": "string", "description": "Name of the network to manage." } } }, "cs_account": { "required": [ "name" ], "type": "object", "description": "Create, disable, lock, enable and remove accounts.", "properties": { "username": { "type": "string", "description": "Username of the user to be created if account did not exist.\nRequired on C(state=present)." }, "first_name": { "type": "string", "description": "First name of the user to be created if account did not exist.\nRequired on C(state=present)." }, "last_name": { "type": "string", "description": "Last name of the user to be created if account did not exist.\nRequired on C(state=present)." }, "account_type": { "type": "string", "description": "Default: user\n\nType of the account." }, "name": { "type": "string", "description": "Name of account." }, "network_domain": { "type": "string", "description": "Network domain of the account." }, "domain": { "type": "string", "description": "Default: ROOT\n\nDomain the account is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the account.\nC(unlocked) is an alias for C(enabled)." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "timezone": { "type": "string", "description": "Timezone of the user to be created if account did not exist." }, "password": { "type": "string", "description": "Password of the user to be created if account did not exist.\nRequired on C(state=present)." }, "email": { "type": "string", "description": "Email of the user to be created if account did not exist.\nRequired on C(state=present)." } } }, "vdirect_file": { "required": [ "vdirect_user", "file_name", "vdirect_ip", "vdirect_password" ], "type": "object", "description": "Uploads a new or updates an existing configuration template or workflow template into the Radware vDirect server. All parameters may be set as environment variables.", "properties": { "vdirect_user": { "type": "string", "description": "Default: None\n\nvDirect server username, may be set as VDIRECT_USER environment variable." }, "vdirect_https_port": { "type": "string", "description": "Default: 2189\n\nvDirect server HTTPS port number, may be set as VDIRECT_HTTPS_PORT environment variable." }, "vdirect_validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated,\nmay be set as VDIRECT_VALIDATE_CERTS or VDIRECT_VERIFY environment variable.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "file_name": { "type": "string", "description": "vDirect runnable file name to be uploaded.\nMay be velocity configuration template (.vm) or workflow template zip file (.zip)." }, "vdirect_timeout": { "type": "string", "description": "Default: 60\n\nAmount of time to wait for async operation completion [seconds],\nmay be set as VDIRECT_TIMEOUT environment variable." }, "vdirect_wait": { "description": "Default: yes\n\nWait for async operation to complete, may be set as VDIRECT_WAIT environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_ip": { "type": "string", "description": "Primary vDirect server IP address, may be set as VDIRECT_IP environment variable." }, "vdirect_password": { "type": "string", "description": "Default: None\n\nvDirect server password, may be set as VDIRECT_PASSWORD environment variable." }, "vdirect_secondary_ip": { "type": "string", "description": "Default: None\n\nSecondary vDirect server IP address, may be set as VDIRECT_SECONDARY_IP environment variable." }, "vdirect_use_ssl": { "description": "Default: yes\n\nIf C(no), an HTTP connection will be used instead of the default HTTPS connection,\nmay be set as VDIRECT_HTTPS or VDIRECT_USE_SSL environment variable.", "$ref": "#/definitions/ansible_truth" }, "vdirect_http_port": { "type": "string", "description": "Default: 2188\n\nvDirect server HTTP port number, may be set as VDIRECT_HTTP_PORT environment variable." } } }, "lldp": { "type": "object", "description": "Reads data out of lldpctl", "properties": {} }, "quantum_network": { "required": [ "login_tenant_name", "login_password", "login_username", "name" ], "type": "object", "description": "Add or Remove network from OpenStack.", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nName of the region" }, "provider_network_type": { "type": "string", "description": "Default: None\n\nThe type of the network to be created, gre, vlan, local. Available types depend on the plugin. The Quantum service decides if not specified." }, "admin_state_up": { "type": "string", "description": "Default: True\n\nWhether the state should be marked as up or down" }, "router_external": { "type": "string", "description": "If 'yes', specifies that the virtual network is a external network (public)." }, "tenant_name": { "type": "string", "description": "Default: None\n\nThe name of the tenant for whom the network is created" }, "provider_physical_network": { "type": "string", "description": "Default: None\n\nThe physical network which would realize the virtual network for flat and vlan networks." }, "login_tenant_name": { "type": "string", "description": "Default: yes\n\nThe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nThe keystone url for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\nPassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "shared": { "type": "string", "description": "Whether this network is shared or not" }, "provider_segmentation_id": { "type": "string", "description": "Default: None\n\nThe id that has to be assigned to the network, in case of vlan networks that would be vlan id and for gre the tunnel id" }, "name": { "type": "string", "description": "Default: None\n\nName to be assigned to the network" } } }, "netscaler_lb_monitor": { "type": "object", "description": "Manage load balancing monitors.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.", "properties": { "lasversion": { "type": "string", "description": "Version number of the Citrix Advanced Access Control Logon Agent. Required by the C(CITRIX-AAC-LAS) monitor." }, "Snmpoid": { "type": "string", "description": "SNMP OID for C(SNMP) monitors.\nMinimum length = 1" }, "storefrontacctservice": { "description": "Enable/Disable probing for Account Service. Applicable only to Store Front monitors. For multi-tenancy configuration users my skip account service.", "$ref": "#/definitions/ansible_truth" }, "firmwarerevision": { "type": "string", "description": "Firmware-Revision value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers." }, "query": { "type": "string", "description": "Domain name to resolve as part of monitoring the DNS service (for example, C(example.com))." }, "authapplicationid": { "type": "array", "description": "List of Auth-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring CER message.\nMinimum value = C(0)\nMaximum value = C(4294967295)" }, "group": { "type": "string", "description": "Name of a newsgroup available on the NNTP service that is to be monitored. The appliance periodically generates an NNTP query for the name of the newsgroup and evaluates the response. If the newsgroup is found on the server, the service is marked as UP. If the newsgroup does not exist or if the search fails, the service is marked as DOWN. Applicable to NNTP monitors.\nMinimum length = 1" }, "maxforwards": { "type": "string", "description": "Maximum number of hops that the SIP request used for monitoring can traverse to reach the server. Applicable only to monitors of type C(SIP-UDP).\nMinimum value = C(0)\nMaximum value = C(255)" }, "send": { "type": "string", "description": "String to send to the service. Applicable to C(TCP-ECV), C(HTTP-ECV), and C(UDP-ECV) monitors." }, "rtsprequest": { "type": "string", "description": "RTSP request to send to the server (for example, C(\"OPTIONS *\"))." }, "trofscode": { "type": "string", "description": "Code expected when the server is under maintenance." }, "monitorname": { "type": "string", "description": "Name for the monitor. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore, hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters.\nMinimum length = 1" }, "units1": { "type": "string", "description": "Unit of measurement for the Deviation parameter. Cannot be changed after the monitor is created." }, "units3": { "type": "string", "description": "monitor interval units." }, "units2": { "type": "string", "description": "Unit of measurement for the Down Time parameter. Cannot be changed after the monitor is created." }, "respcode": { "type": "string", "description": "Response codes for which to mark the service as UP. For any other response code, the action performed depends on the monitor type. C(HTTP) monitors and C(RADIUS) monitors mark the service as C(DOWN), while C(HTTP-INLINE) monitors perform the action indicated by the Action parameter." }, "scriptargs": { "type": "string", "description": "String of arguments for the script. The string is copied verbatim into the request." }, "resptimeout": { "type": "string", "description": "Amount of time for which the appliance must wait before it marks a probe as FAILED. Must be less than the value specified for the Interval parameter.\nNote: For C(UDP-ECV) monitors for which a receive string is not configured, response timeout does not apply. For C(UDP-ECV) monitors with no receive string, probe failure is indicated by an ICMP port unreachable error received from the service.\nMinimum value = C(1)\nMaximum value = C(20939)" }, "downtime": { "type": "string", "description": "Time duration for which to wait before probing a service that has been marked as DOWN. Expressed in milliseconds, seconds, or minutes.\nMinimum value = C(1)\nMaximum value = C(20939)" }, "password": { "type": "string", "description": "Password that is required for logging on to the C(RADIUS), C(NNTP), C(FTP), C(FTP-EXTENDED), C(MYSQL), C(MSSQL), C(POP3), C(CITRIX-AG), C(CITRIX-XD-DDC), C(CITRIX-WI-EXTENDED), C(CITRIX-XNC-ECV) or C(CITRIX-XDM) server. Used in conjunction with the user name specified for the C(username) parameter.\nMinimum length = 1" }, "transparent": { "description": "The monitor is bound to a transparent device such as a firewall or router. The state of a transparent device depends on the responsiveness of the services behind it. If a transparent device is being monitored, a destination IP address must be specified. The probe is sent to the specified IP address by using the MAC address of the transparent device.", "$ref": "#/definitions/ansible_truth" }, "failureretries": { "type": "string", "description": "Number of retries that must fail, out of the number specified for the Retries parameter, for a service to be marked as DOWN. For example, if the Retries parameter is set to 10 and the Failure Retries parameter is set to 6, out of the ten probes sent, at least six probes must fail if the service is to be marked as DOWN. The default value of 0 means that all the retries must fail if the service is to be marked as DOWN.\nMinimum value = C(0)\nMaximum value = C(32)" }, "radkey": { "type": "string", "description": "Authentication key (shared secret text string) for RADIUS clients and servers to exchange. Applicable to monitors of type C(RADIUS) and C(RADIUS_ACCOUNTING).\nMinimum length = 1" }, "productname": { "type": "string", "description": "Product-Name value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.\nMinimum length = 1" }, "oraclesid": { "type": "string", "description": "Name of the service identifier that is used to connect to the Oracle database during authentication.\nMinimum length = 1" }, "radaccounttype": { "type": "string", "description": "Account Type to be used in Account Request Packet. Applicable to monitors of type C(RADIUS_ACCOUNTING).\nMinimum value = 0\nMaximum value = 15" }, "binddn": { "type": "string", "description": "The distinguished name with which an LDAP monitor can perform the Bind operation on the LDAP server. Optional. Applicable to C(LDAP) monitors.\nMinimum length = 1" }, "domain": { "type": "string", "description": "Domain in which the XenDesktop Desktop Delivery Controller (DDC) servers or Web Interface servers are present. Required by C(CITRIX-XD-DDC) and C(CITRIX-WI-EXTENDED) monitors for logging on to the DDC servers and Web Interface servers, respectively." }, "resptimeoutthresh": { "type": "string", "description": "Response time threshold, specified as a percentage of the Response Time-out parameter. If the response to a monitor probe has not arrived when the threshold is reached, the appliance generates an SNMP trap called monRespTimeoutAboveThresh. After the response time returns to a value below the threshold, the appliance generates a monRespTimeoutBelowThresh SNMP trap. For the traps to be generated, the \"MONITOR-RTO-THRESHOLD\" alarm must also be enabled.\nMinimum value = C(0)\nMaximum value = C(100)" }, "hostipaddress": { "type": "string", "description": "Host-IP-Address value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. If Host-IP-Address is not specified, the appliance inserts the mapped IP (MIP) address or subnet IP (SNIP) address from which the CER request (the monitoring probe) is sent.\nMinimum length = 1" }, "sipuri": { "type": "string", "description": "SIP URI string to send to the service (for example, C(sip:sip.test)). Applicable only to monitors of type C(SIP-UDP).\nMinimum length = 1" }, "vendorspecificvendorid": { "type": "string", "description": "Vendor-Id to use in the Vendor-Specific-Application-Id grouped attribute-value pair (AVP) in the monitoring CER message. To specify Auth-Application-Id or Acct-Application-Id in Vendor-Specific-Application-Id, use vendorSpecificAuthApplicationIds or vendorSpecificAcctApplicationIds, respectively. Only one Vendor-Id is supported for all the Vendor-Specific-Application-Id AVPs in a CER monitoring message.\nMinimum value = 1" }, "scriptname": { "type": "string", "description": "Path and name of the script to execute. The script must be available on the NetScaler appliance, in the /nsconfig/monitors/ directory.\nMinimum length = 1" }, "originrealm": { "type": "string", "description": "Origin-Realm value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.\nMinimum length = 1" }, "radmsisdn": { "type": "string", "description": "Calling Stations Id to be used in Account Request Packet. Applicable to monitors of type C(RADIUS_ACCOUNTING).\nMinimum length = 1" }, "trofsstring": { "type": "string", "description": "String expected from the server for the service to be marked as trofs. Applicable to HTTP-ECV/TCP-ECV monitors." }, "kcdaccount": { "type": "string", "description": "KCD Account used by C(MSSQL) monitor.\nMinimum length = 1\nMaximum length = 32" }, "filename": { "type": "string", "description": "Name of a file on the FTP server. The appliance monitors the FTP service by periodically checking the existence of the file on the server. Applicable to C(FTP-EXTENDED) monitors.\nMinimum length = 1" }, "state": { "type": "string", "description": "State of the monitor. The C(disabled) setting disables not only the monitor being configured, but all monitors of the same type, until the parameter is set to C(enabled). If the monitor is bound to a service, the state of the monitor is not taken into account when the state of the service is determined." }, "netprofile": { "type": "string", "description": "Name of the network profile.\nMinimum length = 1\nMaximum length = 127" }, "alertretries": { "type": "string", "description": "Number of consecutive probe failures after which the appliance generates an SNMP trap called monProbeFailed.\nMinimum value = C(0)\nMaximum value = C(32)" }, "radaccountsession": { "type": "string", "description": "Account Session ID to be used in Account Request Packet. Applicable to monitors of type C(RADIUS_ACCOUNTING).\nMinimum length = 1" }, "recv": { "type": "string", "description": "String expected from the server for the service to be marked as UP. Applicable to C(TCP-ECV), C(HTTP-ECV), and C(UDP-ECV) monitors." }, "basedn": { "type": "string", "description": "The base distinguished name of the LDAP service, from where the LDAP server can begin the search for the attributes in the monitoring query. Required for C(LDAP) service monitoring.\nMinimum length = 1" }, "mssqlprotocolversion": { "type": "string", "description": "Version of MSSQL server that is to be monitored." }, "dispatcherport": { "type": "string", "description": "Port number on which the dispatcher listens for the monitoring probe." }, "querytype": { "type": "string", "description": "Type of DNS record for which to send monitoring queries. Set to C(Address) for querying A records, C(AAAA) for querying AAAA records, and C(Zone) for querying the SOA record." }, "tosid": { "type": "string", "description": "The TOS ID of the specified destination IP. Applicable only when the TOS parameter is set.\nMinimum value = C(1)\nMaximum value = C(63)" }, "reverse": { "description": "Mark a service as DOWN, instead of UP, when probe criteria are satisfied, and as UP instead of DOWN when probe criteria are not satisfied.", "$ref": "#/definitions/ansible_truth" }, "storename": { "type": "string", "description": "Store Name. For monitors of type C(STOREFRONT), C(storename) is an optional argument defining storefront service store name. Applicable to C(STOREFRONT) monitors.\nMinimum length = 1" }, "lrtm": { "type": "string", "description": "Calculate the least response times for bound services. If this parameter is not enabled, the appliance does not learn the response times of the bound services. Also used for LRTM load balancing." }, "filter": { "type": "string", "description": "Filter criteria for the LDAP query. Optional.\nMinimum length = 1" }, "evalrule": { "type": "string", "description": "Default syntax expression that evaluates the database server's response to a MYSQL-ECV or MSSQL-ECV monitoring query. Must produce a Boolean result. The result determines the state of the server. If the expression returns TRUE, the probe succeeds.\nFor example, if you want the appliance to evaluate the error message to determine the state of the server, use the rule C(MYSQL.RES.ROW(10) .TEXT_ELEM(2).EQ(\"MySQL\"))." }, "secure": { "description": "Use a secure SSL connection when monitoring a service. Applicable only to TCP based monitors. The secure option cannot be used with a C(CITRIX-AG) monitor, because a CITRIX-AG monitor uses a secure connection by default.", "$ref": "#/definitions/ansible_truth" }, "radnasip": { "type": "string", "description": "Network Access Server (NAS) IP address to use as the source IP address when monitoring a RADIUS server. Applicable to monitors of type C(RADIUS) and C(RADIUS_ACCOUNTING)." }, "radnasid": { "type": "string", "description": "NAS-Identifier to send in the Access-Request packet. Applicable to monitors of type C(RADIUS).\nMinimum length = 1" }, "ipaddress": { "type": "string", "description": "Set of IP addresses expected in the monitoring response from the DNS server, if the record type is A or AAAA. Applicable to C(DNS) monitors.\nMinimum length = 1" }, "storedb": { "type": "string", "description": "Store the database list populated with the responses to monitor probes. Used in database specific load balancing if C(MSSQL-ECV)/C(MYSQL-ECV) monitor is configured." }, "vendorid": { "type": "string", "description": "Vendor-Id value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers." }, "storefrontcheckbackendservices": { "description": "This option will enable monitoring of services running on storefront server. Storefront services are monitored by probing to a Windows service that runs on the Storefront server and exposes details of which storefront services are running.", "$ref": "#/definitions/ansible_truth" }, "tos": { "description": "Probe the service by encoding the destination IP address in the IP TOS (6) bits.", "$ref": "#/definitions/ansible_truth" }, "successretries": { "type": "string", "description": "Number of consecutive successful probes required to transition a service's state from DOWN to UP.\nMinimum value = C(1)\nMaximum value = C(32)" }, "iptunnel": { "description": "Send the monitoring probe to the service through an IP tunnel. A destination IP address must be specified.", "$ref": "#/definitions/ansible_truth" }, "type": { "type": "string", "description": "Type of monitor that you want to create." }, "username": { "type": "string", "description": "User name with which to probe the C(RADIUS), C(NNTP), C(FTP), C(FTP-EXTENDED), C(MYSQL), C(MSSQL), C(POP3), C(CITRIX-AG), C(CITRIX-XD-DDC), C(CITRIX-WI-EXTENDED), C(CITRIX-XNC) or C(CITRIX-XDM) server.\nMinimum length = 1" }, "sipreguri": { "type": "string", "description": "SIP user to be registered. Applicable only if the monitor is of type C(SIP-UDP) and the SIP Method parameter is set to C(REGISTER).\nMinimum length = 1" }, "retries": { "type": "string", "description": "Maximum number of probes to send to establish the state of a service for which a monitoring probe failed.\nMinimum value = C(1)\nMaximum value = C(127)" }, "snmpthreshold": { "type": "string", "description": "Threshold for C(SNMP) monitors.\nMinimum length = 1" }, "validatecred": { "description": "Validate the credentials of the Xen Desktop DDC server user. Applicable to monitors of type C(CITRIX-XD-DDC).", "$ref": "#/definitions/ansible_truth" }, "metrictable": { "type": "string", "description": "Metric table to which to bind metrics.\nMinimum length = 1\nMaximum length = 99" }, "acctapplicationid": { "type": "array", "description": "List of Acct-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message.\nMinimum value = C(0)\nMaximum value = C(4294967295)" }, "vendorspecificacctapplicationids": { "type": "array", "description": "List of Vendor-Specific-Acct-Application-Id attribute value pairs (AVPs) to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message. The specified value is combined with the value of vendorSpecificVendorId to obtain the Vendor-Specific-Application-Id AVP in the CER monitoring message.\nMinimum value = C(0)\nMaximum value = C(4294967295)" }, "secondarypassword": { "type": "string", "description": "Secondary password that users might have to provide to log on to the Access Gateway server. Applicable to C(CITRIX-AG) monitors." }, "attribute": { "type": "string", "description": "Attribute to evaluate when the LDAP server responds to the query. Success or failure of the monitoring probe depends on whether the attribute exists in the response. Optional.\nMinimum length = 1" }, "destip": { "type": "string", "description": "IP address of the service to which to send probes. If the parameter is set to 0, the IP address of the server to which the monitor is bound is considered the destination IP address." }, "snmpcommunity": { "type": "string", "description": "Community name for C(SNMP) monitors.\nMinimum length = 1" }, "units4": { "type": "string", "description": "monitor response timeout units." }, "httprequest": { "type": "string", "description": "HTTP request to send to the server (for example, C(\"HEAD /file.html\"))." }, "logonpointname": { "type": "string", "description": "Name of the logon point that is configured for the Citrix Access Gateway Advanced Access Control software. Required if you want to monitor the associated login page or Logon Agent. Applicable to C(CITRIX-AAC-LAS) and C(CITRIX-AAC-LOGINPAGE) monitors." }, "radapn": { "type": "string", "description": "Called Station Id to be used in Account Request Packet. Applicable to monitors of type C(RADIUS_ACCOUNTING).\nMinimum length = 1" }, "hostname": { "type": "string", "description": "Hostname in the FQDN format (Example: C(porche.cars.org)). Applicable to C(STOREFRONT) monitors.\nMinimum length = 1" }, "radframedip": { "type": "string", "description": "Source ip with which the packet will go out . Applicable to monitors of type C(RADIUS_ACCOUNTING)." }, "application": { "type": "string", "description": "Name of the application used to determine the state of the service. Applicable to monitors of type C(CITRIX-XML-SERVICE).\nMinimum length = 1" }, "deviation": { "type": "string", "description": "Time value added to the learned average response time in dynamic response time monitoring (DRTM). When a deviation is specified, the appliance learns the average response time of bound services and adds the deviation to the average. The final value is then continually adjusted to accommodate response time variations over time. Specified in milliseconds, seconds, or minutes.\nMinimum value = C(0)\nMaximum value = C(20939)" }, "supportedvendorids": { "type": "array", "description": "List of Supported-Vendor-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum eight of these AVPs are supported in a monitoring message.\nMinimum value = C(1)\nMaximum value = C(4294967295)" }, "inbandsecurityid": { "type": "string", "description": "Inband-Security-Id for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers." }, "sqlquery": { "type": "string", "description": "SQL query for a C(MYSQL-ECV) or C(MSSQL-ECV) monitor. Sent to the database server after the server authenticates the connection.\nMinimum length = 1" }, "action": { "type": "string", "description": "Action to perform when the response to an inline monitor (a monitor of type C(HTTP-INLINE)) indicates that the service is down. A service monitored by an inline monitor is considered C(DOWN) if the response code is not one of the codes that have been specified for the Response Code parameter.\nAvailable settings function as follows:\n* C(NONE) - Do not take any action. However, the show service command and the show lb monitor command indicate the total number of responses that were checked and the number of consecutive error responses received after the last successful probe.\n* C(LOG) - Log the event in NSLOG or SYSLOG.\n* C(DOWN) - Mark the service as being down, and then do not direct any traffic to the service until the configured down time has expired. Persistent connections to the service are terminated as soon as the service is marked as C(DOWN). Also, log the event in NSLOG or SYSLOG." }, "sipmethod": { "type": "string", "description": "SIP method to use for the query. Applicable only to monitors of type C(SIP-UDP)." }, "customheaders": { "type": "string", "description": "Custom header string to include in the monitoring probes." }, "sitepath": { "type": "string", "description": "URL of the logon page. For monitors of type C(CITRIX-WEB-INTERFACE), to monitor a dynamic page under the site path, terminate the site path with a slash C(/). Applicable to C(CITRIX-WEB-INTERFACE), C(CITRIX-WI-EXTENDED) and C(CITRIX-XDM) monitors.\nMinimum length = 1" }, "destport": { "type": "string", "description": "TCP or UDP port to which to send the probe. If the parameter is set to 0, the port number of the service to which the monitor is bound is considered the destination port. For a monitor of type C(USER), however, the destination port is the port number that is included in the HTTP request sent to the dispatcher. Does not apply to monitors of type C(PING)." }, "database": { "type": "string", "description": "Name of the database to connect to during authentication.\nMinimum length = 1" }, "interval": { "type": "string", "description": "Time interval between two successive probes. Must be greater than the value of Response Time-out.\nMinimum value = C(1)\nMaximum value = C(20940)" }, "originhost": { "type": "string", "description": "Origin-Host value for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers.\nMinimum length = 1" }, "vendorspecificauthapplicationids": { "type": "array", "description": "List of Vendor-Specific-Auth-Application-Id attribute value pairs (AVPs) for the Capabilities-Exchange-Request (CER) message to use for monitoring Diameter servers. A maximum of eight of these AVPs are supported in a monitoring message. The specified value is combined with the value of vendorSpecificVendorId to obtain the Vendor-Specific-Application-Id AVP in the CER monitoring message.\nMinimum value = C(0)\nMaximum value = C(4294967295)" }, "snmpversion": { "type": "string", "description": "SNMP version to be used for C(SNMP) monitors." }, "dispatcherip": { "type": "string", "description": "IP address of the dispatcher to which to send the probe." } } }, "bigip_software_update": { "type": "object", "description": "Manage the software update settings of a BIG-IP.", "properties": { "auto_phone_home": { "description": "Specifies whether to automatically send phone home data to the F5 Networks PhoneHome server.", "$ref": "#/definitions/ansible_truth" }, "auto_check": { "description": "Specifies whether to automatically check for updates on the F5 Networks downloads server.", "$ref": "#/definitions/ansible_truth" }, "frequency": { "type": "string", "description": "Specifies the schedule for the automatic update check." } } }, "vertica_schema": { "allOf": [ { "allOf": [ { "not": { "required": [ "create_roles", "create_role" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "usage_roles", "usage_role" ], "type": "object" } } ] } ], "type": "object", "description": "Adds or removes Vertica database schema and, optionally, roles with schema access privileges.\nA schema will not be removed until all the objects have been dropped.\nIn such a situation, if the module tries to remove the schema it will fail and only remove roles created for the schema if they have no dependencies.", "properties": { "create_roles": { "type": "string", "description": "Comma separated list of roles to create and grant usage and create access to the schema." }, "name": { "type": "string", "description": "Name of the schema to add or remove." }, "login_user": { "type": "string", "description": "Default: dbadmin\n\nThe username used to authenticate with." }, "db": { "type": "string", "description": "Name of the Vertica database." }, "state": { "type": "string", "description": "Default: present\n\nWhether to create C(present), or drop C(absent) a schema." }, "usage_roles": { "type": "string", "description": "Comma separated list of roles to create and grant usage access to the schema." }, "cluster": { "type": "string", "description": "Default: localhost\n\nName of the Vertica cluster." }, "usage_role": { "type": "string", "description": "Comma separated list of roles to create and grant usage access to the schema." }, "create_role": { "type": "string", "description": "Comma separated list of roles to create and grant usage and create access to the schema." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "owner": { "type": "string", "description": "Name of the user to set as owner of the schema." }, "port": { "type": "string", "description": "Default: 5433\n\nVertica cluster port to connect to." } } }, "win_firewall_rule": { "required": [ "direction", "name", "state", "action" ], "type": "object", "description": "allows you to create/remove/update firewall rules", "properties": { "profile": { "type": "string", "description": "Default: any\n\nthe profile this rule applies to, e.g. Domain,Private,Public" }, "remoteport": { "type": "string", "description": "Default: any\n\nthe remote port this rule applies to" }, "direction": { "type": "string", "description": "is this rule for inbound or outbound trafic" }, "enable": { "type": "string", "description": "Default: True\n\nis this firewall rule enabled or disabled" }, "protocol": { "type": "string", "description": "Default: any\n\nthe protocol this rule applies to" }, "name": { "type": "string", "description": "the rules name" }, "service": { "type": "string", "description": "Default: any\n\nthe service this rule applies to" }, "localport": { "type": "string", "description": "Default: any\n\nthe local port this rule applies to" }, "localip": { "type": "string", "description": "Default: any\n\nthe local ip address this rule applies to" }, "state": { "type": "string", "description": "Default: present\n\nshould this rule be added or removed" }, "program": { "type": "string", "description": "the program this rule applies to" }, "remoteip": { "type": "string", "description": "Default: any\n\nthe remote ip address/range this rule applies to" }, "action": { "type": "string", "description": "what to do with the items this rule is for" }, "force": { "type": "string", "description": "Enforces the change if a rule with different values exists" }, "description": { "type": "string", "description": "description for the firewall rule" } } }, "vmware_vm_shell": { "required": [ "vm_password", "vm_shell", "vm_username", "vm_id" ], "type": "object", "description": "Module allows user to run common system administration commands in the guest operating system.", "properties": { "datacenter": { "type": "string", "description": "The datacenter hosting the virtual machine.\nIf set, it will help to speed up virtual machine search." }, "vm_password": { "type": "string", "description": "The password used to login-in to the virtual machine." }, "vm_shell_cwd": { "type": "string", "description": "The current working directory of the application from which it will be run." }, "vm_shell_args": { "type": "string", "description": "Default: \n\nThe argument to the program." }, "vm_username": { "type": "string", "description": "The user to login-in to the virtual machine." }, "vm_shell_env": { "type": "string", "description": "Comma separated list of environment variable, specified in the guest OS notation." }, "vm_shell": { "type": "string", "description": "The absolute path to the program to start.\nOn Linux, shell is executed via bash." }, "cluster": { "type": "string", "description": "The cluster hosting the virtual machine.\nIf set, it will help to speed up virtual machine search." }, "vm_id_type": { "type": "string", "description": "Default: vm_name\n\nThe VMware identification method by which the virtual machine will be identified." }, "folder": { "type": "string", "description": "Default: /vm\n\nDestination folder, absolute or relative path to find an existing guest or create the new guest.\nThe folder should include the datacenter. ESX's datacenter is ha-datacenter\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2\n folder: vm/folder2\n folder: folder2" }, "vm_id": { "type": "string", "description": "Name of the virtual machine to work with." } } }, "ce_snmp_traps": { "type": "object", "description": "Manages SNMP traps configurations on HUAWEI CloudEngine switches.", "properties": { "trap_name": { "type": "string", "description": "Alarm trap name." }, "interface_type": { "type": "string", "description": "Interface type." }, "feature_name": { "type": "string", "description": "Alarm feature name." }, "port_number": { "type": "string", "description": "Source port number." }, "interface_number": { "type": "string", "description": "Interface number." } } }, "ovirt_disks": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "alias" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage Virtual Machine and floating disks in oVirt.", "properties": { "vm_name": { "type": "string", "description": "Name of the Virtual Machine to manage. Either C(vm_id) or C(vm_name) is required if C(state) is I(attached) or I(detached)." }, "profile": { "type": "string", "description": "Disk profile name to be attached to disk. By default profile is chosen by oVirt engine." }, "storage_domain": { "type": "string", "description": "Storage domain name where disk should be created. By default storage is chosen by oVirt engine." }, "name": { "type": "string", "description": "Name of the disk to manage. Either C(id) or C(name)/C(alias) is required." }, "format": { "type": "string", "description": "Format of the disk. Either copy-on-write or raw." }, "bootable": { "type": "string", "description": "I(True) if the disk should be bootable. By default when disk is created it isn't bootable." }, "logical_unit": { "type": "object", "description": "Dictionary which describes LUN to be directly attached to VM:\nC(address) - Address of the storage server. Used by iSCSI.\nC(port) - Port of the storage server. Used by iSCSI.\nC(target) - iSCSI target.\nC(lun_id) - LUN id.\nC(username) - CHAP Username to be used to access storage server. Used by iSCSI.\nC(password) - CHAP Password of the user to be used to access storage server. Used by iSCSI.\nC(storage_type) - Storage type either I(fcp) or I(iscsi)." }, "alias": { "type": "string", "description": "Name of the disk to manage. Either C(id) or C(name)/C(alias) is required." }, "state": { "type": "string", "description": "Default: present\n\nShould the Virtual Machine disk be present/absent/attached/detached." }, "shareable": { "type": "string", "description": "I(True) if the disk should be shareable. By default when disk is created it isn't shareable." }, "interface": { "type": "string", "description": "Default: virtio\n\nDriver of the storage interface." }, "vm_id": { "type": "string", "description": "ID of the Virtual Machine to manage. Either C(vm_id) or C(vm_name) is required if C(state) is I(attached) or I(detached)." }, "id": { "type": "string", "description": "ID of the disk to manage. Either C(id) or C(name) is required." }, "size": { "type": "string", "description": "Size of the disk. Size should be specified using IEC standard units. For example 10GiB, 1024MiB, etc." } } }, "netscaler_gslb_service": { "type": "object", "description": "Manage gslb service entities in Netscaler.", "properties": { "comment": { "type": "string", "description": "Any comments that you might want to associate with the GSLB service." }, "cnameentry": { "type": "string", "description": "Canonical name of the GSLB service. Used in CNAME-based GSLB.\nMinimum length = 1" }, "servername": { "type": "string", "description": "Name of the server hosting the GSLB service.\nMinimum length = 1" }, "servicename": { "type": "string", "description": "Name for the GSLB service. Must begin with an ASCII alphanumeric or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space, colon C(:), at C(@), equals C(=), and hyphen C(-) characters. Can be changed after the GSLB service is created.\n\nMinimum length = 1" }, "sitepersistence": { "type": "string", "description": "Use cookie-based site persistence. Applicable only to C(HTTP) and C(SSL) GSLB services." }, "monitor_bindings": { "type": "string", "description": "Bind monitors to this gslb service" }, "maxbandwidth": { "type": "string", "description": "Integer specifying the maximum bandwidth allowed for the service. A GSLB service whose bandwidth reaches the maximum is not considered when a GSLB decision is made, until its bandwidth consumption drops below the maximum." }, "publicport": { "type": "string", "description": "The public port associated with the GSLB service's public IP address. The port is mapped to the service's private port number. Applicable to the local GSLB service. Optional." }, "port": { "type": "string", "description": "Port on which the load balancing entity represented by this GSLB service listens.\nMinimum value = 1\nRange 1 - 65535\n* in CLI is represented as 65535 in NITRO API" }, "clttimeout": { "type": "string", "description": "Idle time, in seconds, after which a client connection is terminated. Applicable if connection proxy based site persistence is used.\nMinimum value = 0\nMaximum value = 31536000" }, "servicetype": { "type": "string", "description": "Type of service to create." }, "monthreshold": { "type": "string", "description": "Monitoring threshold value for the GSLB service. If the sum of the weights of the monitors that are bound to this GSLB service and are in the UP state is not equal to or greater than this threshold value, the service is marked as DOWN.\nMinimum value = C(0)\nMaximum value = C(65535)" }, "maxaaausers": { "type": "string", "description": "Maximum number of SSL VPN users that can be logged on concurrently to the VPN virtual server that is represented by this GSLB service. A GSLB service whose user count reaches the maximum is not considered when a GSLB decision is made, until the count drops below the maximum.\nMinimum value = C(0)\nMaximum value = C(65535)" }, "maxclient": { "type": "string", "description": "The maximum number of open connections that the service can support at any given time. A GSLB service whose connection count reaches the maximum is not considered when a GSLB decision is made, until the connection count drops below the maximum.\nMinimum value = C(0)\nMaximum value = C(4294967294)" }, "sitename": { "type": "string", "description": "Name of the GSLB site to which the service belongs.\nMinimum length = 1" }, "publicip": { "type": "string", "description": "The public IP address that a NAT device translates to the GSLB service's private IP address. Optional." }, "appflowlog": { "type": "string", "description": "Enable logging appflow flow information." }, "hashid": { "type": "string", "description": "Unique hash identifier for the GSLB service, used by hash based load balancing methods.\nMinimum value = C(1)" }, "ipaddress": { "type": "string", "description": "IP address for the GSLB service. Should represent a load balancing, content switching, or VPN virtual server on the NetScaler appliance, or the IP address of another load balancing device." }, "downstateflush": { "type": "string", "description": "Flush all active transactions associated with the GSLB service when its state transitions from UP to DOWN. Do not enable this option for services that must complete their transactions. Applicable if connection proxy based site persistence is used." }, "cipheader": { "type": "string", "description": "Name for the HTTP header that stores the client's IP address. Used with the Client IP option. If client IP header insertion is enabled on the service and a name is not specified for the header, the NetScaler appliance uses the name specified by the cipHeader parameter in the set ns param command or, in the GUI, the Client IP Header parameter in the Configure HTTP Parameters dialog box.\nMinimum length = 1" }, "siteprefix": { "type": "string", "description": "The site's prefix string. When the service is bound to a GSLB virtual server, a GSLB site domain is generated internally for each bound service-domain pair by concatenating the site prefix of the service and the name of the domain. If the special string NONE is specified, the site-prefix string is unset. When implementing HTTP redirect site persistence, the NetScaler appliance redirects GSLB requests to GSLB services by using their site domains." }, "cip": { "type": "string", "description": "In the request that is forwarded to the GSLB service, insert a header that stores the client's IP address. Client IP header insertion is used in connection-proxy based site persistence." }, "healthmonitor": { "description": "Monitor the health of the GSLB service.", "$ref": "#/definitions/ansible_truth" } } }, "ios_vrf": { "type": "object", "description": "This module provides declarative management of VRF definitions on Cisco IOS devices. It allows playbooks to manage individual or the entire VRF collection. It also supports purging VRF definitions from the configuration that are not explicitly defined.", "properties": { "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device." }, "description": { "type": "string", "description": "Provides a short description of the VRF definition in the current active configuration. The VRF definition value accepts alphanumeric characters used to provide additional information about the VRF." }, "route_import": { "type": "string", "description": "Adds an import list of extended route target communities to the VRF." }, "route_export": { "type": "string", "description": "Adds an export list of extended route target communities to the VRF." }, "interfaces": { "type": "string", "description": "Identifies the set of interfaces that should be configured in the VRF. Interfaces must be routed interfaces in order to be placed into a VRF." }, "rd": { "type": "string", "description": "The router-distinguisher value uniquely identifies the VRF to routing processes on the remote IOS system. The RD value takes the form of C(A:B) where C(A) and C(B) are both numeric values." }, "purge": { "type": "string", "description": "Instructs the module to consider the VRF definition absolute. It will remove any previously configured VRFs on the device." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the VRF definition as it relates to the device operational configuration. When set to I(present), the VRF should be configured in the device active configuration and when set to I(absent) the VRF should not be in the device active configuration" }, "vrfs": { "type": "string", "description": "The set of VRF definition objects to be configured on the remote IOS device. Ths list entries can either be the VRF name or a hash of VRF definitions and attributes. This argument is mutually exclusive with the C(name) argument." }, "route_both": { "type": "string", "description": "Adds an export and import list of extended route target communities to the VRF." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vrf C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vrf interfaces on device it will result in failure." }, "name": { "type": "string", "description": "The name of the VRF definition to be managed on the remote IOS device. The VRF definition name is an ASCII string name used to uniquely identify the VRF. This argument is mutually exclusive with the C(vrfs) argument" } } }, "win_uri": { "type": "object", "description": "Interacts with HTTP and HTTPS web services and supports Digest, Basic and WSSE HTTP authentication mechanisms.", "properties": { "body": { "type": "string", "description": "The body of the HTTP request/response to the web service." }, "url": { "type": "string", "description": "HTTP or HTTPS URL in the form of (http|https)://host.domain:port/path" }, "use_basic_parsing": { "type": "string", "description": "Default: True\n\nThis module relies upon 'Invoke-WebRequest', which by default uses the Internet Explorer Engine to parse a webpage. There's an edge-case where if a user hasn't run IE before, this will fail. The only advantage to using the Internet Explorer praser is that you can traverse the DOM in a powershell script. That isn't useful for Ansible, so by default we toggle 'UseBasicParsing'. However, you can toggle that off here." }, "headers": { "type": "string", "description": "Key Value pairs for headers. Example \"Host: www.somesite.com\"" }, "content_type": { "type": "string", "description": "Sets the \"Content-Type\" header." }, "method": { "type": "string", "description": "Default: GET\n\nThe HTTP Method of the request or response." } } }, "bigip_vlan": { "allOf": [ { "allOf": [ { "not": { "required": [ "tagged_interfaces", "tagged_interface" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "untagged_interfaces", "untagged_interface" ], "type": "object" } } ] } ], "type": "object", "description": "Manage VLANs on a BIG-IP system", "properties": { "name": { "type": "string", "description": "The VLAN to manage. If the special VLAN C(ALL) is specified with the C(state) value of C(absent) then all VLANs will be removed." }, "untagged_interfaces": { "type": "string", "description": "Specifies a list of untagged interfaces and trunks that you want to configure for the VLAN." }, "description": { "type": "string", "description": "The description to give to the VLAN." }, "tagged_interface": { "type": "string", "description": "Specifies a list of tagged interfaces and trunks that you want to configure for the VLAN. Use tagged interfaces or trunks when you want to assign a single interface or trunk to multiple VLANs." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the VLAN on the system. When C(present), guarantees that the VLAN exists with the provided attributes. When C(absent), removes the VLAN from the system." }, "tag": { "type": "string", "description": "Tag number for the VLAN. The tag number can be any integer between 1 and 4094. The system automatically assigns a tag number if you do not specify a value." }, "tagged_interfaces": { "type": "string", "description": "Specifies a list of tagged interfaces and trunks that you want to configure for the VLAN. Use tagged interfaces or trunks when you want to assign a single interface or trunk to multiple VLANs." }, "untagged_interface": { "type": "string", "description": "Specifies a list of untagged interfaces and trunks that you want to configure for the VLAN." } } }, "rabbitmq_plugin": { "allOf": [ { "allOf": [ { "not": { "required": [ "names", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "names" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Enables or disables RabbitMQ plugins", "properties": { "state": { "type": "string", "description": "Default: enabled\n\nSpecify if plugins are to be enabled or disabled" }, "names": { "type": "string", "description": "Comma-separated list of plugin names" }, "prefix": { "type": "string", "description": "Specify a custom install prefix to a Rabbit" }, "name": { "type": "string", "description": "Comma-separated list of plugin names" }, "new_only": { "type": "string", "description": "Default: no\n\nOnly enable missing plugins\nDoes not disable plugins that are not in the names list" } } }, "include_tasks": { "type": "object", "description": "Includes a file with a list of tasks to be executed in the current playbook.", "properties": { "free-form": { "type": "string", "description": "The name of the imported file is specified directly without any other option.\nUnlike M(import_tasks), most keywords, including loops and conditionals, apply to this statement." } } }, "vmware_dvs_portgroup": { "required": [ "portgroup_name", "state", "num_ports", "vlan_id", "portgroup_type", "switch_name" ], "type": "object", "description": "Create or remove a Distributed vSwitch portgroup.", "properties": { "portgroup_name": { "type": "string", "description": "The name of the portgroup that is to be created or deleted." }, "teaming_policy": { "type": "object", "description": "Default: {'notify_switches': True, 'load_balance_policy': 'loadbalance_srcid', 'inbound_policy': False, 'rolling_order': False}\n\nDictionary which configures the different teaming values for portgroup.\nValid attributes are:\n- C(load_balance_policy) (string): Network adapter teaming policy. (default: loadbalance_srcid)\n - choices: [ loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, failover_explicit]\n- C(inbound_policy) (bool): Indicate whether or not the teaming policy is applied to inbound frames as well. (default: False)\n- C(notify_switches) (bool): Indicate whether or not to notify the physical switch if a link fails. (default: True)\n- C(rolling_order) (bool): Indicate whether or not to use a rolling policy when restoring links. (default: False)" }, "port_policy": { "type": "object", "description": "Default: {'traffic_filter_override': False, 'network_rp_override': False, 'live_port_move': False, 'security_override': False, 'vendor_config_override': False, 'port_config_reset_at_disconnect': True, 'uplink_teaming_override': False, 'block_override': True, 'shaping_override': False, 'vlan_override': False, 'ipfix_override': False}\n\nDictionary which configures the advanced policy settings for the portgroup.\nValid attributes are:\n- C(block_override) (bool): indicates if the block policy can be changed per port. (default: true)\n- C(ipfix_override) (bool): indicates if the ipfix policy can be changed per port. (default: false)\n- C(live_port_move) (bool): indicates if a live port can be moved in or out of the portgroup. (default: false)\n- C(network_rp_override) (bool): indicates if the network resource pool can be changed per port. (default: false)\n- C(port_config_reset_at_disconnect) (bool): indicates if the configuration of a port is reset automatically after disconnect. (default: true)\n- C(security_override) (bool): indicates if the security policy can be changed per port. (default: false)\n- C(shaping_override) (bool): indicates if the shaping policy can be changed per port. (default: false)\n- C(traffic_filter_override) (bool): indicates if the traffic filter can be changed per port. (default: false)\n- C(uplink_teaming_override) (bool): indicates if the uplink teaming policy can be changed per port. (default: false)\n- C(vendor_config_override) (bool): indicates if the vendor config can be changed per port. (default: false)\n- C(vlan_override) (bool): indicates if the vlan can be changed per port. (default: false)" }, "network_policy": { "type": "object", "description": "Default: {'promiscuous': False, 'mac_changes': False, 'forged_transmits': False}\n\nDictionary which configures the different security values for portgroup.\nValid attributes are:\n- C(promiscuous) (bool): indicates whether promiscuous mode is allowed. (default: false)\n- C(forged_transmits) (bool): indicates whether forged transmits are allowed. (default: false)\n- C(mac_changes) (bool): indicates whether mac changes are allowed. (default: false)" }, "state": { "description": "Determines if the portgroup should be present or not.", "$ref": "#/definitions/ansible_truth" }, "num_ports": { "type": "string", "description": "The number of ports the portgroup should contain." }, "vlan_trunk": { "description": "Indicates whether this is a VLAN trunk or not.", "$ref": "#/definitions/ansible_truth" }, "portgroup_type": { "type": "string", "description": "See VMware KB 1022312 regarding portgroup types." }, "switch_name": { "type": "string", "description": "The name of the distributed vSwitch the port group should be created on." }, "vlan_id": { "type": "string", "description": "The VLAN ID that should be configured with the portgroup, use 0 for no VLAN.\nIf C(vlan_trunk) is configured to be I(true), this can be a range, example: 1-4094." } } }, "ec2_snapshot_copy": { "required": [ "source_region", "source_snapshot_id" ], "type": "object", "description": "Copies an EC2 Snapshot from a source region to a destination region.", "properties": { "description": { "type": "string", "description": "An optional human-readable string describing purpose of the new Snapshot." }, "tags": { "type": "string", "description": "A hash/dictionary of tags to add to the new Snapshot; '{\"key\":\"value\"}' and '{\"key\":\"value\",\"key\":\"value\"}'" }, "encrypted": { "type": "string", "description": "Whether or not the destination Snapshot should be encrypted." }, "kms_key_id": { "type": "string", "description": "KMS key id used to encrypt snapshot. If not specified, defaults to EBS Customer Master Key (CMK) for that account." }, "source_region": { "type": "string", "description": "The source region the Snapshot should be copied from." }, "source_snapshot_id": { "type": "string", "description": "The ID of the Snapshot in source region that should be copied." }, "wait": { "type": "string", "description": "Default: no\n\nWait for the copied Snapshot to be in 'Available' state before returning." } } }, "bigip_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "username_credential", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "username_credential" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage user accounts and user attributes on a BIG-IP. Typically this module operates only on the REST API users and not the CLI users. There is one exception though and that is if you specify the C(username_credential) of C(root). When specifying C(root), you may only change the password. Your other parameters will be ignored in this case. Changing the C(root) password is not an idempotent operation. Therefore, it will change it every time this module attempts to change it.", "properties": { "update_password": { "type": "string", "description": "Default: on_create\n\nC(always) will allow to update passwords if the user chooses to do so. C(on_create) will only set the password for newly created users. When C(username_credential) is C(root), this value will be forced to C(always)." }, "shell": { "type": "string", "description": "Optionally set the users shell." }, "name": { "type": "string", "description": "Name of the user to create, remove or modify. There is a special case that exists for the user C(root)." }, "password_credential": { "type": "string", "description": "Set the users password to this unencrypted value. C(password_credential) is required when creating a new account." }, "partition_access": { "type": "string", "description": "Specifies the administrative partition to which the user has access. C(partition_access) is required when creating a new account. Should be in the form \"partition:role\". Valid roles include C(acceleration-policy-editor), C(admin), C(application-editor), C(auditor) C(certificate-manager), C(guest), C(irule-manager), C(manager), C(no-access) C(operator), C(resource-admin), C(user-manager), C(web-application-security-administrator), and C(web-application-security-editor). Partition portion of tuple should be an existing partition or the value 'all'." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "Default: present\n\nWhether the account should exist or not, taking action if the state is different from what is stated." }, "full_name": { "type": "string", "description": "Full name of the user." }, "username_credential": { "type": "string", "description": "Name of the user to create, remove or modify. There is a special case that exists for the user C(root)." } } }, "vyos_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "level", "role" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of the local usernames configured on network devices. It allows playbooks to manage either individual usernames or the collection of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the VyOS device. The password needs to be provided in clear and it will be encrypted on the device. Please note that this option is not same as C(provider password)." }, "name": { "type": "string", "description": "The username to be configured on the VyOS device. This argument accepts a string value and is mutually exclusive with the C(aggregate) argument. Please note that this option is not same as C(provider username)." }, "level": { "type": "string", "description": "The C(level) argument configures the level of the user when logged into the system. This argument accepts string values admin or operator." }, "collection": { "type": "string", "description": "The set of username objects to be configured on the remote VyOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "purge": { "description": "Instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user (the current defined set of users).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "role": { "type": "string", "description": "The C(level) argument configures the level of the user when logged into the system. This argument accepts string values admin or operator." }, "full_name": { "type": "string", "description": "The C(full_name) argument provides the full name of the user account to be created on the remote device. This argument accepts any text string value." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote VyOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "users": { "type": "string", "description": "The set of username objects to be configured on the remote VyOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." } } }, "cs_project": { "required": [ "name" ], "type": "object", "description": "Create, update, suspend, activate and remove projects.", "properties": { "display_text": { "type": "string", "description": "Display text of the project.\nIf not specified, C(name) will be used as C(display_text)." }, "account": { "type": "string", "description": "Account the project is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the project." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nIf you want to delete all tags, set a empty list e.g. C(tags: [])." }, "domain": { "type": "string", "description": "Domain the project is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the project." } } }, "cs_pod": { "required": [ "name" ], "type": "object", "description": "Create, update, delete pods.", "properties": { "name": { "type": "string", "description": "Name of the pod." }, "zone": { "type": "string", "description": "Name of the zone in which the pod belongs to.\nIf not set, default zone is used." }, "state": { "type": "string", "description": "Default: present\n\nState of the pod." }, "id": { "type": "string", "description": "uuid of the exising pod." }, "netmask": { "type": "string", "description": "Netmask for the Pod.\nRequired on C(state=present)" }, "end_ip": { "type": "string", "description": "Ending IP address for the Pod." }, "start_ip": { "type": "string", "description": "Starting IP address for the Pod.\nRequired on C(state=present)" }, "gateway": { "type": "string", "description": "Gateway for the Pod.\nRequired on C(state=present)" } } }, "circonus_annotation": { "required": [ "category", "description", "title", "api_key" ], "type": "object", "description": "Create an annotation event with a given category, title and description. Optionally start, end or durations can be provided", "properties": { "category": { "type": "string", "description": "Annotation Category" }, "description": { "type": "string", "description": "Description of annotation" }, "title": { "type": "string", "description": "Title of annotation" }, "stop": { "type": "string", "description": "Unix timestamp of event end, defaults to now + duration" }, "start": { "type": "string", "description": "Unix timestamp of event start, defaults to now" }, "duration": { "type": "string", "description": "Duration in seconds of annotation, defaults to 0" }, "api_key": { "type": "string", "description": "Circonus API key" } } }, "clc_publicip": { "required": [ "server_ids" ], "type": "object", "description": "An Ansible module to add or delete public ip addresses on an existing server or servers in CenturyLink Cloud.", "properties": { "server_ids": { "type": "string", "description": "A list of servers to create public ips on." }, "state": { "type": "string", "description": "Default: present\n\nDetermine whether to create or delete public IPs. If present module will not create a second public ip if one already exists." }, "protocol": { "type": "string", "description": "Default: TCP\n\nThe protocol that the public IP will listen for." }, "ports": { "type": "string", "description": "Default: None\n\nA list of ports to expose. This is required when state is 'present'" }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the tasks to finish before returning." } } }, "clc_aa_policy": { "required": [ "location", "name" ], "type": "object", "description": "An Ansible module to Create or Delete Anti Affinity Policies at CenturyLink Cloud.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether to create or delete the policy." }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the tasks to finish before returning." }, "location": { "type": "string", "description": "Datacenter in which the policy lives/should live." }, "name": { "type": "string", "description": "The name of the Anti Affinity Policy." } } }, "azure_rm_virtualmachine_scaleset_facts": { "type": "object", "description": "Get facts for a virtual machine scale set", "properties": { "name": { "type": "string", "description": "Limit results to a specific virtual machine scale set" }, "resource_group": { "type": "string", "description": "The resource group to search for the desired virtual machine scale set" } } }, "rabbitmq_exchange": { "allOf": [ { "allOf": [ { "not": { "required": [ "exchange_type", "type" ], "type": "object" } } ] } ], "type": "object", "description": "This module uses rabbitMQ Rest API to create/delete exchanges", "properties": { "login_port": { "type": "string", "description": "Default: 15672\n\nrabbitMQ management api port" }, "name": { "type": "string", "description": "Name of the exchange to create" }, "login_user": { "type": "string", "description": "Default: guest\n\nrabbitMQ user for connection" }, "login_host": { "type": "string", "description": "Default: localhost\n\nrabbitMQ host for connection" }, "exchange_type": { "type": "string", "description": "Default: direct\n\ntype for the exchange" }, "vhost": { "type": "string", "description": "Default: /\n\nrabbitMQ virtual host" }, "state": { "type": "string", "description": "Default: present\n\nWhether the exchange should be present or absent\nOnly present implemented atm" }, "internal": { "type": "string", "description": "exchange is available only for other exchanges" }, "arguments": { "type": "string", "description": "extra arguments for exchange. If defined this argument is a key/value dictionary" }, "auto_delete": { "type": "string", "description": "if the exchange should delete itself after all queues/exchanges unbound from it" }, "login_password": { "type": "string", "description": "rabbitMQ password for connection" }, "type": { "type": "string", "description": "Default: direct\n\ntype for the exchange" }, "durable": { "type": "string", "description": "Default: True\n\nwhether exchange is durable or not" } } }, "execute_lambda": { "type": "object", "description": "This module executes AWS Lambda functions, allowing synchronous and asynchronous invocation.", "properties": { "name": { "type": "string", "description": "Default: None\n\nThe name of the function to be invoked. This can only be used for invocations within the calling account. To invoke a function in another account, use I(function_arn) to specify the full ARN." }, "dry_run": { "type": "string", "description": "Do not *actually* invoke the function. A C(DryRun) call will check that the caller has permissions to call the function, especially for checking cross-account permissions." }, "function_arn": { "type": "string", "description": "Default: None\n\nThe name of the function to be invoked" }, "tail_log": { "type": "string", "description": "If C(tail_log=true), the result of the task will include the last 4 KB of the CloudWatch log for the function execution. Log tailing only works if you use synchronous invocation C(wait=true). This is usually used for development or testing Lambdas." }, "version_qualifier": { "type": "string", "description": "Default: LATEST\n\nWhich version/alias of the function to run. This defaults to the C(LATEST) revision, but can be set to any existing version or alias. See https;//docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html for details." }, "payload": { "type": "object", "description": "A dictionary in any form to be provided as input to the Lambda function." }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the function results or not. If I(wait) is false, the task will not return any results. To wait for the Lambda function to complete, set C(wait=true) and the result will be available in the I(output) key." } } }, "aos_asn_pool": { "required": [ "session" ], "type": "object", "description": "Apstra AOS ASN Pool module let you manage your ASN Pool easily. You can create and delete ASN Pool by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "content": { "type": "string", "description": "Datastructure of the ASN Pool to manage. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "name": { "type": "string", "description": "Name of the ASN Pool to manage. Only one of I(name), I(id) or I(content) can be set." }, "ranges": { "type": "array", "description": "List of ASNs ranges to add to the ASN Pool. Each range must have 2 values." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the ASN Pool (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "id": { "type": "string", "description": "AOS Id of the ASN Pool to manage. Only one of I(name), I(id) or I(content) can be set." } } }, "ovirt_external_provider": { "allOf": [ { "allOf": [ { "not": { "required": [ "tenant_name", "tenant" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "authentication_url", "auth_url" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage external providers in oVirt/RHV", "properties": { "username": { "type": "string", "description": "Username to be used for login to external provider.\nApplicable for all types." }, "read_only": { "type": "string", "description": "Specify if the network should be read only.\nApplicable if C(type) is I(network)." }, "name": { "type": "string", "description": "Name of the external provider to manage." }, "url": { "type": "string", "description": "URL where external provider is hosted.\nApplicable for those types: I(os_image), I(os_volume), I(network) and I(foreman)." }, "tenant_name": { "type": "string", "description": "Name of the tenant.\nApplicable for those types: I(os_image), I(os_volume) and I(network)." }, "state": { "type": "string", "description": "Default: present\n\nShould the external be present or absent" }, "authentication_url": { "type": "string", "description": "Keystone authentication URL of the openstack provider.\nApplicable for those types: I(os_image), I(os_volume) and I(network)." }, "data_center": { "type": "string", "description": "Name of the data center where provider should be attached.\nApplicable for those type: I(os_volume)." }, "auth_url": { "type": "string", "description": "Keystone authentication URL of the openstack provider.\nApplicable for those types: I(os_image), I(os_volume) and I(network)." }, "password": { "type": "string", "description": "Password of the user specified in C(username) parameter.\nApplicable for all types." }, "type": { "type": "string", "description": "Type of the external provider." }, "network_type": { "type": "string", "description": "Default: ['external']\n\nType of the external network provider either external (for example OVN) or neutron.\nApplicable if C(type) is I(network)." }, "tenant": { "type": "string", "description": "Name of the tenant.\nApplicable for those types: I(os_image), I(os_volume) and I(network)." }, "description": { "type": "string", "description": "Description of the external provider." } } }, "digital_ocean_floating_ip": { "required": [ "oauth_token" ], "type": "object", "description": "Create/delete/assign a floating IP.", "properties": { "ip": { "type": "string", "description": "Default: None\n\nPublic IP address of the Floating IP. Used to remove an IP" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "oauth_token": { "type": "string", "description": "DigitalOcean OAuth token." }, "region": { "type": "string", "description": "Default: None\n\nThe region that the Floating IP is reserved to." }, "droplet_id": { "type": "string", "description": "Default: None\n\nThe Droplet that the Floating IP has been assigned to." } } }, "clc_alert_policy": { "required": [ "alias" ], "type": "object", "description": "An Ansible module to Create or Delete Alert Policies at CenturyLink Cloud.", "properties": { "name": { "type": "string", "description": "Default: None\n\nThe name of the alert policy. This is mutually exclusive with id" }, "metric": { "type": "string", "description": "Default: None\n\nThe metric on which to measure the condition that will trigger the alert. This is required for state 'present'" }, "id": { "type": "string", "description": "Default: None\n\nThe alert policy id. This is mutually exclusive with name" }, "alias": { "type": "string", "description": "The alias of your CLC Account" }, "state": { "type": "string", "description": "Default: present\n\nWhether to create or delete the policy." }, "threshold": { "type": "string", "description": "Default: None\n\nThe threshold that will trigger the alert when the metric equals or exceeds it. This is required for state 'present' This number represents a percentage and must be a value between 5.0 - 95.0 that is a multiple of 5.0" }, "alert_recipients": { "type": "string", "description": "Default: None\n\nA list of recipient email ids to notify the alert. This is required for state 'present'" }, "duration": { "type": "string", "description": "Default: None\n\nThe length of time in minutes that the condition must exceed the threshold. This is required for state 'present'" } } }, "nxos_aaa_server_host": { "required": [ "server_type", "address" ], "type": "object", "description": "Manages AAA server host-specific configuration.", "properties": { "server_type": { "type": "string", "description": "The server type is either radius or tacacs." }, "encrypt_type": { "type": "string", "description": "The state of encryption applied to the entered key. O for clear text, 7 for encrypted. Type-6 encryption is not supported." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "auth_port": { "type": "string", "description": "Alternate UDP port for RADIUS authentication or keyword 'default'." }, "tacacs_port": { "type": "string", "description": "Alternate TCP port TACACS Server or keyword 'default'." }, "host_timeout": { "type": "string", "description": "Timeout period for specified host, in seconds or keyword 'default. Range is 1-60." }, "key": { "type": "string", "description": "Shared secret for the specified host or keyword 'default'." }, "address": { "type": "string", "description": "Address or name of the radius or tacacs host." }, "acct_port": { "type": "string", "description": "Alternate UDP port for RADIUS accounting or keyword 'default'." } } }, "os_zone": { "required": [ "name" ], "type": "object", "description": "Manage OpenStack DNS zones. Zones can be created, deleted or updated. Only the I(email), I(description), I(ttl) and I(masters) values can be updated.", "properties": { "masters": { "type": "string", "description": "Default: None\n\nMaster nameservers (only applies if zone_type is secondary)" }, "description": { "type": "string", "description": "Default: None\n\nZone description" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "ttl": { "type": "string", "description": "Default: None\n\nTTL (Time To Live) value in seconds" }, "zone_type": { "type": "string", "description": "Default: None\n\nZone type" }, "email": { "type": "string", "description": "Email of the zone owner (only applies if zone_type is primary)" }, "name": { "type": "string", "description": "Zone name" } } }, "ovirt_datacenter": { "required": [ "name" ], "type": "object", "description": "Module to manage data centers in oVirt/RHV", "properties": { "comment": { "type": "string", "description": "Comment of the data center." }, "compatibility_version": { "type": "string", "description": "Compatibility version of the data center." }, "force": { "type": "string", "description": "This parameter can be used only when removing a data center. If I(True) data center will be forcibly removed, even though it contains some clusters. Default value is I(False), which means that only empty data center can be removed." }, "name": { "type": "string", "description": "Name of the data center to manage." }, "mac_pool": { "type": "string", "description": "MAC pool to be used by this datacenter.\nIMPORTANT: This option is deprecated in oVirt/RHV 4.1. You should use C(mac_pool) in C(ovirt_clusters) module, as MAC pools are set per cluster since 4.1." }, "quota_mode": { "type": "string", "description": "Quota mode of the data center. One of I(disabled), I(audit) or I(enabled)" }, "state": { "type": "string", "description": "Default: present\n\nShould the data center be present or absent" }, "local": { "type": "string", "description": "I(True) if the data center should be local, I(False) if should be shared.\nDefault value is set by engine." }, "description": { "type": "string", "description": "Description of the data center." } } }, "gcp_target_proxy": { "required": [ "target_proxy_type", "target_proxy_name" ], "type": "object", "description": "Create, Update or Destroy a Target_Proxy. See U(https://cloud.google.com/compute/docs/load-balancing/http/target-proxies) for an overview. More details on the Target_Proxy API can be found at U(https://cloud.google.com/compute/docs/reference/latest/targetHttpProxies#resource-representations).", "properties": { "target_proxy_type": { "type": "string", "description": "Type of Target_Proxy. HTTP, HTTPS or SSL. Only HTTP is currently supported." }, "target_proxy_name": { "type": "string", "description": "Name of the Target_Proxy." }, "url_map_name": { "type": "string", "description": "Name of the Url Map. Required if type is HTTP or HTTPS proxy." } } }, "ec2_vol_facts": { "type": "object", "description": "Gather facts about ec2 volumes in AWS", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html) for possible filters." } } }, "aws_az_facts": { "type": "object", "description": "Gather facts about availability zones in AWS.", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html) for possible filters. Filter names and values are case sensitive. You can also use underscores instead of dashes (-) in the filter keys, which will take precedence in case of conflict." } } }, "ipa_sudocmdgroup": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify or delete sudo command group within IPA server using IPA API.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "description": { "type": "string", "description": "Group description." }, "cn": { "type": "string", "description": "Sudo Command Group." }, "sudocmd": { "type": "array", "description": "List of sudo commands to assign to the group.\nIf an empty list is passed all assigned commands will be removed from the group.\nIf option is omitted sudo commands will not be checked or changed." }, "name": { "type": "string", "description": "Sudo Command Group." } } }, "nxos_ntp_auth": { "required": [ "key_id", "md5string" ], "type": "object", "description": "Manages NTP authentication.", "properties": { "auth_type": { "type": "string", "description": "Default: text\n\nWhether the given md5string is in cleartext or has been encrypted. If in cleartext, the device will encrypt it before storing it." }, "trusted_key": { "type": "string", "description": "Whether the given key is required to be supplied by a time source for the device to synchronize to the time source." }, "md5string": { "type": "string", "description": "MD5 String." }, "authentication": { "type": "string", "description": "Turns NTP authentication on or off." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "key_id": { "type": "string", "description": "Authentication key identifier (numeric)." } } }, "ovirt_host_networks": { "required": [ "name" ], "type": "object", "description": "Module to manage host networks in oVirt/RHV.", "properties": { "name": { "type": "string", "description": "Name of the host to manage networks for." }, "labels": { "type": "array", "description": "List of names of the network label to be assigned to bond or interface." }, "check": { "type": "string", "description": "If I(true) verify connectivity between host and engine.\nNetwork configuration changes will be rolled back if connectivity between engine and the host is lost after changing network configuration." }, "state": { "type": "string", "description": "Default: present\n\nShould the host be present/absent." }, "interface": { "type": "string", "description": "Name of the network interface where logical network should be attached." }, "save": { "type": "string", "description": "If I(true) network configuration will be persistent, by default they are temporary." }, "networks": { "type": "array", "description": "List of dictionary describing networks to be attached to interface or bond:\nC(name) - Name of the logical network to be assigned to bond or interface.\nC(boot_protocol) - Boot protocol one of the I(none), I(static) or I(dhcp).\nC(address) - IP address in case of I(static) boot protocol is used.\nC(netmask) - Subnet mask in case of I(static) boot protocol is used.\nC(gateway) - Gateway in case of I(static) boot protocol is used.\nC(version) - IP version. Either v4 or v6. Default is v4." }, "bond": { "type": "object", "description": "Dictionary describing network bond:\nC(name) - Bond name.\nC(mode) - Bonding mode.\nC(interfaces) - List of interfaces to create a bond." } } }, "rax_meta": { "type": "object", "description": "Manipulate metadata for Rackspace Cloud Servers", "properties": { "meta": { "type": "string", "description": "A hash of metadata to associate with the instance" }, "id": { "type": "string", "description": "Server ID to modify metadata for" }, "name": { "type": "string", "description": "Server name to modify metadata for" }, "address": { "type": "string", "description": "Server IP address to modify metadata for, will match any IP assigned to the server" } } }, "svc": { "required": [ "name" ], "type": "object", "description": "Controls daemontools services on remote hosts using the svc utility.", "properties": { "name": { "type": "string", "description": "Name of the service to manage." }, "downed": { "type": "string", "description": "Should a 'down' file exist or not, if it exists it disables auto startup. defaults to no. Downed does not imply stopped." }, "enabled": { "type": "string", "description": "Wheater the service is enabled or not, if disabled it also implies stopped. Make note that a service can be enabled and downed (no auto restart)." }, "state": { "type": "string", "description": "C(Started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the svc (svc -t) and C(killed) will always bounce the svc (svc -k). C(reloaded) will send a sigusr1 (svc -1). C(once) will run a normally downed svc once (svc -o), not really an idempotent operation." }, "service_dir": { "type": "string", "description": "Default: /service\n\ndirectory svscan watches for services" }, "service_src": { "type": "string", "description": "directory where services are defined, the source of symlinks to service_dir." } } }, "dellos10_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running Dell OS10. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "dnsmadeeasy": { "required": [ "domain", "protocol", "autoFailover", "sensitivity", "contactList", "account_key", "port", "monitor", "failover", "maxEmails", "state", "systemDescription", "account_secret" ], "type": "object", "description": "Manages DNS records via the v2 REST API of the DNS Made Easy service. It handles records only; there is no manipulation of domains or monitor/account support yet. See: U(https://www.dnsmadeeasy.com/integration/restapi/)\n", "properties": { "httpFqdn": { "type": "string", "description": "The fully qualified domain name used by the monitor." }, "domain": { "type": "string", "description": "Domain to work with. Can be the domain name (e.g. \"mydomain.com\") or the numeric ID of the domain in DNS Made Easy (e.g. \"839989\") for faster resolution" }, "protocol": { "type": "string", "description": "Default: HTTP\n\nProtocol used by the monitor." }, "autoFailover": { "type": "string", "description": "Default: no\n\nIf true, fallback to the primary IP address is manual after a failover.\nIf false, fallback to the primary IP address is automatic after a failover." }, "sensitivity": { "type": "string", "description": "Default: Medium\n\nNumber of checks the monitor performs before a failover occurs where Low = 8, Medium = 5,and High = 3." }, "contactList": { "type": "string", "description": "Name or id of the contact list that the monitor will notify.\nThe default C('') means the Account Owner." }, "account_key": { "type": "string", "description": "Account API Key." }, "record_type": { "type": "string", "description": "Record type." }, "port": { "type": "string", "description": "Default: 80\n\nPort used by the monitor." }, "monitor": { "type": "string", "description": "Default: no\n\nIf C(yes), add or change the monitor. This is applicable only for A records." }, "httpQueryString": { "type": "string", "description": "The string in the httpFile that the monitor queries for HTTP or HTTPS." }, "state": { "type": "string", "description": "whether the record should exist or not" }, "systemDescription": { "type": "string", "description": "Description used by the monitor." }, "httpFile": { "type": "string", "description": "The file at the Fqdn that the monitor queries for HTTP or HTTPS." }, "record_name": { "type": "string", "description": "Record name to get/create/delete/update. If record_name is not specified; all records for the domain will be returned in \"result\" regardless of the state argument." }, "record_ttl": { "type": "string", "description": "Default: 1800\n\nrecord's \"Time to live\". Number of seconds the record remains cached in DNS servers." }, "account_secret": { "type": "string", "description": "Account Secret Key." }, "ip2": { "type": "string", "description": "Secondary IP address for the failover.\nRequired if adding or changing the failover." }, "ip3": { "type": "string", "description": "Tertiary IP address for the failover." }, "ip1": { "type": "string", "description": "Primary IP address for the failover.\nRequired if adding or changing the monitor or failover." }, "ip4": { "type": "string", "description": "Quaternary IP address for the failover." }, "ip5": { "type": "string", "description": "Quinary IP address for the failover." }, "failover": { "type": "string", "description": "Default: no\n\nIf C(yes), add or change the failover. This is applicable only for A records." }, "maxEmails": { "type": "string", "description": "Default: 1\n\nNumber of emails sent to the contact list by the monitor." }, "record_value": { "type": "string", "description": "Record value. HTTPRED: , MX: , NS: , PTR: , SRV: , TXT: \"\n\nIf record_value is not specified; no changes will be made and the record will be returned in 'result' (in other words, this module can be used to fetch a record's current id, type, and ttl)\n" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "monit": { "required": [ "state", "name" ], "type": "object", "description": "Manage the state of a program monitored via I(Monit)", "properties": { "state": { "type": "string", "description": "The state of service" }, "name": { "type": "string", "description": "The name of the I(monit) program/process to manage" }, "timeout": { "type": "string", "description": "Default: 300\n\nIf there are pending actions for the service monitored by monit, then Ansible will check for up to this many seconds to verify the requested action has been performed. Ansible will sleep for five seconds between each check." } } }, "oneandone_public_ip": { "required": [ "auth_token", "public_ip_id" ], "type": "object", "description": "Create, update, and remove public IPs. This module has a dependency on 1and1 >= 1.0", "properties": { "datacenter": { "type": "string", "description": "ID of the datacenter where the IP will be created (only for unassigned IPs)." }, "api_url": { "type": "string", "description": "Custom API URL. Overrides the ONEANDONE_API_URL environement variable." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nDefines the number of seconds to wait when using the _wait_for methods" }, "auth_token": { "type": "string", "description": "Authenticating API token provided by 1&1." }, "reverse_dns": { "type": "string", "description": "Reverse DNS name. maxLength=256" }, "state": { "type": "string", "description": "Default: present\n\nDefine a public ip state to create, remove, or update." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "public_ip_id": { "type": "string", "description": "The ID of the public IP used with update and delete states." }, "type": { "type": "string", "description": "Default: IPV4\n\nType of IP. Currently, only IPV4 is available." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the instance to be in state 'running' before returning" } } }, "nxos_udld": { "type": "object", "description": "Manages UDLD global configuration params.", "properties": { "reset": { "type": "string", "description": "Ability to reset UDLD down interfaces." }, "msg_time": { "type": "string", "description": "Message time in seconds for UDLD packets." }, "aggressive": { "type": "string", "description": "Toggles aggressive mode." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." } } }, "openshift_scale": { "type": "object", "description": "Similar to the oc scale command. Use to set the number of replicas for a Deployment Config, Deployment, ReplicatSet, or Replication Controller, or the parallelism attribute of a Job. Supports check mode.", "properties": {} }, "ecs_cluster": { "required": [ "state", "name" ], "type": "object", "description": "Creates or terminates ecs clusters.", "properties": { "delay": { "type": "string", "description": "Number of seconds to wait" }, "state": { "type": "string", "description": "The desired state of the cluster" }, "repeat": { "type": "string", "description": "The number of times to wait for the cluster to have an instance" }, "name": { "type": "string", "description": "The cluster name" } } }, "ironware_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running Ironware. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: ['!config', '!mpls']\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, mpls and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "ec2_vpc_route_table_facts": { "type": "object", "description": "Gather facts about ec2 VPC route tables in AWS", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) for possible filters." } } }, "virt_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "pool" ], "type": "object" } } ] } ], "type": "object", "description": "Manage I(libvirt) storage pools.", "properties": { "xml": { "type": "string", "description": "XML document used with the define command." }, "name": { "type": "string", "description": "name of the storage pool being managed. Note that pool must be previously defined with xml." }, "uri": { "type": "string", "description": "Default: qemu:///system\n\nI(libvirt) connection uri." }, "state": { "type": "string", "description": "specify which state you want a storage pool to be in. If 'active', pool will be started. If 'present', ensure that pool is present but do not change its state; if it's missing, you need to specify xml argument. If 'inactive', pool will be stopped. If 'undefined' or 'absent', pool will be removed from I(libvirt) configuration. If 'deleted', pool contents will be deleted and then pool undefined." }, "command": { "type": "string", "description": "in addition to state management, various non-idempotent commands are available. See examples." }, "mode": { "type": "string", "description": "Pass additional parameters to 'build' or 'delete' commands." }, "autostart": { "type": "string", "description": "Specify if a given storage pool should be started automatically on system boot." }, "pool": { "type": "string", "description": "name of the storage pool being managed. Note that pool must be previously defined with xml." } } }, "infini_export_client": { "allOf": [ { "allOf": [ { "not": { "required": [ "client", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "client" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module creates, deletes or modifys NFS client(s) for existing exports on Infinibox.", "properties": { "no_root_squash": { "type": "string", "description": "Don't squash root user to anonymous. Will be set to \"no\" on creation if not specified explicitly." }, "name": { "type": "string", "description": "Client IP or Range. Ranges can be defined as follows 192.168.0.1-192.168.0.254." }, "state": { "type": "string", "description": "Default: present\n\nCreates/Modifies client when present and removes when absent." }, "client": { "type": "string", "description": "Client IP or Range. Ranges can be defined as follows 192.168.0.1-192.168.0.254." }, "export": { "type": "string", "description": "Name of the export." }, "access_mode": { "type": "string", "description": "Default: RW\n\nRead Write or Read Only Access." } } }, "rabbitmq_parameter": { "required": [ "name", "component" ], "type": "object", "description": "Manage dynamic, cluster-wide parameters for RabbitMQ", "properties": { "node": { "type": "string", "description": "Default: rabbit\n\nerlang node name of the rabbit we wish to configure" }, "name": { "type": "string", "description": "Name of the parameter being set" }, "component": { "type": "string", "description": "Name of the component of which the parameter is being set" }, "value": { "type": "string", "description": "Value of the parameter, as a JSON term" }, "vhost": { "type": "string", "description": "Default: /\n\nvhost to apply access privileges." }, "state": { "type": "string", "description": "Default: present\n\nSpecify if user is to be added or removed" } } }, "eos_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "running_config", "config" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Arista EOS configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with EOS configuration sections in a deterministic way. This module works with either CLI or eAPI transports.", "properties": { "intended_config": { "type": "string", "description": "The C(intended_config) provides the master configuration that the node should conform to and is used to check the final running-config against. This argument will not modify any settings on the remote device and is strictly used to check the compliance of the current device's configuration against. When specifying this argument, the task should also modify the C(diff_against) value and set it to I(intended)." }, "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration file to load into the remote system. The path can either be a full system path to the configuration file if the value starts with / or relative to the root of the implemented role or playbook. This argument is mutually exclusive with the I(lines) and I(parents) arguments. It can be a Jinja2 template as well. src file must have same indentation as a live switch config. Arista EOS device config has 3 spaces indentation." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "save_when": { "type": "string", "description": "Default: never\n\nWhen changes are made to the device running-configuration, the changes are not copied to non-volatile storage by default. Using this argument will change that before. If the argument is set to I(always), then the running-config will always be copied to the startup-config and the I(modified) flag will always be set to True. If the argument is set to I(modified), then the running-config will only be copied to the startup-config if it has changed since the last save to startup-config. If the argument is set to I(never), the running-config will never be copied to the startup-config. If the argument is set to I(changed), then the running-config will only be copied to the startup-config if the task has made a change. I(changed) was added in Ansible 2.5." }, "force": { "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in Ansible 2.6.", "$ref": "#/definitions/ansible_truth" }, "backup": { "description": "Default: no\n\nThis argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory or role root directory, if playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "diff_against": { "type": "string", "description": "Default: session\n\nWhen using the C(ansible-playbook --diff) command line argument the module can generate diffs against different sources.\nWhen this option is configure as I(startup), the module will return the diff of the running-config against the startup-config.\nWhen this option is configured as I(intended), the module will return the diff of the running-config against the configuration provided in the C(intended_config) argument.\nWhen this option is configured as I(running), the module will return the before and after diff of the running-config with respect to any changes made to the device configuration.\nWhen this option is configured as C(session), the diff returned will be based on the configuration session." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "running_config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for this module." }, "defaults": { "description": "The I(defaults) argument will influence how the running-config is collected from the device. When the value is set to true, the command used to collect the running-config is append with the all keyword. When the value is set to false, the command is issued without the all keyword", "$ref": "#/definitions/ansible_truth" }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "description": "The C(save) argument instructs the module to save the running-config to startup-config. This operation is performed after any changes are made to the current running config. If no changes are made, the configuration is still saved to the startup config. This option will always cause the module to return changed.\nThis option is deprecated as of Ansible 2.4 and will be removed in Ansible 2.8, use C(save_when) instead.", "$ref": "#/definitions/ansible_truth" }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for this module." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "diff_ignore_lines": { "type": "string", "description": "Use this argument to specify one or more lines that should be ignored during the diff. This is used for lines in the configuration that are automatically updated by the system. This argument takes a list of regular expressions or exact line matches." } } }, "openwrt_init": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "service" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "service" ], "type": "object" } ] } ] } ], "type": "object", "description": "Controls OpenWrt services on remote hosts.", "properties": { "pattern": { "type": "string", "description": "If the service does not respond to the 'running' command, name a substring to look for as would be found in the output of the I(ps) command as a stand-in for a 'running' result. If the string is found, the service will be assumed to be running." }, "state": { "type": "string", "description": "C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. C(restarted) will always bounce the service. C(reloaded) will always reload." }, "enabled": { "type": "string", "description": "Whether the service should start on boot. B(At least one of state and enabled are required.)" }, "name": { "type": "string", "description": "Name of the service." }, "service": { "type": "string", "description": "Name of the service." } } }, "smartos_image_facts": { "type": "object", "description": "Retrieve facts about all installed images on SmartOS. Facts will be inserted to the ansible_facts key.", "properties": { "filters": { "type": "string", "description": "Default: None\n\nCriteria for selecting image. Can be any value from image manifest and 'published_date', 'published', 'source', 'clones', and 'size'. More informaton can be found at U(https://smartos.org/man/1m/imgadm) under 'imgadm list'." } } }, "ce_evpn_bgp": { "required": [ "bgp_instance" ], "type": "object", "description": "This module offers the ability to configure a BGP EVPN peer relationship on HUAWEI CloudEngine switches.", "properties": { "as_number": { "type": "string", "description": "Specifies integral AS number. The value is an integer ranging from 1 to 4294967295." }, "advertise_l2vpn_evpn": { "type": "string", "description": "Enable or disable a device to advertise IP routes imported to a VPN instance to its EVPN instance." }, "advertise_router_type": { "type": "string", "description": "Configures a device to advertise routes to its BGP EVPN peers." }, "vpn_name": { "type": "string", "description": "Associates a specified VPN instance with the IPv4 address family. The value is a string of 1 to 31 case-sensitive characters, spaces not supported." }, "peer_group_name": { "type": "string", "description": "Specify the name of a peer group that BGP peers need to join. The value is a string of 1 to 47 case-sensitive characters, spaces not supported." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "bgp_instance": { "type": "string", "description": "Name of a BGP instance. The value is a string of 1 to 31 case-sensitive characters, spaces not supported." }, "peer_enable": { "type": "string", "description": "Enable or disable a BGP device to exchange routes with a specified peer or peer group in the address family view." }, "peer_address": { "type": "string", "description": "Specifies the IPv4 address of a BGP EVPN peer. The value is in dotted decimal notation." } } }, "include": { "type": "object", "description": "Loads a file with a list of plays or tasks to be executed in the current playbook.\nFiles with a list of plays can only be included at the top level, lists of tasks can only be included where tasks normally run (in play).\nBefore 2.0 all includes were 'static', executed at play load time.\nSince 2.0 task includes are dynamic and behave more like real tasks. This means they can be looped, skipped and use variables from any source. Ansible tries to auto detect this, use the `static` directive (new in 2.1) to bypass autodetection.", "properties": { "free-form": { "type": "string", "description": "This module allows you to specify the name of the file directly w/o any other options." } } }, "junos_lldp_interface": { "type": "object", "description": "This module provides declarative management of LLDP interfaces configuration on Juniper JUNOS network devices.", "properties": { "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nValue of C(present) ensures given LLDP configured on given I(interfaces) and is enabled, for value of C(absent) LLDP configuration on given I(interfaces) deleted. Value C(enabled) ensures LLDP protocol is enabled on given I(interfaces) and for value of C(disabled) it ensures LLDP is disabled on given I(interfaces)." }, "name": { "type": "string", "description": "Name of the interface LLDP should be configured on." } } }, "git_config": { "type": "object", "description": "The M(git_config) module changes git configuration by invoking 'git config'. This is needed if you don't want to use M(template) for the entire git config file (e.g. because you need to change just C(user.email) in /etc/.git/config). Solutions involving M(command) are cumbersone or don't work correctly in check mode.", "properties": { "repo": { "type": "string", "description": "Path to a git repository for reading and writing values from a specific repo." }, "scope": { "type": "string", "description": "Specify which scope to read/set values from. This is required when setting config values. If this is set to local, you must also specify the repo parameter. It defaults to system only when not using I(list_all)=yes." }, "list_all": { "type": "array", "description": "List all settings (optionally limited to a given I(scope))" }, "name": { "type": "string", "description": "The name of the setting. If no value is supplied, the value will be read from the config if it has been set." }, "value": { "type": "string", "description": "When specifying the name of a single setting, supply a value to set that setting to the given value." } } }, "nxos_vxlan_vtep": { "required": [ "interface" ], "type": "object", "description": "Manages VXLAN Network Virtualization Endpoint (NVE) overlay interface that terminates VXLAN tunnels.", "properties": { "description": { "type": "string", "description": "Description of the NVE interface." }, "host_reachability": { "type": "string", "description": "Specify mechanism for host reachability advertisement." }, "source_interface_hold_down_time": { "type": "string", "description": "Suppresses advertisement of the NVE loopback address until the overlay has converged." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "shutdown": { "type": "string", "description": "Default: True\n\nAdministratively shutdown the NVE interface." }, "source_interface": { "type": "string", "description": "Specify the loopback interface whose IP address should be used for the NVE interface." }, "interface": { "type": "string", "description": "Interface name for the VXLAN Network Virtualization Endpoint." } } }, "elasticache_parameter_group": { "required": [ "state", "name" ], "type": "object", "description": "Manage cache security groups in Amazon Elasticache.\nReturns information about the specified cache cluster.", "properties": { "group_family": { "type": "string", "description": "The name of the cache parameter group family that the cache parameter group can be used with. Required when creating a cache parameter group." }, "state": { "type": "string", "description": "Idempotent actions that will create/modify, destroy, or reset a cache parameter group as needed." }, "values": { "type": "string", "description": "Default: None\n\nA user-specified dictionary of parameters to reset or modify for the cache parameter group." }, "name": { "type": "string", "description": "A user-specified name for the cache parameter group." }, "description": { "type": "string", "description": "A user-specified description for the cache parameter group." } } }, "bigiq_regkey_pool": { "required": [ "name" ], "type": "object", "description": "Manages registration key (regkey) pools on a BIG-IQ. These pools function as a container in-which you will add lists of registration keys. To add registration keys, use the C(bigiq_regkey_license) module.", "properties": { "state": { "type": "string", "description": "Default: present\n\nThe state of the regkey pool on the system.\nWhen C(present), guarantees that the pool exists.\nWhen C(absent), removes the pool, and the licenses it contains, from the system." }, "name": { "type": "string", "description": "Specifies the name of the registration key pool.\nYou must be mindful to name your registration pools unique names. While BIG-IQ does not require this, this module does. If you do not do this, the behavior of the module is undefined and you may end up putting licenses in the wrong registration key pool." }, "description": { "type": "string", "description": "A description to attach to the pool." } } }, "postgresql_schema": { "required": [ "name" ], "type": "object", "description": "Add or remove PostgreSQL schema from a remote host.", "properties": { "name": { "type": "string", "description": "Name of the schema to add or remove." }, "database": { "type": "string", "description": "Default: postgres\n\nName of the database to connect to." }, "login_user": { "type": "string", "description": "The username used to authenticate with." }, "login_host": { "type": "string", "description": "Default: localhost\n\nHost running the database." }, "login_unix_socket": { "type": "string", "description": "Path to a Unix domain socket for local connections." }, "state": { "type": "string", "description": "Default: present\n\nThe schema state." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "owner": { "type": "string", "description": "Name of the role to set as owner of the schema." }, "port": { "type": "string", "description": "Default: 5432\n\nDatabase port to connect to." } } }, "aci_taboo_contract": { "allOf": [ { "allOf": [ { "not": { "required": [ "taboo_contract", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "taboo_contract" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage taboo contracts on Cisco ACI fabrics.", "properties": { "taboo_contract": { "type": "string", "description": "The name of the Taboo Contract." }, "name": { "type": "string", "description": "The name of the Taboo Contract." }, "descr": { "type": "string", "description": "The description for the Taboo Contract." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "scope": { "type": "string", "description": "Default: context\n\nThe scope of a service contract.\nThe APIC defaults new Taboo Contracts to C(context)." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "The description for the Taboo Contract." } } }, "import_tasks": { "type": "object", "description": "Imports a list of tasks to be added to the current playbook for subsequent execution.", "properties": { "free-form": { "type": "string", "description": "The name of the imported file is specified directly without any other option.\nMost keywords, including loops and conditionals, only applied to the imported tasks, not to this statement itself. If you need any of those to apply, use M(include_tasks) instead." } } }, "ovirt_affinity_label_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV affinity labels.", "properties": { "host": { "type": "string", "description": "Name of the host, which affinity labels should be listed." }, "name": { "type": "string", "description": "Name of the affinity labels which should be listed." }, "vm": { "type": "string", "description": "Name of the VM, which affinity labels should be listed." } } }, "net_linkagg": { "required": [ "name", "members" ], "type": "object", "description": "This module provides declarative management of link aggregation groups on network devices.", "properties": { "name": { "type": "string", "description": "Name of the link aggregation group." }, "purge": { "type": "string", "description": "Purge link aggregation groups not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Default: True\n\nMode of the link aggregation group. A value of C(on) will enable LACP. C(active) configures the link to actively information about the state of the link, or it can be configured in C(passive) mode ie. send link state information only when received them from another link." }, "members": { "type": "array", "description": "List of members interfaces of the link aggregation group. The value can be single interface or list of interfaces." }, "min_links": { "type": "string", "description": "Minimum members that should be up before bringing up the link aggregation group." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." } } }, "ce_snmp_contact": { "required": [ "contact" ], "type": "object", "description": "Manages SNMP contact configurations on HUAWEI CloudEngine switches.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "contact": { "type": "string", "description": "Contact information." } } }, "ec2_group_facts": { "type": "object", "description": "Gather facts about ec2 security groups in AWS.", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSecurityGroups.html) for possible filters. Filter names and values are case sensitive. You can also use underscores (_) instead of dashes (-) in the filter keys, which will take precedence in case of conflict." } } }, "rundeck_acl_policy": { "required": [ "name", "url", "token" ], "type": "object", "description": "Create, update and remove Rundeck ACL policies through HTTP API.", "properties": { "name": { "type": "string", "description": "Sets the project name." }, "url": { "type": "string", "description": "Sets the rundeck instance URL." }, "token": { "type": "string", "description": "Sets the token to authenticate against Rundeck API." }, "project": { "type": "string", "description": "Sets the project which receive the ACL policy.\nIf unset, it's a system ACL policy." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove Rundeck project." }, "policy": { "type": "string", "description": "Sets the ACL policy content.\nACL policy content is a YAML object as described in http://rundeck.org/docs/man5/aclpolicy.html.\nIt can be a YAML string or a pure Ansible inventory YAML object." }, "api_version": { "type": "string", "description": "Default: 14\n\nSets the API version used by module.\nAPI version must be at least 14." } } }, "netscaler_save_config": { "required": [ "nsip", "nitro_user", "nitro_pass" ], "type": "object", "description": "This module uncoditionally saves the configuration on the target netscaler node.\nThis module does not support check mode.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.", "properties": { "nitro_protocol": { "type": "string", "description": "Default: http\n\nWhich protocol to use when accessing the nitro API objects." }, "nsip": { "type": "string", "description": "The ip address of the netscaler appliance where the nitro API calls will be made.\nThe port can be specified with the colon (:). E.g. C(192.168.1.1:555)." }, "nitro_user": { "type": "string", "description": "The username with which to authenticate to the netscaler node." }, "nitro_pass": { "type": "string", "description": "The password with which to authenticate to the netscaler node." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "nitro_timeout": { "type": "string", "description": "Default: 310\n\nTime in seconds until a timeout error is thrown when establishing a new session with Netscaler." } } }, "aci_interface_policy_l2": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "l2_policy", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "l2_policy" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage Layer 2 interface policies on Cisco ACI fabrics.", "properties": { "description": { "type": "string", "description": "The description of the Layer 2 interface policy." }, "descr": { "type": "string", "description": "The description of the Layer 2 interface policy." }, "vepa": { "type": "string", "description": "Default: disabled\n\nDetermines if Virtual Ethernet Port Aggregator is disabled or enabled." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "qinq": { "type": "string", "description": "Default: disabled\n\nDetermines if QinQ is disabled or if the port should be considered a core or edge port." }, "l2_policy": { "type": "string", "description": "The name of the Layer 2 interface policy." }, "vlan_scope": { "type": "string", "description": "Default: global\n\nThe scope of the VLAN." }, "name": { "type": "string", "description": "The name of the Layer 2 interface policy." } } }, "cron": { "allOf": [ { "allOf": [ { "not": { "required": [ "job", "value" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "day", "dom" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "weekday", "dow" ], "type": "object" } } ] } ], "type": "object", "description": "Use this module to manage crontab and environment variables entries. This module allows you to create environment variables and named crontab entries, update, or delete them.\nWhen crontab jobs are managed: the module includes one line with the description of the crontab entry C(\"#Ansible: \") corresponding to the \"name\" passed to the module, which is used by future ansible/module calls to find/check the state. The \"name\" parameter should be unique, and changing the \"name\" value will result in a new cron task being created (or a different one being removed).\nWhen environment variables are managed: no comment line is added, but, when the module needs to find/check the state, it uses the \"name\" parameter to find the environment variable definition line.\nWhen using symbols such as %, they must be properly escaped.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether to ensure the job or environment variable is present or absent." }, "name": { "type": "string", "description": "Description of a crontab entry or, if env is set, the name of environment variable. Required if state=absent. Note that if name is not set and state=present, then a new crontab entry will always be created, regardless of existing ones." }, "insertbefore": { "type": "string", "description": "Used with C(state=present) and C(env). If specified, the environment variable will be inserted before the declaration of specified environment variable." }, "dom": { "type": "string", "description": "Default: *\n\nDay of the month the job should run ( 1-31, *, */2, etc )" }, "hour": { "type": "string", "description": "Default: *\n\nHour when the job should run ( 0-23, *, */2, etc )" }, "dow": { "type": "string", "description": "Default: *\n\nDay of the week that the job should run ( 0-6 for Sunday-Saturday, *, etc )" }, "cron_file": { "type": "string", "description": "If specified, uses this file instead of an individual user's crontab. If this is a relative path, it is interpreted with respect to /etc/cron.d. (If it is absolute, it will typically be /etc/crontab). Many linux distros expect (and some require) the filename portion to consist solely of upper- and lower-case letters, digits, underscores, and hyphens. To use the C(cron_file) parameter you must specify the C(user) as well." }, "reboot": { "description": "Default: no\n\nIf the job should be run at reboot. This option is deprecated. Users should use special_time.", "$ref": "#/definitions/ansible_truth" }, "value": { "type": "string", "description": "The command to execute or, if env is set, the value of environment variable. The command should not contain line breaks. Required if state=present." }, "month": { "type": "string", "description": "Default: *\n\nMonth of the year the job should run ( 1-12, *, */2, etc )" }, "disabled": { "description": "Default: no\n\nIf the job should be disabled (commented out) in the crontab.\nOnly has effect if C(state=present).", "$ref": "#/definitions/ansible_truth" }, "job": { "type": "string", "description": "The command to execute or, if env is set, the value of environment variable. The command should not contain line breaks. Required if state=present." }, "special_time": { "type": "string", "description": "Special time specification nickname." }, "user": { "type": "string", "description": "Default: root\n\nThe specific user whose crontab should be modified." }, "env": { "description": "Default: no\n\nIf set, manages a crontab's environment variable. New variables are added on top of crontab. \"name\" and \"value\" parameters are the name and the value of environment variable.", "$ref": "#/definitions/ansible_truth" }, "insertafter": { "type": "string", "description": "Used with C(state=present) and C(env). If specified, the environment variable will be inserted after the declaration of specified environment variable." }, "backup": { "description": "Default: no\n\nIf set, create a backup of the crontab before it is modified. The location of the backup is returned in the C(backup_file) variable by this module.", "$ref": "#/definitions/ansible_truth" }, "day": { "type": "string", "description": "Default: *\n\nDay of the month the job should run ( 1-31, *, */2, etc )" }, "minute": { "type": "string", "description": "Default: *\n\nMinute when the job should run ( 0-59, *, */2, etc )" }, "weekday": { "type": "string", "description": "Default: *\n\nDay of the week that the job should run ( 0-6 for Sunday-Saturday, *, etc )" } } }, "s3_website": { "required": [ "name" ], "type": "object", "description": "Configure an s3 bucket as a website", "properties": { "redirect_all_requests": { "type": "string", "description": "Describes the redirect behavior for every request to this s3 bucket website endpoint" }, "suffix": { "type": "string", "description": "Default: index.html\n\nSuffix that is appended to a request that is for a directory on the website endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/ the data that is returned will be for the object with the key name images/index.html). The suffix must not include a slash character." }, "region": { "type": "string", "description": "AWS region to create the bucket in. If not set then the value of the AWS_REGION and EC2_REGION environment variables are checked, followed by the aws_region and ec2_region settings in the Boto config file. If none of those are set the region defaults to the S3 Location: US Standard." }, "error_key": { "type": "string", "description": "The object key name to use when a 4XX class error occurs. To remove an error key, set to None." }, "state": { "type": "string", "description": "Default: present\n\nAdd or remove s3 website configuration" }, "name": { "type": "string", "description": "Name of the s3 bucket" } } }, "panos_match_rule": { "required": [ "vsys_id", "password", "ip_address", "source_ip" ], "type": "object", "description": "Security policies allow you to enforce rules and take action, and can be as general or specific as needed.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nUsername credentials to use for auth unless I(api_key) is set." }, "category": { "type": "string", "description": "URL category" }, "destination_ip": { "type": "string", "description": "The destination IP address." }, "api_key": { "type": "string", "description": "API key that can be used instead of I(username)/I(password) credentials." }, "protocol": { "type": "string", "description": "The IP protocol number from 1 to 255." }, "rule_type": { "type": "string", "description": "Default: security\n\nType of rule. Valid types are I(security) or I(nat)." }, "vsys_id": { "type": "string", "description": "Default: vsys1\n\nID of the VSYS object." }, "source_zone": { "type": "string", "description": "The source zone." }, "source_ip": { "type": "string", "description": "The source IP address." }, "source_user": { "type": "string", "description": "The source user or group." }, "application": { "type": "string", "description": "The application." }, "destination_zone": { "type": "string", "description": "The destination zone." }, "source_port": { "type": "string", "description": "The source port." }, "destination_port": { "type": "string", "description": "The destination port." }, "password": { "type": "string", "description": "Password credentials to use for auth unless I(api_key) is set." }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device being configured." }, "to_interface": { "type": "string", "description": "The inbound interface in a NAT rule." } } }, "avi_errorpagebody": { "required": [ "name" ], "type": "object", "description": "This module is used to configure ErrorPageBody object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Field introduced in 17.2.4." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.2.4." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "error_page_body": { "type": "string", "description": "Error page body sent to client when match.\nField introduced in 17.2.4." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Field introduced in 17.2.4." } } }, "eos_logging": { "type": "object", "description": "This module provides declarative management of logging on Arista Eos devices.", "properties": { "name": { "type": "string", "description": "If value of C(dest) is I(host) C(name) should be specified, which indicates hostname or IP address." }, "facility": { "type": "string", "description": "Set logging facility." }, "dest": { "type": "string", "description": "Destination of the logs." }, "level": { "type": "string", "description": "Set logging severity levels." }, "state": { "type": "string", "description": "Default: present\n\nState of the logging configuration." }, "aggregate": { "type": "array", "description": "List of logging definitions." }, "size": { "type": "string", "description": "Size of buffer. The acceptable value is in range from 10 to 2147483647 bytes." } } }, "bigip_gtm_wide_ip": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "wide_ip" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "wide_ip" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "pool_lb_method", "lb_method" ], "type": "object" } }, { "oneOf": [ { "required": [ "pool_lb_method" ], "type": "object" }, { "required": [ "lb_method" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages F5 BIG-IP GTM wide ip.", "properties": { "lb_method": { "type": "string", "description": "Specifies the load balancing method used to select a pool in this wide IP. This setting is relevant only when multiple pools are configured for a wide IP." }, "name": { "type": "string", "description": "Wide IP name. This name must be formatted as a fully qualified domain name (FQDN). You can also use the alias C(wide_ip) but this is deprecated and will be removed in a future Ansible version." }, "pool_lb_method": { "type": "string", "description": "Specifies the load balancing method used to select a pool in this wide IP. This setting is relevant only when multiple pools are configured for a wide IP." }, "type": { "type": "string", "description": "Specifies the type of wide IP. GTM wide IPs need to be keyed by query type in addition to name, since pool members need different attributes depending on the response RDATA they are meant to supply. This value is required if you are using BIG-IP versions >= 12.0.0." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) or C(enabled), ensures that the Wide IP exists and is enabled.\nWhen C(absent), ensures that the Wide IP has been removed.\nWhen C(disabled), ensures that the Wide IP exists and is disabled." }, "pools": { "type": "string", "description": "The pools that you want associated with the Wide IP.\nIf C(ratio) is not provided when creating a new Wide IP, it will default to 1." }, "wide_ip": { "type": "string", "description": "Wide IP name. This name must be formatted as a fully qualified domain name (FQDN). You can also use the alias C(wide_ip) but this is deprecated and will be removed in a future Ansible version." } } }, "jboss": { "required": [ "deployment" ], "type": "object", "description": "Deploy applications to JBoss standalone using the filesystem", "properties": { "src": { "type": "string", "description": "The remote path of the application ear or war to deploy" }, "deploy_path": { "type": "string", "description": "Default: /var/lib/jbossas/standalone/deployments\n\nThe location in the filesystem where the deployment scanner listens" }, "state": { "type": "string", "description": "Default: present\n\nWhether the application should be deployed or undeployed" }, "deployment": { "type": "string", "description": "The name of the deployment" } } }, "avi_systemconfiguration": { "type": "object", "description": "This module is used to configure SystemConfiguration object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "email_configuration": { "type": "string", "description": "Emailconfiguration settings for systemconfiguration." }, "docker_mode": { "description": "Boolean flag to set docker_mode.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "snmp_configuration": { "type": "string", "description": "Snmpconfiguration settings for systemconfiguration." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "dns_configuration": { "type": "string", "description": "Dnsconfiguration settings for systemconfiguration." }, "proxy_configuration": { "type": "string", "description": "Proxyconfiguration settings for systemconfiguration." }, "ssh_hmacs": { "type": "string", "description": "Allowed hmac list for ssh to the management interface on the controller and service engines.\nIf this is not specified, all the default hmacs are allowed.\nSsh -q mac provides the list of default hmacs supported." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "global_tenant_config": { "type": "string", "description": "Tenantconfiguration settings for systemconfiguration." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "linux_configuration": { "type": "string", "description": "Linuxconfiguration settings for systemconfiguration." }, "ntp_configuration": { "type": "string", "description": "Ntpconfiguration settings for systemconfiguration." }, "portal_configuration": { "type": "string", "description": "Portalconfiguration settings for systemconfiguration." }, "dns_virtualservice_refs": { "type": "string", "description": "Dns virtualservices hosting fqdn records for applications across avi vantage.\nIf no virtualservices are provided, avi vantage will provide dns services for configured applications.\nSwitching back to avi vantage from dns virtualservices is not allowed.\nIt is a reference to an object of type virtualservice." }, "admin_auth_configuration": { "type": "string", "description": "Adminauthconfiguration settings for systemconfiguration." }, "mgmt_ip_access_control": { "type": "string", "description": "Configure ip access control for controller to restrict open access." }, "ssh_ciphers": { "type": "string", "description": "Allowed ciphers list for ssh to the management interface on the controller and service engines.\nIf this is not specified, all the default ciphers are allowed.\nSsh -q cipher provides the list of default ciphers supported." }, "default_license_tier": { "type": "string", "description": "Specifies the default license tier which would be used by new clouds.\nEnum options - ENTERPRISE_16, ENTERPRISE_18.\nField introduced in 17.2.5.\nDefault value when not specified in API or module is interpreted by Avi Controller as ENTERPRISE_18." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." } } }, "vr_account_facts": { "type": "object", "description": "Gather facts about account balance, charges and payments.", "properties": {} }, "oneview_san_manager": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage SAN Manager resources. Can create, update, or delete.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired state for the Uplink Set resource. - C(present) ensures data properties are compliant with OneView. - C(absent) removes the resource from OneView, if it exists. - C(connection_information_set) updates the connection information for the SAN Manager. This operation is non-idempotent." }, "data": { "type": "array", "description": "List with SAN Manager properties." } } }, "cs_cluster": { "required": [ "name" ], "type": "object", "description": "Create, update and remove clusters.", "properties": { "username": { "type": "string", "description": "Username for the cluster." }, "guest_vswitch_type": { "type": "string", "description": "Type of virtual switch used for guest traffic in the cluster.\nAllowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)" }, "ovm3_cluster": { "type": "string", "description": "Ovm3 native OCFS2 clustering enabled for cluster." }, "ovm3_pool": { "type": "string", "description": "Ovm3 native pooling enabled for cluster." }, "zone": { "type": "string", "description": "Name of the zone in which the cluster belongs to.\nIf not set, default zone is used." }, "vms_username": { "type": "string", "description": "Username for the VSM associated with this cluster." }, "url": { "type": "string", "description": "URL for the cluster" }, "hypervisor": { "type": "string", "description": "Default: none\n\nName the hypervisor to be used.\nRequired if C(state=present)." }, "ovm3_vip": { "type": "string", "description": "Ovm3 vip to use for pool (and cluster)." }, "vms_ip_address": { "type": "string", "description": "IP address of the VSM associated with this cluster." }, "name": { "type": "string", "description": "name of the cluster." }, "state": { "type": "string", "description": "Default: present\n\nState of the cluster." }, "public_vswitch_name": { "type": "string", "description": "Name of virtual switch used for public traffic in the cluster.\nThis would override zone wide traffic label setting." }, "cluster_type": { "type": "string", "description": "Type of the cluster.\nRequired if C(state=present)" }, "public_vswitch_type": { "type": "string", "description": "Type of virtual switch used for public traffic in the cluster.\nAllowed values are, vmwaresvs (for VMware standard vSwitch) and vmwaredvs (for VMware distributed vSwitch)" }, "pod": { "type": "string", "description": "Name of the pod in which the cluster belongs to." }, "password": { "type": "string", "description": "Password for the cluster." }, "vms_password": { "type": "string", "description": "Password for the VSM associated with this cluster." }, "guest_vswitch_name": { "type": "string", "description": "Name of virtual switch used for guest traffic in the cluster.\nThis would override zone wide traffic label setting." } } }, "junos_vlan": { "required": [ "name", "vlan_id" ], "type": "object", "description": "This module provides declarative management of VLANs on Juniper JUNOS network devices.", "properties": { "name": { "type": "string", "description": "Name of the VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces to check the VLAN has been configured correctly." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "vlan_id": { "type": "string", "description": "ID of the VLAN." }, "description": { "type": "string", "description": "Text description of VLANs." } } }, "nxos_snmp_community": { "required": [ "community" ], "type": "object", "description": "Manages SNMP community configuration.", "properties": { "access": { "type": "string", "description": "Access type for community." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "group": { "type": "string", "description": "Group to which the community belongs." }, "community": { "type": "string", "description": "Case-sensitive community string." }, "acl": { "type": "string", "description": "ACL name to filter snmp requests or keyword 'default'." } } }, "ec2_ami_search": { "required": [ "release", "distro" ], "type": "object", "description": "Look up the most recent AMI on AWS for a given operating system.\nReturns C(ami), C(aki), C(ari), C(serial), C(tag)\nIf there is no AKI or ARI associated with an image, these will be C(null).\nOnly supports images from cloud-images.ubuntu.com\nExample output: C({\"ami\": \"ami-69f5a900\", \"changed\": false, \"aki\": \"aki-88aa75e1\", \"tag\": \"release\", \"ari\": null, \"serial\": \"20131024\"})", "properties": { "stream": { "type": "string", "description": "Default: server\n\nType of release." }, "virt": { "type": "string", "description": "Default: paravirtual\n\nvirutalization type" }, "region": { "type": "string", "description": "Default: us-east-1\n\nEC2 region" }, "release": { "type": "string", "description": "short name of the release (e.g., C(precise))" }, "arch": { "type": "string", "description": "Default: amd64\n\nCPU architecture" }, "store": { "type": "string", "description": "Default: ebs\n\nBack-end store for instance" }, "distro": { "type": "string", "description": "Linux distribution (e.g., C(ubuntu))" } } }, "sl_vm": { "required": [ "disks", "cpus", "memory" ], "type": "object", "description": "Creates or cancels SoftLayer instances.\nWhen created, optionally waits for it to be 'running'.", "properties": { "domain": { "type": "string", "description": "Domain name to be provided to a virtual instance." }, "dedicated": { "description": "Default: no\n\nFlag to determine if the instance should be deployed in dedicated space.", "$ref": "#/definitions/ansible_truth" }, "private": { "description": "Default: no\n\nFlag to determine if the instance should be private only.", "$ref": "#/definitions/ansible_truth" }, "private_vlan": { "type": "string", "description": "VLAN by its Id to be assigned to the private NIC." }, "hourly": { "description": "Default: yes\n\nFlag to determine if the instance should be hourly billed.", "$ref": "#/definitions/ansible_truth" }, "ssh_keys": { "type": "array", "description": "List of ssh keys by their Id to be assigned to a virtual instance." }, "hostname": { "type": "string", "description": "Hostname to be provided to a virtual instance." }, "os_code": { "type": "string", "description": "OS Code to be used for new virtual instance." }, "wait_time": { "type": "string", "description": "Default: 600\n\nTime in seconds before wait returns." }, "state": { "type": "string", "description": "Default: present\n\nCreate, or cancel a virtual instance.\nSpecify C(present) for create, C(absent) to cancel." }, "post_uri": { "type": "string", "description": "URL of a post provisioning script to be loaded and executed on virtual instance." }, "memory": { "type": "string", "description": "Amount of memory to be assigned to new virtual instance." }, "tags": { "type": "string", "description": "Tag or list of tags to be provided to a virtual instance." }, "cpus": { "type": "string", "description": "Count of cpus to be assigned to new virtual instance." }, "image_id": { "type": "string", "description": "Image Template to be used for new virtual instance." }, "nic_speed": { "type": "string", "description": "Default: 10\n\nNIC Speed to be assigned to new virtual instance." }, "public_vlan": { "type": "string", "description": "VLAN by its Id to be assigned to the public NIC." }, "wait": { "description": "Default: yes\n\nFlag used to wait for active status before returning.", "$ref": "#/definitions/ansible_truth" }, "datacenter": { "type": "string", "description": "Datacenter for the virtual instance to be deployed." }, "disks": { "type": "array", "description": "Default: [25]\n\nList of disk sizes to be assigned to new virtual instance." }, "instance_id": { "type": "string", "description": "Instance Id of the virtual instance to perform action option." }, "local_disk": { "description": "Default: yes\n\nFlag to determine if local disk should be used for the new instance.", "$ref": "#/definitions/ansible_truth" } } }, "na_cdot_qtree": { "required": [ "vserver", "state", "name" ], "type": "object", "description": "Create or destroy Qtrees.", "properties": { "vserver": { "type": "string", "description": "The name of the vserver to use." }, "state": { "type": "string", "description": "Whether the specified Qtree should exist or not." }, "name": { "type": "string", "description": "The name of the Qtree to manage." }, "flexvol_name": { "type": "string", "description": "The name of the FlexVol the Qtree should exist on. Required when C(state=present)." } } }, "ec2_instance": { "allOf": [ { "allOf": [ { "not": { "required": [ "vpc_subnet_id", "subnet_id" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about ec2 instances in AWS", "properties": { "availability_zone": { "type": "string", "description": "Specify an availability zone to use the default subnet it. Useful if not specifying the I(vpc_subnet_id) parameter.\nIf no subnet, ENI, or availability zone is provided, the default subnet in the default VPC will be used in the first AZ (alphabetically sorted)." }, "purge_tags": { "type": "string", "description": "Delete any tags not specified in the task that are on the instance. This means you have to specify all the desired tags on each task affecting an instance." }, "image": { "type": "string", "description": "An image to use for the instance. The ec2_ami_facts module may be used to retrieve images. One of I(image) or I(image_id) are required when instance is not already present.\nComplex object containing I(image.id), I(image.ramdisk), and I(image.kernel).\nI(image.id) is the AMI ID.\nI(image.ramdisk) overrides the AMI's default ramdisk ID.\nI(image.kernel) is a string AKI to override the AMI kernel." }, "user_data": { "type": "string", "description": "Opaque blob of data which is made available to the ec2 instance" }, "termination_protection": { "type": "string", "description": "Whether to enable termination protection. This module will not terminate an instance with termination protection active, it must be turned off first." }, "launch_template": { "type": "string", "description": "The EC2 launch template to base instance configuration on.\nI(launch_template.id) the ID or the launch template (optional if name is specified)\nI(launch_template.name) the pretty name of the launch template (optional if id is specified)\nI(launch_template.version) the specific version of the launch template to use. If unspecified, the template default is chosen." }, "filters": { "type": "string", "description": "Default: {'subnet-id': '', 'tag:Name': ''}\n\nA dict of filters to apply when deciding whether existing instances match and should be altered. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html) for possible filters. Filter names and values are case sensitive. By default, instances are filtered for counting by their \"Name\" tag, base AMI, state (running, by default), and subnet ID. Any queryable filter can be used. Good candidates are specific tags, SSH keys, or security groups." }, "security_groups": { "type": "string", "description": "A list of security group IDs or names (strings). Mutually exclusive with I(security_group)." }, "network": { "type": "string", "description": "Either a dictionary containing the key 'interfaces' corresponding to a list of network interface IDs or containing specifications for a single network interface.\nIf specifications for a single network are given, accepted keys are assign_public_ip (bool), private_ip_address (str), ipv6_addresses (list), source_dest_check (bool), description (str), delete_on_termination (bool), device_index (int), groups (list of security group IDs), private_ip_addresses (list), subnet_id (str).\nI(network.interfaces) should be a list of ENI IDs (strings) or a list of objects containing the key I(id).\nUse the ec2_eni to create ENIs with special settings." }, "subnet_id": { "type": "string", "description": "The subnet ID in which to launch the instance (VPC) If none is provided, ec2_instance will chose the default zone of the default VPC" }, "ebs_optimized": { "type": "string", "description": "Whether instance is should use optimized EBS volumes, see U(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html)" }, "cpu_credit_specification": { "type": "string", "description": "For T2 series instances, choose whether to allow increased charges to buy CPU credits if the default pool is depleted.\nChoose I(unlimited) to enable buying additional CPU credits." }, "state": { "type": "string", "description": "Default: present\n\nGoal state for the instances" }, "tags": { "type": "string", "description": "A hash/dictionary of tags to add to the new instance or to add/remove from an existing one." }, "key_name": { "type": "string", "description": "Name of the SSH access key to assign to the instance - must exist in the region the instance is created." }, "vpc_subnet_id": { "type": "string", "description": "The subnet ID in which to launch the instance (VPC) If none is provided, ec2_instance will chose the default zone of the default VPC" }, "instance_ids": { "type": "string", "description": "If you specify one or more instance IDs, only instances that have the specified IDs are returned." }, "tower_callback": { "type": "string", "description": "Preconfigured user-data to enable an instance to perform a Tower callback.\nRequires parameters I(tower_callback.tower_address), I(tower_callback.job_template_id), and I(tower_callback.host_config_key).\nMutually exclusive with I(user_data).\nFor Windows instances, to enable remote access via Ansible set I(tower_callback.windows) to true, and optionally set an admin password.\nIf using 'windows' and 'set_password', callback to Tower will not be performed but the instance will be ready to receive winrm connections from Ansible." }, "image_id": { "type": "string", "description": "I(ami) ID to use for the instance. One of I(image) or I(image_id) are required when instance is not already present.\nThis is an alias for I(image.id)." }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nHow long to wait (in seconds) for the instance to finish booting/terminating" }, "wait": { "type": "string", "description": "Default: True\n\nWhether or not to wait for the desired state (use wait_timeout to customize this)" }, "instance_role": { "type": "string", "description": "The ARN or name of an EC2-enabled instance role to be used. If a name is not provided in arn format then the ListInstanceProfiles permission must also be granted. U(https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListInstanceProfiles.html) If no full ARN is provided, the role with a matching name will be used from the active AWS account." }, "name": { "type": "string", "description": "The Name tag for the instance." }, "instance_initiated_shutdown_behavior": { "type": "string", "description": "Whether to stop or terminate an instance upon shutdown." }, "instance_type": { "type": "string", "description": "Default: t2.micro\n\nInstance type to use for the instance, see U(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) Only required when instance is not already present" }, "tenancy": { "type": "string", "description": "What type of tenancy to allow an instance to use. Default is shared tenancy. Dedicated tenancy will incur additional charges." }, "volumes": { "type": "string", "description": "A list of block device mappings, by default this will always use the AMI root device so the volumes option is primarily for adding more storage.\nA mapping contains the (optional) keys device_name, virtual_name, ebs.device_type, ebs.device_size, ebs.kms_key_id, ebs.iops, and ebs.delete_on_termination.\nFor more information about each parameter, see U(https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_BlockDeviceMapping.html)" }, "security_group": { "type": "string", "description": "A security group ID or name. Mutually exclusive with I(security_groups)." }, "detailed_monitoring": { "type": "string", "description": "Whether to allow detailed cloudwatch metrics to be collected, enabling more detailed alerting." } } }, "xenserver_facts": { "type": "object", "description": "Reads data out of XenAPI, can be used instead of multiple xe commands.", "properties": {} }, "junos_linkagg": { "required": [ "members", "name" ], "type": "object", "description": "This module provides declarative management of link aggregation groups on Juniper JUNOS network devices.", "properties": { "description": { "type": "string", "description": "Description of Interface." }, "device_count": { "type": "string", "description": "Number of aggregated ethernet devices that can be configured. Acceptable integer value is between 1 and 128." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Mode of the link aggregation group. A value of C(on) will enable LACP in C(passive) mode. C(active) configures the link to actively information about the state of the link, or it can be configured in C(passive) mode ie. send link state information only when received them from another link. A value of C(off) will disable LACP." }, "members": { "type": "array", "description": "List of members interfaces of the link aggregation group. The value can be single interface or list of interfaces." }, "min_links": { "type": "string", "description": "Minimum members that should be up before bringing up the link aggregation group." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." }, "name": { "type": "string", "description": "Name of the link aggregation group." } } }, "vertica_configuration": { "required": [ "name", "value" ], "type": "object", "description": "Updates Vertica configuration parameters.", "properties": { "name": { "type": "string", "description": "Name of the parameter to update." }, "login_user": { "type": "string", "description": "Default: dbadmin\n\nThe username used to authenticate with." }, "db": { "type": "string", "description": "Name of the Vertica database." }, "value": { "type": "string", "description": "Value of the parameter to be set." }, "cluster": { "type": "string", "description": "Default: localhost\n\nName of the Vertica cluster." }, "login_password": { "type": "string", "description": "The password used to authenticate with." }, "port": { "type": "string", "description": "Default: 5433\n\nVertica cluster port to connect to." } } }, "ec2_placement_group_facts": { "type": "object", "description": "List details of EC2 Placement Group(s).", "properties": { "names": { "type": "string", "description": "A list of names to filter on. If a listed group does not exist, there will be no corresponding entry in the result; no error will be raised." } } }, "nxos_system": { "type": "object", "description": "This module provides declarative management of node system attributes on Cisco NXOS devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "domain_search": { "type": "string", "description": "Configures a list of domain name suffixes to search when performing DNS name resolution. This argument accepts either a list of domain names or a list of dicts that configure the domain name and VRF name. See examples." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "system_mtu": { "type": "string", "description": "Specifies the mtu, must be an integer." }, "domain_name": { "type": "string", "description": "Configures the default domain name suffix to be used when referencing this node by its FQDN. This argument accepts either a list of domain names or a list of dicts that configure the domain name and VRF name. See examples." }, "name_servers": { "type": "array", "description": "List of DNS name servers by IP address to use to perform name resolution lookups. This argument accepts either a list of DNS servers or a list of hashes that configure the name server and VRF name. See examples." }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "domain_lookup": { "type": "string", "description": "Enables or disables the DNS lookup feature in Cisco NXOS. This argument accepts boolean values. When enabled, the system will try to resolve hostnames using DNS and when disabled, hostnames will not be resolved." } } }, "rds": { "allOf": [ { "allOf": [ { "not": { "required": [ "aws_secret_key", "ec2_secret_key", "secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "zone", "aws_zone", "ec2_zone" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_access_key", "ec2_access_key", "access_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } }, { "oneOf": [ { "required": [ "region" ], "type": "object" }, { "required": [ "aws_region" ], "type": "object" }, { "required": [ "ec2_region" ], "type": "object" } ] } ] } ], "type": "object", "description": "Creates, deletes, or modifies rds instances. When creating an instance it can be either a new instance or a read-only replica of an existing instance. This module has a dependency on python-boto >= 2.5. The 'promote' command requires boto >= 2.18.0. Certain features such as tags rely on boto.rds2 (boto >= 2.26.0)", "properties": { "db_engine": { "type": "string", "description": "The type of database. Used only when command=create.\nmariadb was added in version 2.2" }, "force_failover": { "type": "string", "description": "Default: no\n\nUsed only when command=reboot. If enabled, the reboot is done using a MultiAZ failover." }, "iops": { "type": "string", "description": "Specifies the number of IOPS for the instance. Used only when command=create or command=modify. Must be an integer greater than 1000." }, "backup_window": { "type": "string", "description": "Backup window in format of hh24:mi-hh24:mi. If not specified then a random backup window is assigned. Used only when command=create or command=modify." }, "backup_retention": { "type": "string", "description": "Number of days backups are retained. Set to 0 to disable backups. Default is 1 day. Valid range: 0-35. Used only when command=create or command=modify.\n" }, "port": { "type": "string", "description": "Default: 3306 for mysql, 1521 for Oracle, 1433 for SQL Server, 5432 for PostgreSQL.\n\nPort number that the DB instance uses for connections. Used only when command=create or command=replicate.\nPrior to 2.0 it always defaults to null and the API would use 3306, it had to be set to other DB default values when not using MySql. Starting at 2.0 it automatically defaults to what is expected for each C(db_engine)." }, "security_groups": { "type": "string", "description": "Comma separated list of one or more security groups. Used only when command=create or command=modify." }, "size": { "type": "string", "description": "Size in gigabytes of the initial storage for the DB instance. Used only when command=create or command=modify." }, "aws_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "subnet": { "type": "string", "description": "VPC subnet group. If specified then a VPC instance is created. Used only when command=create." }, "vpc_security_groups": { "type": "string", "description": "Comma separated list of one or more vpc security group ids. Also requires `subnet` to be specified. Used only when command=create or command=modify." }, "upgrade": { "type": "string", "description": "Indicates that minor version upgrades should be applied automatically. Used only when command=create or command=replicate." }, "zone": { "type": "string", "description": "availability zone in which to launch the instance. Used only when command=create, command=replicate or command=restore." }, "source_instance": { "type": "string", "description": "Name of the database to replicate. Used only when command=replicate." }, "parameter_group": { "type": "string", "description": "Name of the DB parameter group to associate with this instance. If omitted then the RDS default DBParameterGroup will be used. Used only when command=create or command=modify." }, "snapshot": { "type": "string", "description": "Name of snapshot to take. When command=delete, if no snapshot name is provided then no snapshot is taken. If used with command=delete with no instance_name, the snapshot is deleted. Used with command=facts, command=delete or command=snapshot." }, "multi_zone": { "type": "string", "description": "Specifies if this is a Multi-availability-zone deployment. Can not be used in conjunction with zone parameter. Used only when command=create or command=modify." }, "new_instance_name": { "type": "string", "description": "Name to rename an instance to. Used only when command=modify." }, "username": { "type": "string", "description": "Master database username. Used only when command=create." }, "access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "tags": { "type": "string", "description": "tags dict to apply to a resource. Used with command=create, command=replicate, command=restore. Requires boto >= 2.26.0" }, "aws_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." }, "db_name": { "type": "string", "description": "Name of a database to create within the instance. If not specified then no database is created. Used only when command=create." }, "license_model": { "type": "string", "description": "The license model for this DB instance. Used only when command=create or command=restore." }, "ec2_access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "ec2_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "apply_immediately": { "type": "string", "description": "Used only when command=modify. If enabled, the modifications will be applied as soon as possible rather than waiting for the next preferred maintenance window." }, "wait": { "type": "string", "description": "Default: no\n\nWhen command=create, replicate, modify or restore then wait for the database to enter the 'available' state. When command=delete wait for the database to be terminated." }, "aws_zone": { "type": "string", "description": "availability zone in which to launch the instance. Used only when command=create, command=replicate or command=restore." }, "aws_access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "ec2_region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." }, "character_set_name": { "type": "string", "description": "Associate the DB instance with a specified character set. Used with command=create." }, "region": { "type": "string", "description": "The AWS region to use. If not specified then the value of the EC2_REGION environment variable, if any, is used." }, "option_group": { "type": "string", "description": "The name of the option group to use. If not specified then the default option group is used. Used only when command=create." }, "engine_version": { "type": "string", "description": "Version number of the database engine to use. Used only when command=create. If not specified then the current Amazon RDS default engine version is used" }, "ec2_zone": { "type": "string", "description": "availability zone in which to launch the instance. Used only when command=create, command=replicate or command=restore." }, "instance_name": { "type": "string", "description": "Database instance identifier. Required except when using command=facts or command=delete on just a snapshot" }, "instance_type": { "type": "string", "description": "The instance type of the database. Must be specified when command=create. Optional when command=replicate, command=modify or command=restore. If not specified then the replica inherits the same instance type as the source instance." }, "password": { "type": "string", "description": "Password for the master database username. Used only when command=create or command=modify." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "command": { "type": "string", "description": "Specifies the action to take. The 'reboot' option is available starting at version 2.0" }, "publicly_accessible": { "type": "string", "description": "explicitly set whether the resource should be publicly accessible or not. Used with command=create, command=replicate. Requires boto >= 2.26.0" }, "secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "maint_window": { "type": "string", "description": "Maintenance window in format of ddd:hh24:mi-ddd:hh24:mi. (Example: Mon:22:00-Mon:23:15) If not specified then a random maintenance window is assigned. Used only when command=create or command=modify.\n" } } }, "ios_vlan": { "required": [ "interfaces", "vlan_id" ], "type": "object", "description": "This module provides declarative management of VLANs on Cisco IOS network devices.", "properties": { "purge": { "type": "string", "description": "Purge VLANs not defined in the I(aggregate) parameter." }, "name": { "type": "string", "description": "Name of the VLAN." }, "interfaces": { "type": "array", "description": "List of interfaces that should be associated to the VLAN." }, "delay": { "type": "string", "description": "Default: 10\n\nDelay the play should wait to check for declarative intent params values." }, "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "associated_interfaces": { "type": "string", "description": "This is a intent option and checks the operational state of the for given vlan C(name) for associated interfaces. If the value in the C(associated_interfaces) does not match with the operational state of vlan interfaces on device it will result in failure." }, "vlan_id": { "type": "string", "description": "ID of the VLAN. Range 1-4094." } } }, "icinga2_host": { "required": [ "ip", "name", "url" ], "type": "object", "description": "Add or remove a host to Icinga2 through the API.\nSee U(https://www.icinga.com/docs/icinga2/latest/doc/12-icinga2-api/)", "properties": { "url_password": { "type": "string", "description": "The password for use in HTTP basic authentication.\nIf the C(url_username) parameter is not specified, the C(url_password) parameter will not be used." }, "check_command": { "type": "string", "description": "Default: hostalive\n\nThe command used to check if the host is alive." }, "display_name": { "type": "string", "description": "Default: if none is give it is the value of the parameter\n\nThe name used to display the host." }, "name": { "type": "string", "description": "Name used to create / delete the host. This does not need to be the FQDN, but does needs to be unique." }, "zone": { "type": "string", "description": "The zone from where this host should be polled." }, "url": { "type": "string", "description": "HTTP, HTTPS, or FTP URL in the form (http|https|ftp)://[user[:pass]]@host.domain[:port]/path" }, "ip": { "type": "string", "description": "The IP address of the host." }, "variables": { "type": "array", "description": "Default: None\n\nList of variables." }, "force_basic_auth": { "description": "Default: no\n\nhttplib2, the library used by the uri module only sends authentication information when a webservice responds to an initial request with a 401 status. Since some basic auth services do not properly send a 401, logins will fail. This option forces the sending of the Basic authentication header upon initial request.", "$ref": "#/definitions/ansible_truth" }, "template": { "type": "string", "description": "Default: None\n\nThe template used to define the host.\nTemplate cannot be modified after object creation." }, "state": { "type": "string", "description": "Default: present\n\nApply feature state." }, "url_username": { "type": "string", "description": "The username for use in HTTP basic authentication.\nThis parameter can be used without C(url_password) for sites that allow empty passwords." }, "client_key": { "type": "string", "description": "PEM formatted file that contains your private key to be used for SSL client authentication. If C(client_cert) contains both the certificate and key, this option is not required." }, "validate_certs": { "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.", "$ref": "#/definitions/ansible_truth" }, "client_cert": { "type": "string", "description": "PEM formatted certificate chain file to be used for SSL client authentication. This file can also include the key as well, and if the key is included, C(client_key) is not required." }, "use_proxy": { "description": "Default: yes\n\nIf C(no), it will not use a proxy, even if one is defined in an environment variable on the target hosts.", "$ref": "#/definitions/ansible_truth" } } }, "fetch": { "allOf": [ { "allOf": [ { "not": { "required": [ "validate_checksum", "validate_md5" ], "type": "object" } } ] } ], "type": "object", "description": "This module works like M(copy), but in reverse. It is used for fetching files from remote machines and storing them locally in a file tree, organized by hostname. Note that this module is written to transfer log files that might not be present, so a missing remote file won't be an error unless fail_on_missing is set to 'yes'.", "properties": { "src": { "type": "string", "description": "The file on the remote system to fetch. This I(must) be a file, not a directory. Recursive fetching may be supported in a later release." }, "flat": { "type": "string", "description": "Allows you to override the default behavior of appending hostname/path/to/file to the destination. If dest ends with '/', it will use the basename of the source file, similar to the copy module. Obviously this is only handy if the filenames are unique." }, "dest": { "type": "string", "description": "A directory to save the file into. For example, if the I(dest) directory is C(/backup) a I(src) file named C(/etc/profile) on host C(host.example.com), would be saved into C(/backup/host.example.com/etc/profile)" }, "validate_md5": { "type": "string", "description": "Default: yes\n\nVerify that the source and destination checksums match after the files are fetched." }, "validate_checksum": { "type": "string", "description": "Default: yes\n\nVerify that the source and destination checksums match after the files are fetched." }, "fail_on_missing": { "type": "string", "description": "Default: no\n\nWhen set to 'yes', the task will fail if the source file is missing." } } }, "consul_kv": { "required": [ "value", "key" ], "type": "object", "description": "Allows the addition, modification and deletion of key/value entries in a consul cluster via the agent. The entire contents of the record, including the indices, flags and session are returned as 'value'.\nIf the key represents a prefix then Note that when a value is removed, the existing value if any is returned as part of the results.\nSee http://www.consul.io/docs/agent/http.html#kv for more details.", "properties": { "cas": { "type": "string", "description": "Default: None\n\nused when acquiring a lock with a session. If the cas is 0, then Consul will only put the key if it does not already exist. If the cas value is non-zero, then the key is only set if the index matches the ModifyIndex of that key." }, "recurse": { "type": "string", "description": "if the key represents a prefix, each entry with the prefix can be retrieved by setting this to true." }, "state": { "type": "string", "description": "Default: present\n\nthe action to take with the supplied key and value. If the state is 'present', the key contents will be set to the value supplied, 'changed' will be set to true only if the value was different to the current contents. The state 'absent' will remove the key/value pair, again 'changed' will be set to true only if the key actually existed prior to the removal. An attempt can be made to obtain or free the lock associated with a key/value pair with the states 'acquire' or 'release' respectively. a valid session must be supplied to make the attempt changed will be true if the attempt is successful, false otherwise." }, "value": { "type": "string", "description": "the value should be associated with the given key, required if state is present" }, "token": { "type": "string", "description": "Default: None\n\nthe token key indentifying an ACL rule set that controls access to the key value pair" }, "session": { "type": "string", "description": "Default: None\n\nthe session that should be used to acquire or release a lock associated with a key/value pair" }, "flags": { "type": "string", "description": "Default: None\n\nopaque integer value that can be passed when setting a value." }, "key": { "type": "string", "description": "the key at which the value should be stored." }, "host": { "type": "string", "description": "Default: localhost\n\nhost of the consul agent defaults to localhost" }, "scheme": { "type": "string", "description": "Default: http\n\nthe protocol scheme on which the consul agent is running" }, "validate_certs": { "type": "string", "description": "Default: True\n\nwhether to verify the tls certificate of the consul agent" }, "port": { "type": "string", "description": "Default: 8500\n\nthe port on which the consul agent is running" } } }, "win_psexec": { "required": [ "command" ], "type": "object", "description": "Run commands (remotely) through the PsExec service\nRun commands as another (domain) user (with elevated privileges)", "properties": { "username": { "type": "string", "description": "The (remote) user to run the command as.\nIf not provided, the current user is used." }, "limited": { "description": "Default: no\n\nRun the command as limited user (strips the Administrators group and allows only privileges assigned to the Users group).", "$ref": "#/definitions/ansible_truth" }, "executable": { "type": "string", "description": "Default: psexec.exe\n\nThe location of the PsExec utility (in case it is not located in your PATH)." }, "chdir": { "type": "string", "description": "Run the command from this (remote) directory." }, "nobanner": { "description": "Default: no\n\nDo not display the startup banner and copyright message.\nThis only works for specific versions of the PsExec binary.", "$ref": "#/definitions/ansible_truth" }, "noprofile": { "description": "Default: no\n\nRun the command without loading the account's profile.", "$ref": "#/definitions/ansible_truth" }, "system": { "description": "Default: no\n\nRun the remote command in the System account.", "$ref": "#/definitions/ansible_truth" }, "elevated": { "description": "Default: no\n\nRun the command with elevated privileges.", "$ref": "#/definitions/ansible_truth" }, "priority": { "type": "string", "description": "Used to run the command at a different priority." }, "hostnames": { "type": "string", "description": "The hostnames to run the command.\nIf not provided, the command is run locally." }, "command": { "type": "string", "description": "The command line to run through PsExec (limited to 260 characters)." }, "timeout": { "type": "string", "description": "The connection timeout in seconds" }, "wait": { "description": "Default: yes\n\nWait for the application to terminate.\nOnly use for non-interactive applications.", "$ref": "#/definitions/ansible_truth" }, "password": { "type": "string", "description": "The password for the (remote) user to run the command as.\nThis is mandatory in order authenticate yourself." }, "interactive": { "description": "Default: no\n\nRun the program so that it interacts with the desktop on the remote system.", "$ref": "#/definitions/ansible_truth" } } }, "ejabberd_user": { "required": [ "username", "host" ], "type": "object", "description": "This module provides user management for ejabberd servers", "properties": { "username": { "type": "string", "description": "the name of the user to manage" }, "host": { "type": "string", "description": "the ejabberd host associated with this username" }, "password": { "type": "string", "description": "the password to assign to the username" }, "logging": { "type": "string", "description": "enables or disables the local syslog facility for this module" }, "state": { "type": "string", "description": "Default: present\n\ndescribe the desired state of the user to be managed" } } }, "sros_rollback": { "type": "object", "description": "Configure the rollback feature on remote Nokia devices running the SR OS operating system. this module provides a stateful implementation for managing the configuration of the rollback feature", "properties": { "state": { "type": "string", "description": "Default: present\n\nThe I(state) argument specifies the state of the configuration entries in the devices active configuration. When the state value is set to C(true) the configuration is present in the devices active configuration. When the state value is set to C(false) the configuration values are removed from the devices active configuration." }, "local_max_checkpoints": { "type": "string", "description": "The I(local_max_checkpoints) argument configures the maximum number of rollback files that can be saved on the devices local compact flash. Valid values for this argument are in the range of 1 to 50" }, "rescue_location": { "type": "string", "description": "The I(rescue_location) specifies the location of the rescue file. This argument supports any valid local or remote URL as specified in SR OS" }, "remote_max_checkpoints": { "type": "string", "description": "The I(remote_max_checkpoints) argument configures the maximum number of rollback files that can be transferred and saved to a remote location. Valid values for this argument are in the range of 1 to 50" }, "rollback_location": { "type": "string", "description": "The I(rollback_location) specifies the location and filename of the rollback checkpoint files. This argument supports any valid local or remote URL as specified in SR OS" } } }, "hpilo_boot": { "required": [ "host" ], "type": "object", "description": "This module boots a system through its HP iLO interface. The boot media can be one of: cdrom, floppy, hdd, network or usb.\nThis module requires the hpilo python module.", "properties": { "force": { "type": "string", "description": "Whether to force a reboot (even when the system is already booted).\nAs a safeguard, without force, hpilo_boot will refuse to reboot a server that is already running." }, "media": { "type": "string", "description": "Default: network\n\nThe boot media to boot the system from" }, "image": { "type": "string", "description": "The URL of a cdrom, floppy or usb boot media image. protocol://username:password@hostname:port/filename\nprotocol is either 'http' or 'https'\nusername:password is optional\nport is optional" }, "ssl_version": { "type": "string", "description": "Default: TLSv1\n\nChange the ssl_version used." }, "state": { "type": "string", "description": "Default: boot_once\n\nThe state of the boot media.\nno_boot: Do not boot from the device\nboot_once: Boot from the device once and then notthereafter\nboot_always: Boot from the device each time the serveris rebooted\nconnect: Connect the virtual media device and set to boot_always\ndisconnect: Disconnects the virtual media device and set to no_boot\npoweroff: Power off the server" }, "host": { "type": "string", "description": "The HP iLO hostname/address that is linked to the physical system." }, "login": { "type": "string", "description": "Default: Administrator\n\nThe login name to authenticate to the HP iLO interface." }, "password": { "type": "string", "description": "Default: admin\n\nThe password to authenticate to the HP iLO interface." } } }, "pn_vrouterlbif": { "required": [ "pn_interface_ip", "state", "pn_vrouter_name" ], "type": "object", "description": "Execute vrouter-loopback-interface-add, vrouter-loopback-interface-remove commands.\nEach fabric, cluster, standalone switch, or virtual network (VNET) can provide its tenants with a virtual router (vRouter) service that forwards traffic between networks and implements Layer 3 protocols.", "properties": { "pn_vrouter_name": { "type": "string", "description": "Specify the name of the vRouter." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_interface_ip": { "type": "string", "description": "Specify the IP address." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to add vrouter loopback interface and 'absent' to remove vrouter loopback interface." }, "pn_index": { "type": "string", "description": "Specify the interface index from 1 to 255." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the cli on." } } }, "avi_gslbgeodbprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure GslbGeoDbProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the geodb profile.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "description": { "type": "string", "description": "Field introduced in 17.1.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "is_federated": { "description": "This field indicates that this object is replicated across gslb federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "entries": { "type": "array", "description": "List of geodb entries.\nAn entry can either be a geodb file or an ip address group with geo properties.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "A user-friendly name for the geodb profile.\nField introduced in 17.1.1." } } }, "nxos_evpn_global": { "required": [ "nv_overlay_evpn" ], "type": "object", "description": "Handles the EVPN control plane for VXLAN.", "properties": { "nv_overlay_evpn": { "type": "string", "description": "EVPN control plane." } } }, "apt": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "package", "pkg" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "install_recommends", "install-recommends" ], "type": "object" } } ] } ], "type": "object", "description": "Manages I(apt) packages (such as for Debian/Ubuntu).", "properties": { "dpkg_options": { "type": "string", "description": "Default: force-confdef,force-confold\n\nAdd dpkg options to apt command. Defaults to '-o \"Dpkg::Options::=--force-confdef\" -o \"Dpkg::Options::=--force-confold\"'\nOptions should be supplied as comma separated list" }, "autoremove": { "description": "Default: no\n\nIf C(yes), remove unused dependency packages for all module states except I(build-dep). It can also be used as the only option.\nPrevious to version 2.4, autoclean was also an alias for autoremove, now it is its own separate command. See documentation for further information.", "$ref": "#/definitions/ansible_truth" }, "force": { "description": "Default: no\n\nCorresponds to the C(--force-yes) to I(apt-get) and implies C(allow_unauthenticated: yes)\nThis option will disable checking both the packages' signatures and the certificates of the web servers they are downloaded from.\nThis option *is not* the equivalent of passing the C(-f) flag to I(apt-get) on the command line\n**This is a destructive operation with the potential to destroy your system, and it should almost never be used.** Please also see C(man apt-get) for more information.", "$ref": "#/definitions/ansible_truth" }, "force_apt_get": { "description": "Default: no\n\nForce usage of apt-get instead of aptitude", "$ref": "#/definitions/ansible_truth" }, "install_recommends": { "description": "Corresponds to the C(--no-install-recommends) option for I(apt). C(yes) installs recommended packages. C(no) does not install recommended packages. By default, Ansible will use the same defaults as the operating system. Suggested packages are never installed.", "$ref": "#/definitions/ansible_truth" }, "package": { "type": "string", "description": "A list of package names, like C(foo), or package specifier with version, like C(foo=1.0). Name wildcards (fnmatch) like C(apt*) and version wildcards like C(foo=1.0*) are also supported." }, "install-recommends": { "description": "Corresponds to the C(--no-install-recommends) option for I(apt). C(yes) installs recommended packages. C(no) does not install recommended packages. By default, Ansible will use the same defaults as the operating system. Suggested packages are never installed.", "$ref": "#/definitions/ansible_truth" }, "autoclean": { "description": "Default: no\n\nIf C(yes), cleans the local repository of retrieved package files that can no longer be downloaded.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "A list of package names, like C(foo), or package specifier with version, like C(foo=1.0). Name wildcards (fnmatch) like C(apt*) and version wildcards like C(foo=1.0*) are also supported." }, "purge": { "description": "Default: no\n\nWill force purging of configuration files if the module state is set to I(absent).", "$ref": "#/definitions/ansible_truth" }, "allow_unauthenticated": { "description": "Default: no\n\nIgnore if packages cannot be authenticated. This is useful for bootstrapping environments that manage their own apt-key setup.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nIndicates the desired package state. C(latest) ensures that the latest version is installed. C(build-dep) ensures the package build dependencies are installed." }, "upgrade": { "type": "string", "description": "Default: no\n\nIf yes or safe, performs an aptitude safe-upgrade.\nIf full, performs an aptitude full-upgrade.\nIf dist, performs an apt-get dist-upgrade.\nNote: This does not upgrade a specific package, use state=latest for that.\nNote: Since 2.4, apt-get is used as a fall-back if aptitude is not present." }, "update_cache": { "description": "Default: no\n\nRun the equivalent of C(apt-get update) before the operation. Can be run as part of the package installation or as a separate step.", "$ref": "#/definitions/ansible_truth" }, "pkg": { "type": "string", "description": "A list of package names, like C(foo), or package specifier with version, like C(foo=1.0). Name wildcards (fnmatch) like C(apt*) and version wildcards like C(foo=1.0*) are also supported." }, "deb": { "type": "string", "description": "Path to a .deb package on the remote machine.\nIf :// in the path, ansible will attempt to download deb before installing. (Version added 2.1)" }, "only_upgrade": { "description": "Default: no\n\nOnly upgrade a package if it is already installed.", "$ref": "#/definitions/ansible_truth" }, "default_release": { "type": "string", "description": "Corresponds to the C(-t) option for I(apt) and sets pin priorities" }, "cache_valid_time": { "type": "string", "description": "Update the apt cache if its older than the I(cache_valid_time). This option is set in seconds. As of Ansible 2.4, this implicitly sets I(update_cache) if set." } } }, "apk": { "type": "object", "description": "Manages I(apk) packages for Alpine Linux.", "properties": { "available": { "type": "string", "description": "During upgrade, reset versioned world dependencies and change logic to prefer replacing or downgrading packages (instead of holding them) if the currently installed package is no longer available from any repository." }, "upgrade": { "type": "string", "description": "Upgrade all installed packages to their latest version." }, "name": { "type": "string", "description": "A package name, like C(foo), or multiple packages, like C(foo, bar)." }, "repository": { "type": "string", "description": "A package repository or multiple repositories. Unlike with the underlying apk command, this list will override the system repositories rather than supplement them." }, "state": { "type": "string", "description": "Default: present\n\nIndicates the desired package(s) state.\nC(present) ensures the package(s) is/are present.\nC(absent) ensures the package(s) is/are absent.\nC(latest) ensures the package(s) is/are present and the latest version(s)." }, "update_cache": { "type": "string", "description": "Update repository indexes. Can be run with other steps or on it's own." } } }, "win_iis_webapplication": { "required": [ "name", "site" ], "type": "object", "description": "Creates, Removes and configures a IIS Web applications", "properties": { "state": { "type": "string", "description": "State of the web application" }, "application_pool": { "type": "string", "description": "The application pool in which the new site executes." }, "name": { "type": "string", "description": "Name of the Web applicatio" }, "physical_path": { "type": "string", "description": "The physical path on the remote host to use for the new applicatiojn. The specified folder must already exist." }, "site": { "type": "string", "description": "Name of the site on which the application is created." } } }, "composer": { "allOf": [ { "allOf": [ { "not": { "required": [ "no_scripts", "no-scripts" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "prefer_source", "prefer-source" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "prefer_dist", "prefer-dist" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "working_dir", "working-dir" ], "type": "object" } }, { "oneOf": [ { "required": [ "working_dir" ], "type": "object" }, { "required": [ "working-dir" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "ignore_platform_reqs", "ignore-platform-reqs" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "no_dev", "no-dev" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "no_plugins", "no-plugins" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "optimize_autoloader", "optimize-autoloader" ], "type": "object" } } ] } ], "type": "object", "description": "Composer is a tool for dependency management in PHP. It allows you to declare the dependent libraries your project needs and it will install them in your project for you", "properties": { "prefer-source": { "type": "string", "description": "Default: no\n\nForces installation from package sources when possible ( see --prefer-source )" }, "prefer-dist": { "type": "string", "description": "Default: no\n\nForces installation from package dist even for dev versions ( see --prefer-dist )" }, "no-plugins": { "type": "string", "description": "Default: no\n\nDisables all plugins ( see --no-plugins )" }, "no_scripts": { "type": "string", "description": "Default: no\n\nSkips the execution of all scripts defined in composer.json ( see --no-scripts )" }, "no_plugins": { "type": "string", "description": "Default: no\n\nDisables all plugins ( see --no-plugins )" }, "optimize_autoloader": { "type": "string", "description": "Default: yes\n\nOptimize autoloader during autoloader dump ( see --optimize-autoloader ). Convert PSR-0/4 autoloading to classmap to get a faster autoloader. This is recommended especially for production, but can take a bit of time to run so it is currently not done by default." }, "working-dir": { "type": "string", "description": "Directory of your project ( see --working-dir )" }, "optimize-autoloader": { "type": "string", "description": "Default: yes\n\nOptimize autoloader during autoloader dump ( see --optimize-autoloader ). Convert PSR-0/4 autoloading to classmap to get a faster autoloader. This is recommended especially for production, but can take a bit of time to run so it is currently not done by default." }, "working_dir": { "type": "string", "description": "Directory of your project ( see --working-dir )" }, "ignore-platform-reqs": { "type": "string", "description": "Default: no\n\nIgnore php, hhvm, lib-* and ext-* requirements and force the installation even if the local machine does not fulfill these." }, "command": { "type": "string", "description": "Default: install\n\nComposer command like \"install\", \"update\" and so on" }, "arguments": { "type": "string", "description": "Composer arguments like required package, version and so on" }, "no-dev": { "type": "string", "description": "Default: yes\n\nDisables installation of require-dev packages ( see --no-dev )" }, "ignore_platform_reqs": { "type": "string", "description": "Default: no\n\nIgnore php, hhvm, lib-* and ext-* requirements and force the installation even if the local machine does not fulfill these." }, "no_dev": { "type": "string", "description": "Default: yes\n\nDisables installation of require-dev packages ( see --no-dev )" }, "no-scripts": { "type": "string", "description": "Default: no\n\nSkips the execution of all scripts defined in composer.json ( see --no-scripts )" }, "prefer_dist": { "type": "string", "description": "Default: no\n\nForces installation from package dist even for dev versions ( see --prefer-dist )" }, "prefer_source": { "type": "string", "description": "Default: no\n\nForces installation from package sources when possible ( see --prefer-source )" } } }, "pubnub_blocks": { "required": [ "name", "keyset", "application" ], "type": "object", "description": "This module allows Ansible to interface with the PubNub BLOCKS infrastructure by providing the following operations: create / remove, start / stop and rename for blocks and create / modify / remove for event handlers", "properties": { "account": { "type": "string", "description": "Name of PubNub account for from which C(application) will be used to manage blocks.\nUser's account will be used if value not set or empty." }, "name": { "type": "string", "description": "Name of managed block which will be later visible on admin.pubnub.com." }, "application": { "type": "string", "description": "Name of target PubNub application for which blocks configuration on specific C(keyset) will be done." }, "validate_certs": { "type": "string", "description": "Default: True\n\nThis key allow to try skip certificates check when performing REST API calls. Sometimes host may have issues with certificates on it and this will cause problems to call PubNub REST API.\nIf check should be ignored C(False) should be passed to this parameter." }, "cache": { "type": "string", "description": "In case if single play use blocks management module few times it is preferred to enabled 'caching' by making previous module to share gathered artifacts and pass them to this parameter.\n" }, "keyset": { "type": "string", "description": "Name of application's keys set which is bound to managed blocks." }, "state": { "type": "string", "description": "Default: started\n\nIntended block state after event handlers creation / update process will be completed." }, "password": { "type": "string", "description": "Password which match to account to which specified C(email) belong.\nNot required if C(cache) contains result of previous module call (in same play)." }, "changes": { "type": "array", "description": "List of fields which should be changed by block itself (doesn't affect any event handlers).\nPossible options for change is: C(name)." }, "email": { "type": "string", "description": "Email from account for which new session should be started.\nNot required if C(cache) contains result of previous module call (in same play)." }, "event_handlers": { "type": "array", "description": "List of event handlers which should be updated for specified block C(name).\nEach entry for new event handler should contain: C(name), C(src), C(channels), C(event). C(name) used as event handler name which can be used later to make changes to it.\nC(src) is full path to file with event handler code.\nC(channels) is name of channel from which event handler is waiting for events.\nC(event) is type of event which is able to trigger event handler: I(js-before-publish), I(js-after-publish), I(js-after-presence).\nEach entry for existing handlers should contain C(name) (so target handler can be identified). Rest parameters (C(src), C(channels) and C(event)) can be added if changes required for them.\nIt is possible to rename event handler by adding C(changes) key to event handler payload and pass dictionary, which will contain single key C(name), where new name should be passed.\nTo remove particular event handler it is possible to set C(state) for it to C(absent) and it will be removed." }, "description": { "type": "string", "description": "Default: New block\n\nShort block description which will be later visible on admin.pubnub.com. Used only if block doesn't exists and won't change description for existing block." } } }, "bigip_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends an arbitrary command to an BIG-IP node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditionals." }, "commands": { "type": "string", "description": "The commands to send to the remote BIG-IP device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries as expired.\nThe I(commands) argument also accepts an alternative form that allows for complex values that specify the command to run and the output format to return. This can be done on a command by command basis. The complex argument supports the keywords C(command) and C(output) where C(command) is the command to run and C(output) is 'text' or 'one-line'." }, "waitfor": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditional, the interval indicates how to long to wait before trying the command again." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "wait_for": { "type": "string", "description": "Specifies what to evaluate from the output of the command and what conditionals to apply. This argument will cause the task to wait for a particular conditional to be true before moving forward. If the conditional is not true by the configured retries, the task fails. See examples." }, "transport": { "type": "string", "description": "Default: rest\n\nConfigures the transport connection to use when connecting to the remote device. The transport argument supports connectivity to the device over cli (ssh) or rest." } } }, "avi_stringgroup": { "required": [ "type", "name" ], "type": "object", "description": "This module is used to configure StringGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the string group." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "Name of the string group." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "kv": { "type": "string", "description": "Configure key value in the string group." }, "type": { "type": "string", "description": "Type of stringgroup.\nEnum options - SG_TYPE_STRING, SG_TYPE_KEYVAL.\nDefault value when not specified in API or module is interpreted by Avi Controller as SG_TYPE_STRING." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "User defined description for the object." } } }, "win_say": { "type": "object", "description": "Uses .NET libraries to convert text to speech and optionally play .wav sounds. Audio Service needs to be running and some kind of speakers or headphones need to be attached to the windows target(s) for the speech to be audible.", "properties": { "start_sound_path": { "type": "string", "description": "Full path to a C(.wav) file containing a sound to play before the text is spoken.\nUseful on conference calls to alert other speakers that ansible has something to say." }, "msg_file": { "type": "string", "description": "Full path to a windows format text file containing the text to be spokend.\nUse either C(msg) or C(msg_file).\nOptional so that you can use this module just to play sounds." }, "end_sound_path": { "type": "string", "description": "Full path to a C(.wav) file containing a sound to play after the text has been spoken.\nUseful on conference calls to alert other speakers that ansible has finished speaking." }, "msg": { "type": "string", "description": "The text to be spoken.\nUse either C(msg) or C(msg_file).\nOptional so that you can use this module just to play sounds." }, "voice": { "type": "string", "description": "Default: system default voice\n\nWhich voice to use. See notes for how to discover installed voices.\nIf the requested voice is not available the default voice will be used. Example voice names from Windows 10 are C(Microsoft Zira Desktop) and C(Microsoft Hazel Desktop)." }, "speech_speed": { "type": "string", "description": "How fast or slow to speak the text.\nMust be an integer value in the range -10 to 10.\n-10 is slowest, 10 is fastest." } } }, "os_nova_host_aggregate": { "required": [ "name" ], "type": "object", "description": "Create, update, or delete OpenStack host aggregates. If a aggregate with the supplied name already exists, it will be updated with the new name, new availability zone, new metadata and new list of hosts.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "availability_zone": { "type": "string", "description": "Default: None\n\nAvailability zone to create aggregate into." }, "hosts": { "type": "array", "description": "Default: None\n\nList of hosts to set for an aggregate." }, "name": { "type": "string", "description": "Name of the aggregate." }, "metadata": { "type": "string", "description": "Default: None\n\nMetadata dict." } } }, "aruba_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an aruba node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(aruba_config) to configure Aruba devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote aruba device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "os_flavor_facts": { "type": "object", "description": "Retrieve facts about available OpenStack instance flavors. By default, facts about ALL flavors are retrieved. Filters can be applied to get facts for only matching flavors. For example, you can filter on the amount of RAM available to the flavor, or the number of virtual CPUs available to the flavor, or both. When specifying multiple filters, *ALL* filters must match on a flavor before that flavor is returned as a fact.", "properties": { "name": { "type": "string", "description": "Default: None\n\nA flavor name. Cannot be used with I(ram) or I(vcpus) or I(ephemeral)." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "ram": { "type": "string", "description": "A string used for filtering flavors based on the amount of RAM (in MB) desired. This string accepts the following special values: 'MIN' (return flavors with the minimum amount of RAM), and 'MAX' (return flavors with the maximum amount of RAM).\nA specific amount of RAM may also be specified. Any flavors with this exact amount of RAM will be returned.\nA range of acceptable RAM may be given using a special syntax. Simply prefix the amount of RAM with one of these acceptable range values: '<', '>', '<=', '>='. These values represent less than, greater than, less than or equal to, and greater than or equal to, respectively." }, "ephemeral": { "type": "string", "description": "A string used for filtering flavors based on the amount of ephemeral storage. Format is the same as the I(ram) parameter" }, "vcpus": { "type": "string", "description": "A string used for filtering flavors based on the number of virtual CPUs desired. Format is the same as the I(ram) parameter." }, "limit": { "type": "string", "description": "Default: None\n\nLimits the number of flavors returned. All matching flavors are returned by default." } } }, "os_ironic": { "required": [ "nics", "driver" ], "type": "object", "description": "Create or Remove Ironic nodes from OpenStack.", "properties": { "uuid": { "type": "string", "description": "Default: None\n\nglobally unique identifier (UUID) to be given to the resource. Will be auto-generated if not specified, and name is specified.\nDefinition of a UUID will always take precedence to a name value." }, "driver_info": { "type": "string", "description": "Information for this server's driver. Will vary based on which driver is in use. Any sub-field which is populated will be validated during creation." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "nics": { "type": "string", "description": "A list of network interface cards, eg, \" - mac: aa:bb:cc:aa:bb:cc\"" }, "driver": { "type": "string", "description": "Default: None\n\nThe name of the Ironic Driver to use with this node." }, "ironic_url": { "type": "string", "description": "Default: None\n\nIf noauth mode is utilized, this is required to be set to the endpoint URL for the Ironic API. Use with \"auth\" and \"auth_type\" settings set to None." }, "state": { "type": "string", "description": "Default: present\n\nIndicates desired state of the resource" }, "chassis_uuid": { "type": "string", "description": "Default: None\n\nAssociate the node with a pre-defined chassis." }, "skip_update_of_driver_password": { "type": "string", "description": "Allows the code that would assert changes to nodes to skip the update if the change is a single line consisting of the password field. As of Kilo, by default, passwords are always masked to API requests, which means the logic as a result always attempts to re-assert the password field." }, "properties": { "type": "string", "description": "Definition of the physical characteristics of this server, used for scheduling purposes" }, "name": { "type": "string", "description": "Default: None\n\nunique name identifier to be given to the resource." } } }, "vmware_vm_facts": { "type": "object", "description": "Return basic facts pertaining to a vSphere virtual machine guest.", "properties": { "vm_type": { "type": "string", "description": "Default: all\n\nIf set to C(vm), then facts are gathered for virtual machines only.\nIf set to C(template), then facts are gathered for virtual machine templates only.\nIf set to C(all), then facts are gathered for all virtual machines and virtual machine templates." } } }, "avi_pool": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Pool object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "lb_algorithm": { "type": "string", "description": "The load balancing algorithm will pick a server within the pool's list of available servers.\nEnum options - LB_ALGORITHM_LEAST_CONNECTIONS, LB_ALGORITHM_ROUND_ROBIN, LB_ALGORITHM_FASTEST_RESPONSE, LB_ALGORITHM_CONSISTENT_HASH,\nLB_ALGORITHM_LEAST_LOAD, LB_ALGORITHM_FEWEST_SERVERS, LB_ALGORITHM_RANDOM, LB_ALGORITHM_FEWEST_TASKS, LB_ALGORITHM_NEAREST_SERVER,\nLB_ALGORITHM_CORE_AFFINITY.\nDefault value when not specified in API or module is interpreted by Avi Controller as LB_ALGORITHM_LEAST_CONNECTIONS." }, "use_service_port": { "description": "Do not translate the client's destination port when sending the connection to the server.\nThe pool or servers specified service port will still be used for health monitoring.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "rewrite_host_header_to_server_name": { "description": "Rewrite incoming host header to server name of the server to which the request is proxied.\nEnabling this feature rewrites host header for requests to all servers in the pool.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "host_check_enabled": { "description": "Enable common name check for server certificate.\nIf enabled and no explicit domain name is specified, avi will use the incoming host header to do the match.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "rewrite_host_header_to_sni": { "description": "If sni server name is specified, rewrite incoming host header to the sni server name.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "capacity_estimation": { "description": "Inline estimation of capacity of servers.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "max_conn_rate_per_server": { "type": "string", "description": "Rate limit connections to each server." }, "servers": { "type": "string", "description": "The pool directs load balanced traffic to this list of destination servers.\nThe servers can be configured by ip address, name, network or via ip address group." }, "fewest_tasks_feedback_delay": { "type": "string", "description": "Periodicity of feedback for fewest tasks server selection algorithm.\nAllowed values are 1-300.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.\nUnits(SEC)." }, "server_auto_scale": { "description": "Server autoscale.\nNot used anymore.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "east_west": { "description": "Inherited config from virtualservice.", "$ref": "#/definitions/ansible_truth" }, "capacity_estimation_ttfb_thresh": { "type": "string", "description": "The maximum time-to-first-byte of a server.\nAllowed values are 1-5000.\nSpecial values are 0 - 'automatic'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0.\nUnits(MILLISECONDS)." }, "ab_pool": { "type": "string", "description": "A/b pool configuration." }, "fail_action": { "type": "string", "description": "Enable an action - close connection, http redirect or local http response - when a pool failure happens.\nBy default, a connection will be closed, in case the pool experiences a failure." }, "lookup_server_by_name": { "description": "Allow server lookup by name.\nField introduced in 17.1.11,17.2.4.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "networks": { "type": "string", "description": "(internal-use) networks designated as containing servers for this pool.\nThe servers may be further narrowed down by a filter.\nThis field is used internally by avi, not editable by the user." }, "lb_algorithm_hash": { "type": "string", "description": "Criteria used as a key for determining the hash between the client and server.\nEnum options - LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS, LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS_AND_PORT,\nLB_ALGORITHM_CONSISTENT_HASH_URI, LB_ALGORITHM_CONSISTENT_HASH_CUSTOM_HEADER, LB_ALGORITHM_CONSISTENT_HASH_CUSTOM_STRING.\nDefault value when not specified in API or module is interpreted by Avi Controller as LB_ALGORITHM_CONSISTENT_HASH_SOURCE_IP_ADDRESS." }, "sni_enabled": { "description": "Enable tls sni for server connections.\nIf disabled, avi will not send the sni extension as part of the handshake.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "server_name": { "type": "string", "description": "Fully qualified dns hostname which will be used in the tls sni extension in server connections if sni is enabled.\nIf no value is specified, avi will use the incoming host header instead." }, "lb_algorithm_consistent_hash_hdr": { "type": "string", "description": "Http header name to be used for the hash key." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "lb_algorithm_core_nonaffinity": { "type": "string", "description": "Degree of non-affinity for core afffinity based server selection.\nAllowed values are 1-65535.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as 2." }, "autoscale_policy_ref": { "type": "string", "description": "Reference to server autoscale policy.\nIt is a reference to an object of type serverautoscalepolicy." }, "ssl_profile_ref": { "type": "string", "description": "When enabled, avi re-encrypts traffic to the backend servers.\nThe specific ssl profile defines which ciphers and ssl versions will be supported.\nIt is a reference to an object of type sslprofile." }, "ipaddrgroup_ref": { "type": "string", "description": "Use list of servers from ip address group.\nIt is a reference to an object of type ipaddrgroup." }, "apic_epg_name": { "type": "string", "description": "Synchronize cisco apic epg members with pool servers." }, "server_reselect": { "type": "string", "description": "Server reselect configuration for http requests." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "nsx_securitygroup": { "type": "string", "description": "A list of nsx service groups where the servers for the pool are created.\nField introduced in 17.1.1." }, "a_pool": { "type": "string", "description": "Name of container cloud application that constitutes a pool in a a-b pool configuration, if different from vs app." }, "pki_profile_ref": { "type": "string", "description": "Avi will validate the ssl certificate present by a server against the selected pki profile.\nIt is a reference to an object of type pkiprofile." }, "vrf_ref": { "type": "string", "description": "Virtual routing context that the pool is bound to.\nThis is used to provide the isolation of the set of networks the pool is attached to.\nThe pool inherits the virtual routing conext of the virtual service, and this field is used only internally, and is set by pb-transform.\nIt is a reference to an object of type vrfcontext." }, "application_persistence_profile_ref": { "type": "string", "description": "Persistence will ensure the same user sticks to the same server for a desired duration of time.\nIt is a reference to an object of type applicationpersistenceprofile." }, "inline_health_monitor": { "description": "The passive monitor will monitor client to server connections and requests and adjust traffic load to servers based on successful responses.\nThis may alter the expected behavior of the lb method, such as round robin.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "default_server_port": { "type": "string", "description": "Traffic sent to servers will use this destination server port unless overridden by the server's specific port attribute.\nThe ssl checkbox enables avi to server encryption.\nAllowed values are 1-65535.\nDefault value when not specified in API or module is interpreted by Avi Controller as 80." }, "description": { "type": "string", "description": "A description of the pool." }, "request_queue_depth": { "type": "string", "description": "Minimum number of requests to be queued when pool is full.\nDefault value when not specified in API or module is interpreted by Avi Controller as 128." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "graceful_disable_timeout": { "type": "string", "description": "Used to gracefully disable a server.\nVirtual service waits for the specified time before terminating the existing connections to the servers that are disabled.\nAllowed values are 1-7200.\nSpecial values are 0 - 'immediate', -1 - 'infinite'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 1.\nUnits(MIN)." }, "domain_name": { "type": "string", "description": "Comma separated list of domain names which will be used to verify the common names or subject alternative names presented by server certificates.\nIt is performed only when common name check host_check_enabled is enabled." }, "ab_priority": { "type": "string", "description": "Priority of this pool in a a-b pool pair.\nInternally used." }, "ssl_key_and_certificate_ref": { "type": "string", "description": "Service engines will present a client ssl certificate to the server.\nIt is a reference to an object of type sslkeyandcertificate." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Uuid of the pool." }, "request_queue_enabled": { "description": "Enable request queue when pool is full.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "The name of the pool." }, "max_concurrent_connections_per_server": { "type": "string", "description": "The maximum number of concurrent connections allowed to each server within the pool.\nNote applied value will be no less than the number of service engines that the pool is placed on.\nIf set to 0, no limit is applied.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "autoscale_launch_config_ref": { "type": "string", "description": "If configured then avi will trigger orchestration of pool server creation and deletion.\nIt is only supported for container clouds like mesos, opensift, kubernates, docker etc.\nIt is a reference to an object of type autoscalelaunchconfig." }, "enabled": { "description": "Enable or disable the pool.\nDisabling will terminate all open connections and pause health monitors.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "server_count": { "type": "string", "description": "Number of server_count.\nDefault value when not specified in API or module is interpreted by Avi Controller as 0." }, "autoscale_networks": { "type": "string", "description": "Network ids for the launch configuration." }, "health_monitor_refs": { "type": "string", "description": "Verify server health by applying one or more health monitors.\nActive monitors generate synthetic traffic from each service engine and mark a server up or down based on the response.\nThe passive monitor listens only to client to server communication.\nIt raises or lowers the ratio of traffic destined to a server based on successful responses.\nIt is a reference to an object of type healthmonitor." }, "connection_ramp_duration": { "type": "string", "description": "Duration for which new connections will be gradually ramped up to a server recently brought online.\nUseful for lb algorithms that are least connection based.\nAllowed values are 1-300.\nSpecial values are 0 - 'immediate'.\nDefault value when not specified in API or module is interpreted by Avi Controller as 10.\nUnits(MIN)." }, "cloud_config_cksum": { "type": "string", "description": "Checksum of cloud configuration for pool.\nInternally set by cloud connector." }, "external_autoscale_groups": { "type": "string", "description": "Names of external auto-scale groups for pool servers.\nCurrently available only for aws and azure.\nField introduced in 17.1.2." }, "gslb_sp_enabled": { "description": "Indicates if the pool is a site-persistence pool.\nField introduced in 17.2.1.", "$ref": "#/definitions/ansible_truth" }, "placement_networks": { "type": "string", "description": "Manually select the networks and subnets used to provide reachability to the pool's servers.\nSpecify the subnet using the following syntax 10-1-1-0/24.\nUse static routes in vrf configuration when pool servers are not directly connected butroutable from the service engine." }, "created_by": { "type": "string", "description": "Creator name." }, "prst_hdr_name": { "type": "string", "description": "Header name for custom header persistence." } } }, "ce_vlan": { "type": "object", "description": "Manages VLAN configurations on Huawei CloudEngine switches.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "vlan_range": { "type": "string", "description": "Range of VLANs such as C(2-10) or C(2,5,10-15), etc." }, "name": { "type": "string", "description": "Name of VLAN, in the range from 1 to 31." }, "vlan_id": { "type": "string", "description": "Single VLAN ID, in the range from 1 to 4094." }, "description": { "type": "string", "description": "Specify VLAN description, in the range from 1 to 80." } } }, "ec2_remote_facts": { "type": "object", "description": "Gather facts about ec2 instances in AWS", "properties": { "filters": { "type": "string", "description": "A dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html) for possible filters." } } }, "os_keypair": { "required": [ "name" ], "type": "object", "description": "Add or Remove key pair from OpenStack", "properties": { "public_key": { "type": "string", "description": "Default: None\n\nThe public key that would be uploaded to nova and injected into VMs upon creation." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "public_key_file": { "type": "string", "description": "Default: None\n\nPath to local file containing ssh public key. Mutually exclusive with public_key." }, "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the key pair" } } }, "azure_rm_postgresqldatabase": { "required": [ "server_name", "resource_group", "name" ], "type": "object", "description": "Create, update and delete instance of PostgreSQL Database.", "properties": { "force_update": { "description": "Default: no\n\nWhen set to C(true), will delete and recreate the existing PostgreSQL database if any of the properties don't match what is set.\nWhen set to C(false), no change will occur to the database even if any of the properties do not match.", "$ref": "#/definitions/ansible_truth" }, "server_name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "charset": { "type": "string", "description": "The charset of the database. Check PostgreSQL documentation for possible values.\nThis is only set on creation, use I(force_update) to recreate a database if the values don't match." }, "collation": { "type": "string", "description": "The collation of the database. Check PostgreSQL documentation for possible values.\nThis is only set on creation, use I(force_update) to recreate a database if the values don't match." }, "name": { "type": "string", "description": "The name of the database." } } }, "avi_gslbservice_patch_member": { "required": [ "name" ], "type": "object", "description": "This module can be used for calling any resources defined in Avi REST API. U(https://avinetworks.com/)\nThis module is useful for invoking HTTP Patch methods and accessing resources that do not have an REST object associated with them.", "properties": { "params": { "type": "string", "description": "Query parameters passed to the HTTP API." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied to the member. Member is\nidentified using field member.ip.addr." }, "data": { "type": "string", "description": "HTTP body of GSLB Service Member in YAML or JSON format." }, "name": { "type": "string", "description": "Name of the GSLB Service" } } }, "eos_template": { "required": [ "src" ], "type": "object", "description": "Manages network device configurations over SSH or eAPI. This module allows implementers to work with the device running-config. It provides a way to push a set of commands onto a network device by evaluating the current running-config and only pushing configuration commands that are not already configured. The config source can be a set of commands or a template.", "properties": { "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will search for the source file in role or playbook root folder in templates directory." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the running-config from the node prior to making any changes. The backup file will be written to backup_{{ hostname }} in the root of the playbook directory." }, "replace": { "type": "string", "description": "This argument will cause the provided configuration to be replaced on the destination node. The use of the replace argument will always cause the task to set changed to true and will implies C(force=true). This argument is only valid with C(transport=eapi)." }, "include_defaults": { "type": "string", "description": "By default when the M(eos_template) connects to the remote device to retrieve the configuration it will issue the C(show running-config) command. If this option is set to True then the issued command will be C(show running-config all)." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." } } }, "os_group": { "required": [ "name" ], "type": "object", "description": "Manage OpenStack Identity Groups. Groups can be created, deleted or updated. Only the I(description) value can be updated.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "name": { "type": "string", "description": "Group name" }, "description": { "type": "string", "description": "Default: None\n\nGroup description" } } }, "ce_ntp_auth": { "required": [ "key_id" ], "type": "object", "description": "Manages NTP authentication configuration on HUAWEI CloudEngine switches.", "properties": { "auth_type": { "type": "string", "description": "Default: encrypt\n\nWhether the given password is in cleartext or has been encrypted. If in cleartext, the device will encrypt it before storing it." }, "auth_pwd": { "type": "string", "description": "Plain text with length of 1 to 255, encrypted text with length of 20 to 392." }, "trusted_key": { "type": "string", "description": "Default: disable\n\nWhether the given key is required to be supplied by a time source for the device to synchronize to the time source." }, "auth_mode": { "type": "string", "description": "Specify authentication algorithm." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "key_id": { "type": "string", "description": "Authentication key identifier (numeric)." }, "authentication": { "type": "string", "description": "Configure ntp authentication enable or unconfigure ntp authentication enable." } } }, "win_file_version": { "required": [ "path" ], "type": "object", "description": "Get DLL or EXE file build version\nchange state alway be false", "properties": { "path": { "type": "string", "description": "File to get version(provide absolute path)" } } }, "dellos6_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to a Dell OS6 node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(dellos6_config) to configure Dell OS6 devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should be tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote dellos6 device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of I(retries), the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the wait_for must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "ec2_tag": { "required": [ "resource", "tags" ], "type": "object", "description": "Creates, removes and lists tags from any EC2 resource. The resource is referenced by its resource id (e.g. an instance being i-XXXXXXX). It is designed to be used with complex args (tags), see the examples. This module has a dependency on python-boto.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the tags should be present or absent on the resource. Use list to interrogate the tags of an instance." }, "resource": { "type": "string", "description": "The EC2 resource id." }, "tags": { "type": "string", "description": "a hash/dictionary of tags to add to the resource; '{\"key\":\"value\"}' and '{\"key\":\"value\",\"key\":\"value\"}'" } } }, "rds_subnet_group": { "required": [ "state", "name" ], "type": "object", "description": "Creates, modifies, and deletes RDS database subnet groups. This module has a dependency on python-boto >= 2.5.", "properties": { "subnets": { "type": "array", "description": "List of subnet IDs that make up the database subnet group." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether the subnet should be present or absent." }, "name": { "type": "string", "description": "Database subnet group identifier." }, "description": { "type": "string", "description": "Database subnet group description. Only set when a new group is added." } } }, "enos_facts": { "type": "object", "description": "Collects a base set of device facts from a remote Lenovo device running on ENOS. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "nxos_banner": { "required": [ "banner" ], "type": "object", "description": "This will configure both exec and motd banners on remote devices running Cisco NXOS. It allows playbooks to add or remote banner text from the active running configuration.", "properties": { "text": { "type": "string", "description": "The banner text that should be present in the remote device running configuration. This argument accepts a multiline string, with no empty lines. Requires I(state=present)." }, "state": { "type": "string", "description": "Default: present\n\nSpecifies whether or not the configuration is present in the current devices active running configuration." }, "banner": { "type": "string", "description": "Specifies which banner that should be configured on the remote device." } } }, "github_release": { "required": [ "repo", "action", "token", "user" ], "type": "object", "description": "Fetch metadata about Github Releases", "properties": { "repo": { "type": "string", "description": "Repository name" }, "action": { "type": "string", "description": "Action to perform" }, "token": { "type": "string", "description": "Github Personal Access Token for authenticating" }, "user": { "type": "string", "description": "The GitHub account that owns the repository" } } }, "cloudtrail": { "allOf": [ { "allOf": [ { "not": { "required": [ "enable_log_file_validation", "log_file_validation_enabled" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "include_global_events", "include_global_service_events" ], "type": "object" } } ] } ], "type": "object", "description": "Creates, deletes, or updates CloudTrail configuration. Ensures logging is also enabled.", "properties": { "enable_log_file_validation": { "type": "string", "description": "Specifies whether log file integrity validation is enabled.\nCloudTrail will create a hash for every log file delivered and produce a signed digest file that can be used to ensure log files have not been tampered." }, "include_global_service_events": { "type": "string", "description": "Default: True\n\nRecord API calls from global services such as IAM and STS." }, "name": { "type": "string", "description": "Name for the CloudTrail.\nNames are unique per-region unless the CloudTrail is a multi-region trail, in which case it is unique per-account." }, "log_file_validation_enabled": { "type": "string", "description": "Specifies whether log file integrity validation is enabled.\nCloudTrail will create a hash for every log file delivered and produce a signed digest file that can be used to ensure log files have not been tampered." }, "cloudwatch_logs_role_arn": { "type": "string", "description": "Specifies a full ARN for an IAM role that assigns the proper permissions for CloudTrail to create and write to the log group.\nSee U(https://docs.aws.amazon.com/awscloudtrail/latest/userguide/send-cloudtrail-events-to-cloudwatch-logs.html)\nRequired when C(cloudwatch_logs_log_group_arn)" }, "include_global_events": { "type": "string", "description": "Default: True\n\nRecord API calls from global services such as IAM and STS." }, "cloudwatch_logs_log_group_arn": { "type": "string", "description": "A full ARN specifying a valid CloudWatch log group to which CloudTrail logs will be delivered. The log group should already exist.\nSee U(https://docs.aws.amazon.com/awscloudtrail/latest/userguide/send-cloudtrail-events-to-cloudwatch-logs.html)\nRequired when C(cloudwatch_logs_role_arn)" }, "s3_bucket_name": { "type": "string", "description": "An existing S3 bucket where CloudTrail will deliver log files.\nThis bucket should exist and have the proper policy.\nSee U(http://docs.aws.amazon.com/awscloudtrail/latest/userguide/aggregating_logs_regions_bucket_policy.html)\nRequired when C(state=present)" }, "is_multi_region_trail": { "type": "string", "description": "Specify whether the trail belongs only to one region or exists in all regions." }, "state": { "type": "string", "description": "Add or remove CloudTrail configuration.\nThe following states have been preserved for backwards compatibility. C(state=enabled) and C(state=disabled).\nenabled=present and disabled=absent." }, "kms_key_id": { "type": "string", "description": "Specifies the KMS key ID to use to encrypt the logs delivered by CloudTrail. This also has the effect of enabling log file encryption.\nThe value can be an alias name prefixed by \"alias/\", a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.\nSee U(https://docs.aws.amazon.com/awscloudtrail/latest/userguide/encrypting-cloudtrail-log-files-with-aws-kms.html)" }, "sns_topic_name": { "type": "string", "description": "SNS Topic name to send notifications to when a log file is delivered" }, "s3_key_prefix": { "type": "string", "description": "S3 Key prefix for delivered log files. A trailing slash is not necessary and will be removed." }, "enable_logging": { "type": "string", "description": "Default: True\n\nStart or stop the CloudTrail logging. If stopped the trail will be paused and will not record events or deliver log files." }, "tags": { "type": "string", "description": "A hash/dictionary of tags to be applied to the CloudTrail resource.\nRemove completely or specify an empty dictionary to remove all tags." } } }, "netapp_e_volume_copy": { "required": [ "api_url", "api_password", "state", "api_username" ], "type": "object", "description": "Create and delete snapshots images on volume groups for NetApp E-series storage arrays.", "properties": { "create_copy_pair_if_does_not_exist": { "type": "string", "description": "Default: True\n\nDefines if a copy pair will be created if it does not exist.\nIf set to True destination_volume_id and source_volume_id are required." }, "search_volume_id": { "type": "string", "description": "Searches for all valid potential target and source volumes that could be used in a copy_pair\nMutually exclusive with volume_copy_pair_id, destination_volume_id and source_volume_id" }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "source_volume_id": { "type": "string", "description": "The the id of the volume copy source.\nIf used, must be paired with destination_volume_id\nMutually exclusive with volume_copy_pair_id, and search_volume_id" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "state": { "type": "string", "description": "Whether the specified volume copy pair should exist or not." }, "volume_copy_pair_id": { "type": "string", "description": "The the id of a given volume copy pair\nMutually exclusive with destination_volume_id, source_volume_id, and search_volume_id\nCan use to delete or check presence of volume pairs\nMust specify this or (destination_volume_id and source_volume_id)" }, "destination_volume_id": { "type": "string", "description": "The the id of the volume copy destination.\nIf used, must be paired with source_volume_id\nMutually exclusive with volume_copy_pair_id, and search_volume_id" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "start_stop_copy": { "type": "string", "description": "starts a re-copy or stops a copy in progress\nNote: If you stop the initial file copy before it it done the copy pair will be destroyed\nRequires volume_copy_pair_id" }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" } } }, "lxd_container": { "required": [ "name" ], "type": "object", "description": "Management of LXD containers", "properties": { "name": { "type": "string", "description": "Name of a container." }, "wait_for_ipv4_addresses": { "type": "string", "description": "If this is true, the M(lxd_container) waits until IPv4 addresses are set to the all network interfaces in the container after starting or restarting." }, "url": { "type": "string", "description": "Default: unix:/var/lib/lxd/unix.socket\n\nThe unix domain socket path or the https URL for the LXD server." }, "trust_password": { "type": "string", "description": "The client trusted password.\nYou need to set this password on the LXD server before running this module using the following command. lxc config set core.trust_password See U(https://www.stgraber.org/2016/04/18/lxd-api-direct-interaction/)\nIf trust_password is set, this module send a request for authentication before sending any requests." }, "cert_file": { "type": "string", "description": "Default: \"{}/.config/lxc/client.crt\" .format(os.environ[\"HOME\"])\n\nThe client certificate file path." }, "ephemeral": { "type": "string", "description": "Whether or not the container is ephemeral (e.g. true or false). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-1)" }, "devices": { "type": "string", "description": "The devices for the container (e.g. { \"rootfs\": { \"path\": \"/dev/kvm\", \"type\": \"unix-char\" }). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-1)" }, "source": { "type": "string", "description": "The source for the container (e.g. { \"type\": \"image\", \"mode\": \"pull\", \"server\": \"https://images.linuxcontainers.org\", \"protocol\": \"lxd\", \"alias\": \"ubuntu/xenial/amd64\" }). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-1)" }, "state": { "type": "string", "description": "Default: started\n\nDefine the state of a container." }, "architecture": { "type": "string", "description": "The archiecture for the container (e.g. \"x86_64\" or \"i686\"). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-1)" }, "timeout": { "type": "string", "description": "Default: 30\n\nA timeout for changing the state of the container.\nThis is also used as a timeout for waiting until IPv4 addresses are set to the all network interfaces in the container after starting or restarting." }, "key_file": { "type": "string", "description": "Default: \"{}/.config/lxc/client.key\" .format(os.environ[\"HOME\"])\n\nThe client certificate key file path." }, "config": { "type": "string", "description": "The config for the container (e.g. {\"limits.cpu\": \"2\"}). See U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#post-1)\nIf the container already exists and its \"config\" value in metadata obtained from GET /1.0/containers/ U(https://github.com/lxc/lxd/blob/master/doc/rest-api.md#10containersname) are different, they this module tries to apply the configurations.\nThe key starts with 'volatile.' are ignored for this comparison.\nNot all config values are supported to apply the existing container. Maybe you need to delete and recreate a container." }, "force_stop": { "type": "string", "description": "If this is true, the M(lxd_container) forces to stop the container when it stops or restarts the container." } } }, "ce_link_status": { "required": [ "interface" ], "type": "object", "description": "Get interface link status on HUAWEI CloudEngine switches.", "properties": { "interface": { "type": "string", "description": "For the interface parameter, you can enter C(all) to display information about all interface, an interface type such as C(40GE) to display information about interfaces of the specified type, or full name of an interface such as C(40GE1/0/22) or C(vlanif10) to display information about the specific interface." } } }, "gce": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "base_name" ], "type": "object" } } ] } ], "type": "object", "description": "Creates or terminates Google Compute Engine (GCE) instances. See U(https://cloud.google.com/compute) for an overview. Full install/configuration instructions for the gce* modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "num_instances": { "type": "string", "description": "can be used with 'name', specifies the number of nodes to provision using 'name' as a base name" }, "ip_forward": { "type": "string", "description": "Default: false\n\nset to true if the instance can forward ip packets (useful for gateways)" }, "image": { "type": "string", "description": "Default: debian-8\n\nimage string to use for the instance (default will follow latest stable debian image)" }, "service_account_permissions": { "type": "string", "description": "service account permissions (see U(https://cloud.google.com/sdk/gcloud/reference/compute/instances/create), --scopes section for detailed information)" }, "pem_file": { "type": "string", "description": "path to the pem file associated with the service account email This option is deprecated. Use 'credentials_file'." }, "network": { "type": "string", "description": "Default: default\n\nname of the network, 'default' will be used if not specified" }, "zone": { "type": "string", "description": "Default: us-central1-a\n\nthe GCE zone to use. The list of available zones is at U(https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)." }, "service_account_email": { "type": "string", "description": "service account email" }, "persistent_boot_disk": { "type": "string", "description": "Default: false\n\nif set, create the instance with a persistent boot disk" }, "disk_auto_delete": { "type": "string", "description": "Default: true\n\nif set boot disk will be removed after instance destruction" }, "state": { "type": "string", "description": "Default: present\n\ndesired state of the resource" }, "image_family": { "type": "string", "description": "image family from which to select the image. The most recent non-deprecated image in the family will be used." }, "project_id": { "type": "string", "description": "your GCE project ID" }, "instance_names": { "type": "string", "description": "a comma-separated list of instance names to create or destroy" }, "metadata": { "type": "string", "description": "a hash/dictionary of custom data for the instance; '{\"key\":\"value\", ...}'" }, "tags": { "type": "string", "description": "a comma-separated list of tags to associate with the instance" }, "preemptible": { "type": "string", "description": "Default: false\n\nif set to true, instances will be preemptible and time-limited. (requires libcloud >= 0.20.0)" }, "machine_type": { "type": "string", "description": "Default: n1-standard-1\n\nmachine type to use for the instance, use 'n1-standard-1' by default" }, "disk_size": { "type": "string", "description": "Default: 10\n\nThe size of the boot disk created for this instance (in GB)" }, "name": { "type": "string", "description": "either a name of a single instance or when used with 'num_instances', the base name of a cluster of nodes" }, "base_name": { "type": "string", "description": "either a name of a single instance or when used with 'num_instances', the base name of a cluster of nodes" }, "external_ip": { "type": "string", "description": "Default: ephemeral\n\ntype of external ip, ephemeral by default; alternatively, a fixed gce ip or ip name can be given. Specify 'none' if no external ip is desired." }, "disks": { "type": "string", "description": "a list of persistent disks to attach to the instance; a string value gives the name of the disk; alternatively, a dictionary value can define 'name' and 'mode' ('READ_ONLY' or 'READ_WRITE'). The first entry will be the boot disk (which must be READ_WRITE)." }, "external_projects": { "type": "string", "description": "A list of other projects (accessible with the provisioning credentials) to be searched for the image." }, "credentials_file": { "type": "string", "description": "path to the JSON file associated with the service account email" }, "subnetwork": { "type": "string", "description": "name of the subnetwork in which the instance should be created" } } }, "portage": { "type": "object", "description": "Manages Gentoo packages", "properties": { "nodeps": { "type": "string", "description": "Only merge packages but not their dependencies (--nodeps)" }, "getbinpkg": { "type": "string", "description": "Prefer packages specified at PORTAGE_BINHOST in make.conf" }, "onlydeps": { "type": "string", "description": "Only merge packages' dependencies but not the packages (--onlydeps)" }, "newuse": { "type": "string", "description": "Include installed packages where USE flags have changed (--newuse)" }, "package": { "type": "string", "description": "Package atom or set, e.g. C(sys-apps/foo) or C(>foo-2.13) or C(@world)" }, "oneshot": { "type": "string", "description": "Do not add the packages to the world file (--oneshot)" }, "update": { "type": "string", "description": "Update packages to the best version available (--update)" }, "deep": { "type": "string", "description": "Consider the entire dependency tree of packages (--deep)" }, "sync": { "type": "string", "description": "Sync package repositories first\nIf yes, perform \"emerge --sync\"\nIf web, perform \"emerge-webrsync\"" }, "changed_use": { "type": "string", "description": "Include installed packages where USE flags have changed, except when\nflags that the user has not enabled are added or removed\n(--changed-use)" }, "state": { "type": "string", "description": "Default: present\n\nState of the package atom" }, "quiet": { "type": "string", "description": "Run emerge in quiet mode (--quiet)" }, "usepkgonly": { "type": "string", "description": "Merge only binaries (no compiling). This sets getbinpkg=yes." }, "depclean": { "type": "string", "description": "Remove packages not needed by explicitly merged packages (--depclean)\nIf no package is specified, clean up the world's dependencies\nOtherwise, --depclean serves as a dependency aware version of --unmerge" }, "noreplace": { "type": "string", "description": "Do not re-emerge installed packages (--noreplace)" }, "verbose": { "type": "string", "description": "Run emerge in verbose mode (--verbose)" } } }, "pkgin": { "type": "object", "description": "The standard package manager for SmartOS, but also usable on NetBSD or any OS that uses C(pkgsrc). (Home: U(http://pkgin.net/))", "properties": { "upgrade": { "type": "string", "description": "Upgrade main packages to their newer versions" }, "force": { "type": "string", "description": "Force package reinstall" }, "name": { "type": "string", "description": "Name of package to install/remove;\nmultiple names may be given, separated by commas" }, "full_upgrade": { "type": "string", "description": "Upgrade all packages to their newer versions" }, "state": { "type": "string", "description": "Default: present\n\nIntended state of the package" }, "update_cache": { "type": "string", "description": "Update repository database. Can be run with other steps or on it's own." }, "clean": { "type": "string", "description": "Clean packages cache" } } }, "netapp_e_storagepool": { "required": [ "api_password", "api_url", "name", "ssid", "raid_level", "state", "api_username" ], "type": "object", "description": "Create or remove disk groups and disk pools for NetApp E-series storage arrays.", "properties": { "criteria_size_unit": { "type": "string", "description": "Default: gb\n\nThe unit used to interpret size parameters" }, "ssid": { "type": "string", "description": "The ID of the array to manage (as configured on the web services proxy)." }, "criteria_drive_require_fde": { "type": "string", "description": "Whether full disk encryption ability is required for drives to be added to the storage pool" }, "criteria_min_usable_capacity": { "type": "string", "description": "The minimum size of the storage pool (in size_unit). The pool will be expanded if this value exceeds itscurrent size." }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "state": { "type": "string", "description": "Whether the specified storage pool should exist or not.\nNote that removing a storage pool currently requires the removal of all defined volumes first." }, "erase_secured_drives": { "type": "string", "description": "Whether to erase secured disks before adding to storage pool" }, "secure_pool": { "type": "string", "description": "Whether to convert to a secure storage pool. Will only work if all drives in the pool are security capable." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "raid_level": { "type": "string", "description": "Only required when the requested state is 'present'. The RAID level of the storage pool to be created." }, "criteria_drive_min_size": { "type": "string", "description": "The minimum individual drive size (in size_unit) to consider when choosing drives for the storage pool." }, "remove_volumes": { "type": "string", "description": "Prior to removing a storage pool, delete all volumes in the pool." }, "criteria_drive_type": { "type": "string", "description": "The type of disk (hdd or ssd) to use when searching for candidates to use." }, "criteria_drive_count": { "type": "string", "description": "The number of disks to use for building the storage pool. The pool will be expanded if this number exceeds the number of disks already in place" }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "criteria_drive_interface_type": { "type": "string", "description": "The interface type to use when selecting drives for the storage pool (no value means all interface types will be considered)" }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "reserve_drive_count": { "type": "string", "description": "Set the number of drives reserved by the storage pool for reconstruction operations. Only valide on raid disk pools." }, "name": { "type": "string", "description": "The name of the storage pool to manage" } } }, "aws_waf_facts": { "type": "object", "description": "Retrieve facts for WAF ACLs, Rule , Conditions and Filters.", "properties": { "name": { "type": "string", "description": "The name of a Web Application Firewall" } } }, "ec2_customer_gateway": { "required": [ "ip_address", "name" ], "type": "object", "description": "Manage an AWS customer gateway", "properties": { "state": { "type": "string", "description": "Default: present\n\nCreate or terminate the Customer Gateway." }, "ip_address": { "type": "string", "description": "Internet-routable IP address for customers gateway, must be a static address." }, "name": { "type": "string", "description": "Name of the customer gateway." }, "bgp_asn": { "type": "string", "description": "Border Gateway Protocol (BGP) Autonomous System Number (ASN), required when state=present." } } }, "async_status": { "required": [ "jid" ], "type": "object", "description": "This module gets the status of an asynchronous task.\nThis module is also supported for Windows targets.", "properties": { "jid": { "type": "string", "description": "Job or task identifier" }, "mode": { "type": "string", "description": "Default: status\n\nif C(status), obtain the status; if C(cleanup), clean up the async job cache (by default in C(~/.ansible_async/)) for the specified job I(jid)." } } }, "npm": { "type": "object", "description": "Manage node.js packages with Node Package Manager (npm)", "properties": { "executable": { "type": "string", "description": "The executable location for npm.\nThis is useful if you are using a version manager, such as nvm" }, "name": { "type": "string", "description": "The name of a node.js library to install" }, "global": { "type": "string", "description": "Install the node.js library globally" }, "ignore_scripts": { "type": "string", "description": "Use the --ignore-scripts flag when installing." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the node.js library" }, "production": { "type": "string", "description": "Install dependencies in production mode, excluding devDependencies" }, "registry": { "type": "string", "description": "The registry to install modules from." }, "version": { "type": "string", "description": "The version to be installed" }, "path": { "type": "string", "description": "The base path where to install the node.js libraries" } } }, "atomic_container": { "required": [ "state", "name", "image", "backend", "mode" ], "type": "object", "description": "Manage the containers on the atomic host platform\nAllows to manage the lifecycle of a container on the atomic host platform", "properties": { "name": { "type": "string", "description": "Name of the container" }, "image": { "type": "string", "description": "The image to use to install the container" }, "state": { "type": "string", "description": "Default: latest\n\nState of the container" }, "values": { "type": "string", "description": "Default: None\n\nValues for the installation of the container. This option is permitted only with mode 'user' or 'system'. The values specified here will be used at installation time as --set arguments for atomic install." }, "mode": { "type": "string", "description": "Default: None\n\nDefine if it is an user or a system container" }, "rootfs": { "type": "string", "description": "Define the rootfs of the image" }, "backend": { "type": "string", "description": "Default: None\n\nDefine the backend to use for the container" } } }, "win_disk_image": { "required": [ "image_path" ], "type": "object", "description": "Manages mount behavior for a specified ISO, VHD, or VHDX image on a Windows host. When C(state) is C(present), the image will be mounted under a system-assigned drive letter, which will be returned in the C(mount_path) value of the module result. Requires Windows 8+ or Windows Server 2012+.", "properties": { "state": { "type": "string", "description": "Default: present\n\nwhether the image should be present as a drive-letter mount or not." }, "image_path": { "type": "string", "description": "path to an ISO, VHD, or VHDX image on the target Windows host (the file cannot reside on a network share)" } } }, "os_object": { "required": [ "container" ], "type": "object", "description": "Create or Delete objects and containers from OpenStack", "properties": { "container": { "type": "string", "description": "The name of the container in which to create the object" }, "name": { "type": "string", "description": "Name to be give to the object. If omitted, operations will be on the entire container" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "filename": { "type": "string", "description": "Path to local file to be uploaded." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "container_access": { "type": "string", "description": "Default: private\n\ndesired container access level." } } }, "azure_rm_resourcegroup": { "required": [ "name" ], "type": "object", "description": "Create, update and delete a resource group.", "properties": { "state": { "type": "string", "description": "Default: present\n\nAssert the state of the resource group. Use 'present' to create or update and 'absent' to delete. When 'absent' a resource group containing resources will not be removed unless the force option is used." }, "force": { "type": "string", "description": "Remove a resource group and all associated resources. Use with state 'absent' to delete a resource group that contains resources." }, "location": { "type": "string", "description": "Azure location for the resource group. Required when creating a new resource group. Cannot be changed once resource group is created." }, "name": { "type": "string", "description": "Name of the resource group." } } }, "nxos_portchannel": { "required": [ "group" ], "type": "object", "description": "Manages port-channel specific configuration parameters.", "properties": { "group": { "type": "string", "description": "Channel-group number for the port-channel." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "mode": { "type": "string", "description": "Default: True\n\nMode for the port-channel, i.e. on, active, passive." }, "members": { "type": "array", "description": "List of interfaces that will be managed in a given portchannel." }, "min_links": { "type": "string", "description": "Min links required to keep portchannel up." }, "force": { "type": "string", "description": "When true it forces port-channel members to match what is declared in the members param. This can be used to remove members." } } }, "avi_serviceengine": { "type": "object", "description": "This module is used to configure ServiceEngine object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "container_mode": { "description": "Boolean flag to set container_mode.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "enable_state": { "type": "string", "description": "Inorder to disable se set this field appropriately.\nEnum options - SE_STATE_ENABLED, SE_STATE_DISABLED_FOR_PLACEMENT, SE_STATE_DISABLED, SE_STATE_DISABLED_FORCE.\nDefault value when not specified in API or module is interpreted by Avi Controller as SE_STATE_ENABLED." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "mgmt_vnic": { "type": "string", "description": "Vnic settings for serviceengine." }, "cloud_ref": { "type": "string", "description": "It is a reference to an object of type cloud." }, "hypervisor": { "type": "string", "description": "Enum options - default, vmware_esx, kvm, vmware_vsan, xen." }, "se_group_ref": { "type": "string", "description": "It is a reference to an object of type serviceenginegroup." }, "controller_created": { "description": "Boolean flag to set controller_created.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "container_type": { "type": "string", "description": "Enum options - container_type_bridge, container_type_host, container_type_host_dpdk.\nDefault value when not specified in API or module is interpreted by Avi Controller as CONTAINER_TYPE_HOST." }, "host_ref": { "type": "string", "description": "It is a reference to an object of type vimgrhostruntime." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "resources": { "type": "string", "description": "Seresources settings for serviceengine." }, "availability_zone": { "type": "string", "description": "Availability_zone of serviceengine." }, "controller_ip": { "type": "string", "description": "Controller_ip of serviceengine." }, "flavor": { "type": "string", "description": "Flavor of serviceengine." }, "data_vnics": { "type": "array", "description": "List of vnic." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of the object.\nDefault value when not specified in API or module is interpreted by Avi Controller as VM name unknown." } } }, "azure_rm_managed_disk_facts": { "type": "object", "description": "Get facts for a specific managed disk or all managed disks.", "properties": { "name": { "type": "string", "description": "Limit results to a specific managed disk" }, "resource_group": { "type": "string", "description": "Limit results to a specific resource group" }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "cloudflare_dns": { "allOf": [ { "allOf": [ { "not": { "required": [ "value", "content" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "record", "name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "zone", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "zone" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages dns records via the Cloudflare API, see the docs: U(https://api.cloudflare.com/)", "properties": { "solo": { "type": "string", "description": "Whether the record should be the only one for that record type and record name. Only use with C(state=present)\nThis will delete all other records with the same record name and type." }, "domain": { "type": "string", "description": "The name of the Zone to work with (e.g. \"example.com\"). The Zone must already exist." }, "account_email": { "type": "string", "description": "Account email." }, "weight": { "type": "string", "description": "Default: 1\n\nService weight. Required for C(type=SRV)" }, "proto": { "type": "string", "description": "Service protocol. Required for C(type=SRV)" }, "value": { "type": "string", "description": "The record value. Required for C(state=present)" }, "name": { "type": "string", "description": "Default: @\n\nRecord to add. Required if C(state=present). Default is C(@) (e.g. the zone name)" }, "content": { "type": "string", "description": "The record value. Required for C(state=present)" }, "record": { "type": "string", "description": "Default: @\n\nRecord to add. Required if C(state=present). Default is C(@) (e.g. the zone name)" }, "state": { "type": "string", "description": "Default: present\n\nWhether the record(s) should exist or not" }, "service": { "type": "string", "description": "Record service. Required for C(type=SRV)" }, "timeout": { "type": "string", "description": "Default: 30\n\nTimeout for Cloudflare API calls" }, "ttl": { "type": "string", "description": "Default: 1 (automatic)\n\nThe TTL to give the new record. Must be between 120 and 2,147,483,647 seconds, or 1 for automatic." }, "account_api_token": { "type": "string", "description": "Account API token. You can obtain your API key from the bottom of the Cloudflare 'My Account' page, found here: U(https://www.cloudflare.com/a/account)" }, "zone": { "type": "string", "description": "The name of the Zone to work with (e.g. \"example.com\"). The Zone must already exist." }, "type": { "type": "string", "description": "The type of DNS record to create. Required if C(state=present)" }, "port": { "type": "string", "description": "Service port. Required for C(type=SRV)" }, "priority": { "type": "string", "description": "Default: 1\n\nRecord priority. Required for C(type=MX) and C(type=SRV)" } } }, "clc_blueprint_package": { "required": [ "server_ids", "package_id" ], "type": "object", "description": "An Ansible module to deploy blue print package on a set of servers in CenturyLink Cloud.", "properties": { "server_ids": { "type": "string", "description": "A list of server Ids to deploy the blue print package." }, "package_id": { "type": "string", "description": "The package id of the blue print." }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the tasks to finish before returning." }, "state": { "type": "string", "description": "Default: present\n\nWhether to install or un-install the package. Currently it supports only \"present\" for install action." }, "package_params": { "type": "string", "description": "The dictionary of arguments required to deploy the blue print." } } }, "manageiq_policies": { "required": [ "resource_name", "resource_type" ], "type": "object", "description": "The manageiq_policies module supports adding and deleting policy_profiles in ManageIQ.", "properties": { "state": { "type": "string", "description": "Default: present\n\nabsent - policy_profiles should not exist,\npresent - policy_profiles should exist,\nlist - list current policy_profiles and policies." }, "resource_name": { "type": "string", "description": "the name of the resource to which the profile should be [un]assigned" }, "policy_profiles": { "type": "array", "description": "list of dictionaries, each includes the policy_profile 'name' key.\nrequired if state is present or absent." }, "resource_type": { "type": "string", "description": "the type of the resource to which the profile should be [un]assigned" } } }, "jira": { "allOf": [ { "allOf": [ { "not": { "required": [ "operation", "command" ], "type": "object" } }, { "oneOf": [ { "required": [ "operation" ], "type": "object" }, { "required": [ "command" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create and modify issues in a JIRA instance.", "properties": { "username": { "type": "string", "description": "The username to log-in with." }, "comment": { "type": "string", "description": "The comment text to add." }, "description": { "type": "string", "description": "The issue description, where appropriate." }, "validate_certs": { "type": "string", "description": "Default: True\n\nRequire valid SSL certificates (set to `false` if you'd like to use self-signed certificates)" }, "fields": { "type": "string", "description": "This is a free-form data structure that can contain arbitrary data. This is passed directly to the JIRA REST API (possibly after merging with other required data, as when passed to create). See examples for more information, and the JIRA REST API for the structure required for various fields." }, "outwardissue": { "type": "string", "description": "Set issue to which link will be created." }, "status": { "type": "string", "description": "The desired status; only relevant for the transition operation." }, "uri": { "type": "string", "description": "Base URI for the JIRA instance." }, "summary": { "type": "string", "description": "The issue summary, where appropriate." }, "project": { "type": "string", "description": "The project for this operation. Required for issue creation." }, "assignee": { "type": "string", "description": "Sets the assignee on create or transition operations. Note not all transitions will allow this." }, "inwardissue": { "type": "string", "description": "Set issue from which link will be created." }, "command": { "type": "string", "description": "The operation to perform." }, "timeout": { "type": "string", "description": "Default: 10\n\nSet timeout, in seconds, on requests to JIRA API." }, "issuetype": { "type": "string", "description": "The issue type, for issue creation." }, "linktype": { "type": "string", "description": "Set type of link, when action 'link' selected." }, "operation": { "type": "string", "description": "The operation to perform." }, "password": { "type": "string", "description": "The password to log-in with." }, "issue": { "type": "string", "description": "An existing issue key to operate on." } } }, "oneview_ethernet_network": { "required": [ "data" ], "type": "object", "description": "Provides an interface to manage Ethernet Network resources. Can create, update, or delete.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicates the desired state for the Ethernet Network resource. - C(present) will ensure data properties are compliant with OneView. - C(absent) will remove the resource from OneView, if it exists. - C(default_bandwidth_reset) will reset the network connection template to the default." }, "data": { "type": "array", "description": "List with Ethernet Network properties." } } }, "nxos_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "running_config", "config" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Cisco NXOS configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with NXOS configuration sections in a deterministic way. This module works with either CLI or NXAPI transports.", "properties": { "intended_config": { "type": "string", "description": "The C(intended_config) provides the master configuration that the node should conform to and is used to check the final running-config against. This argument will not modify any settings on the remote device and is strictly used to check the compliance of the current device's configuration against. When specifying this argument, the task should also modify the C(diff_against) value and set it to I(intended)." }, "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration file to load into the remote system. The path can either be a full system path to the configuration file if the value starts with / or relative to the root of the implemented role or playbook. This argument is mutually exclusive with the I(lines) and I(parents) arguments." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "save_when": { "type": "string", "description": "Default: never\n\nWhen changes are made to the device running-configuration, the changes are not copied to non-volatile storage by default. Using this argument will change that before. If the argument is set to I(always), then the running-config will always be copied to the startup-config and the I(modified) flag will always be set to True. If the argument is set to I(modified), then the running-config will only be copied to the startup-config if it has changed since the last save to startup-config. If the argument is set to I(never), the running-config will never be copied to the startup-config" }, "force": { "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in a future release.", "$ref": "#/definitions/ansible_truth" }, "replace_src": { "type": "string", "description": "The I(replace_src) argument provides path to the configuration file to load into the remote system. This argument is used to replace the entire config with a flat-file. This is used with argument I(replace) with value I(config). This is mutually exclusive with the I(lines) and I(src) arguments. This argument is supported on Nexus 9K device. Use I(nxos_file_copy) module to copy the flat file to remote device and then use the path with this argument." }, "backup": { "description": "Default: no\n\nThis argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory or role root directory, if playbook is part of an ansible role. If the directory does not exist, it is created.", "$ref": "#/definitions/ansible_truth" }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "diff_against": { "type": "string", "description": "Default: startup\n\nWhen using the C(ansible-playbook --diff) command line argument the module can generate diffs against different sources.\nWhen this option is configure as I(startup), the module will return the diff of the running-config against the startup-config.\nWhen this option is configured as I(intended), the module will return the diff of the running-config against the configuration provided in the C(intended_config) argument.\nWhen this option is configured as I(running), the module will return the before and after diff of the running-config with respect to any changes made to the device configuration." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct. I(replace config) is supported only on Nexus 9K device." }, "running_config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "defaults": { "description": "The I(defaults) argument will influence how the running-config is collected from the device. When the value is set to true, the command used to collect the running-config is append with the all keyword. When the value is set to false, the command is issued without the all keyword", "$ref": "#/definitions/ansible_truth" }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "description": "The C(save) argument instructs the module to save the running-config to startup-config. This operation is performed after any changes are made to the current running config. If no changes are made, the configuration is still saved to the startup config. This option will always cause the module to return changed.\nThis option is deprecated as of Ansible 2.4, use C(save_when)", "$ref": "#/definitions/ansible_truth" }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(running_config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "diff_ignore_lines": { "type": "string", "description": "Use this argument to specify one or more lines that should be ignored during the diff. This is used for lines in the configuration that are automatically updated by the system. This argument takes a list of regular expressions or exact line matches." } } }, "na_cdot_volume": { "required": [ "name", "vserver", "state" ], "type": "object", "description": "Create or destroy volumes on NetApp cDOT", "properties": { "name": { "type": "string", "description": "The name of the volume to manage." }, "size_unit": { "type": "string", "description": "Default: gb\n\nThe unit used to interpret the size parameter." }, "vserver": { "type": "string", "description": "Default: None\n\nName of the vserver to use." }, "state": { "type": "string", "description": "Whether the specified volume should exist or not." }, "online": { "type": "string", "description": "Default: True\n\nWhether the specified volume is online, or not." }, "infinite": { "type": "string", "description": "Default: False\n\nSet True if the volume is an Infinite Volume." }, "aggregate_name": { "type": "string", "description": "The name of the aggregate the flexvol should exist on. Required when C(state=present)." }, "size": { "type": "string", "description": "The size of the volume in (size_unit). Required when C(state=present)." } } }, "openshift_raw": { "type": "object", "description": "Use the OpenShift Python client to perform CRUD operations on OpenShift objects.\nPass the object definition from a source file or inline. See examples for reading files and using Jinja templates.\nAccess to the full range of K8s and OpenShift APIs.\nAuthenticate using either a config file, certificates, password or token.\nSupports check mode.", "properties": { "display_name": { "type": "string", "description": "Use only when creating a project, otherwise ignored. Adds a display name to the project metadata." }, "description": { "type": "string", "description": "Use only when creating a project, otherwise ignored. Adds a description to the project metadata." } } }, "ecs_ecr": { "required": [ "name" ], "type": "object", "description": "Manage Elastic Container Registry repositories", "properties": { "name": { "type": "string", "description": "the name of the repository" }, "delete_policy": { "type": "string", "description": "if yes, remove the policy from the repository" }, "force_set_policy": { "type": "string", "description": "if no, prevents setting a policy that would prevent you from setting another policy in the future." }, "state": { "type": "string", "description": "Default: present\n\ncreate or destroy the repository" }, "policy": { "type": "string", "description": "JSON or dict that represents the new policy" }, "registry_id": { "type": "string", "description": "AWS account id associated with the registry.\nIf not specified, the default registry is assumed." } } }, "aos_blueprint": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Blueprint module let you manage your Blueprint easily. You can create create and delete Blueprint by Name or ID. You can also use it to retrieve all data from a blueprint. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "name": { "type": "string", "description": "Name of the Blueprint to manage. Only one of I(name) or I(id) can be set." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Blueprint." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "reference_arch": { "type": "string", "description": "When creating a blueprint, this value identifies a known AOS reference architecture value. I(Refer to AOS-server documentation for available values)." }, "timeout": { "type": "string", "description": "Default: 5\n\nWhen I(state=build-ready), this timeout identifies timeout in seconds to wait before declaring a failure." }, "id": { "type": "string", "description": "AOS Id of the IP Pool to manage (can't be used to create a new IP Pool). Only one of I(name) or I(id) can be set." }, "template": { "type": "string", "description": "When creating a blueprint, this value identifies, by name, an existing engineering design template within the AOS-server." } } }, "cs_vpn_gateway": { "required": [ "vpc" ], "type": "object", "description": "Creates and removes VPN site-to-site gateways.", "properties": { "account": { "type": "string", "description": "Account the VPN gateway is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "zone": { "type": "string", "description": "Name of the zone the VPC is related to.\nIf not set, default zone is used." }, "domain": { "type": "string", "description": "Domain the VPN gateway is related to." }, "project": { "type": "string", "description": "Name of the project the VPN gateway is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the VPN gateway." }, "vpc": { "type": "string", "description": "Name of the VPC." } } }, "cs_instance_nic": { "allOf": [ { "allOf": [ { "not": { "required": [ "vm", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "vm" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add and remove nic to and from network", "properties": { "domain": { "type": "string", "description": "Domain the instance is related to." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "network": { "type": "string", "description": "Name of the network." }, "zone": { "type": "string", "description": "Name of the zone in which the instance is deployed in.\nIf not set, default zone is used." }, "account": { "type": "string", "description": "Account the instance is related to." }, "vm": { "type": "string", "description": "Name of instance." }, "project": { "type": "string", "description": "Name of the project the instance is deployed in." }, "state": { "type": "string", "description": "Default: present\n\nState of the nic." }, "vpc": { "type": "string", "description": "Name of the VPC the C(vm) is related to." }, "ip_address": { "type": "string", "description": "IP address to be used for the nic." }, "name": { "type": "string", "description": "Name of instance." } } }, "cs_host": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "ip_address" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "ip_address" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "host_tags", "host_tag" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and remove hosts.", "properties": { "username": { "type": "string", "description": "Username for the host.\nRequired if C(state=present) and host does not yet exist." }, "name": { "type": "string", "description": "Name of the host." }, "zone": { "type": "string", "description": "Name of the zone in which the host should be deployed.\nIf not set, default zone is used." }, "host_tags": { "type": "string", "description": "Tags of the host." }, "url": { "type": "string", "description": "Url of the host used to create a host.\nIf not provided, C(http://) and param C(name) is used as url.\nOnly considered if C(state=present) and host does not yet exist." }, "hypervisor": { "type": "string", "description": "Name of the cluster.\nRequired if C(state=present) and host does not yet exist." }, "cluster": { "type": "string", "description": "Name of the cluster." }, "state": { "type": "string", "description": "Default: present\n\nState of the host." }, "host_tag": { "type": "string", "description": "Tags of the host." }, "allocation_state": { "type": "string", "description": "Allocation state of the host." }, "pod": { "type": "string", "description": "Name of the pod.\nRequired if C(state=present) and host does not yet exist." }, "password": { "type": "string", "description": "Password for the host.\nRequired if C(state=present) and host does not yet exist." }, "ip_address": { "type": "string", "description": "Name of the host." } } }, "netapp_e_flashcache": { "required": [ "ssid", "api_password", "state", "api_username", "api_url", "name" ], "type": "object", "description": "Create or remove SSD caches on a NetApp E-Series storage array.", "properties": { "cache_size_min": { "type": "string", "description": "The minimum size (in size_units) of the ssd cache. The cache will be expanded if this exceeds the current size of the cache." }, "ssid": { "type": "string", "description": "The ID of the array to manage (as configured on the web services proxy)." }, "name": { "type": "string", "description": "The name of the SSD cache to manage" }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "io_type": { "type": "string", "description": "Default: filesystem\n\nThe type of workload to optimize the cache for." }, "size_unit": { "type": "string", "description": "Default: gb\n\nThe unit to be applied to size arguments" }, "disk_count": { "type": "string", "description": "The minimum number of disks to use for building the cache. The cache will be expanded if this number exceeds the number of disks already in place" }, "state": { "type": "string", "description": "Default: present\n\nWhether the specified SSD cache should exist or not." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." } } }, "vmware_host_vmnic_facts": { "type": "object", "description": "This module can be used to gather facts about vmnics available on the given ESXi host.\nIf C(cluster_name) is provided, then vmnic facts about all hosts from given cluster will be returned.\nIf C(esxi_hostname) is provided, then vmnic facts about given host system will be returned.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nVmnic facts about each ESXi server will be returned for the given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nVmnic facts about this ESXi server will be returned.\nIf C(cluster_name) is not given, this parameter is required." } } }, "webfaction_app": { "required": [ "name", "login_password", "type", "login_name" ], "type": "object", "description": "Add or remove applications on a Webfaction host. Further documentation at http://github.com/quentinsf/ansible-webfaction.", "properties": { "name": { "type": "string", "description": "The name of the application" }, "login_name": { "type": "string", "description": "The webfaction account to use" }, "machine": { "type": "string", "description": "The machine name to use (optional for accounts with only one machine)" }, "state": { "type": "string", "description": "Default: present\n\nWhether the application should exist" }, "autostart": { "type": "string", "description": "Default: no\n\nWhether the app should restart with an autostart.cgi script" }, "login_password": { "type": "string", "description": "The webfaction password to use" }, "type": { "type": "string", "description": "The type of application to create. See the Webfaction docs at http://docs.webfaction.com/xmlrpc-api/apps.html for a list." }, "port_open": { "type": "string", "description": "IF the port should be opened" }, "extra_info": { "type": "string", "description": "Any extra parameters required by the app" } } }, "net_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on network devices.", "properties": { "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down), I(tx_rate) and I(rx_rate)." }, "name": { "type": "string", "description": "Name of the Interface." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status" }, "enabled": { "type": "string", "description": "Configure interface link status." }, "mtu": { "type": "string", "description": "Maximum size of transmit packet." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "purge": { "type": "string", "description": "Purge Interfaces not defined in the aggregate parameter. This applies only for logical interface." }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) indicates present and operationally up and C(down) indicates present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface." } } }, "mqtt": { "required": [ "topic", "payload" ], "type": "object", "description": "Publish a message on an MQTT topic.", "properties": { "username": { "type": "string", "description": "Username to authenticate against the broker." }, "qos": { "type": "string", "description": "QoS (Quality of Service)" }, "payload": { "type": "string", "description": "Payload. The special string C(\"None\") may be used to send a NULL (i.e. empty) payload which is useful to simply notify with the I(topic) or to clear previously retained messages." }, "server": { "type": "string", "description": "Default: localhost\n\nMQTT broker address/name" }, "topic": { "type": "string", "description": "MQTT topic name" }, "client_id": { "type": "string", "description": "Default: hostname + pid\n\nMQTT client identifier" }, "retain": { "type": "string", "description": "Setting this flag causes the broker to retain (i.e. keep) the message so that applications that subsequently subscribe to the topic can received the last retained message immediately." }, "password": { "type": "string", "description": "Password for C(username) to authenticate against the broker." }, "port": { "type": "string", "description": "Default: 1883\n\nMQTT broker port number" } } }, "iam_server_certificate_facts": { "required": [ "name" ], "type": "object", "description": "Retrieve the attributes of a server certificate", "properties": { "name": { "type": "string", "description": "The name of the server certificate you are retrieving attributes for." } } }, "ce_rollback": { "required": [ "action" ], "type": "object", "description": "This module offers the ability to set a configuration checkpoint file or rollback to a configuration checkpoint file on HUAWEI CloudEngine switches.", "properties": { "commit_id": { "type": "string", "description": "Specifies the label of the configuration rollback point to which system configurations are expected to roll back. The value is an integer that the system generates automatically." }, "last": { "type": "string", "description": "Specifies the number of configuration rollback points. The value is an integer that ranges from 1 to 80." }, "filename": { "type": "string", "description": "Specifies a configuration file for configuration rollback. The value is a string of 5 to 64 case-sensitive characters in the format of *.zip, *.cfg, or *.dat, spaces not supported." }, "label": { "type": "string", "description": "Specifies a user label for a configuration rollback point. The value is a string of 1 to 256 case-sensitive ASCII characters, spaces not supported. The value must start with a letter and cannot be presented in a single hyphen (-)." }, "action": { "type": "string", "description": "The operation of configuration rollback." }, "oldest": { "type": "string", "description": "Specifies the number of configuration rollback points. The value is an integer that ranges from 1 to 80." } } }, "ovirt_vmpools": { "required": [ "name" ], "type": "object", "description": "Module to manage VM pools in oVirt/RHV.", "properties": { "name": { "type": "string", "description": "Name of the VM pool to manage." }, "vm_per_user": { "type": "string", "description": "Maximum number of VMs a single user can attach to from this pool.\nDefault value is set by engine." }, "cluster": { "type": "string", "description": "Name of the cluster, where VM pool should be created." }, "state": { "type": "string", "description": "Default: present\n\nShould the VM pool be present/absent.\nNote that when C(state) is I(absent) all VMs in VM pool are stopped and removed." }, "prestarted": { "type": "string", "description": "Number of pre-started VMs defines the number of VMs in run state, that are waiting to be attached to Users.\nDefault value is set by engine." }, "template": { "type": "string", "description": "Name of the template, which will be used to create VM pool." }, "vm_count": { "type": "string", "description": "Number of VMs in the pool.\nDefault value is set by engine." }, "type": { "type": "string", "description": "Type of the VM pool. Either manual or automatic.\nC(manual) - The administrator is responsible for explicitly returning the virtual machine to the pool. The virtual machine reverts to the original base image after the administrator returns it to the pool.\nC(Automatic) - When the virtual machine is shut down, it automatically reverts to its base image and is returned to the virtual machine pool.\nDefault value is set by engine." }, "description": { "type": "string", "description": "Description of the VM pool." } } }, "openssl_certificate": { "allOf": [ { "allOf": [ { "not": { "required": [ "subject_alt_name_strict", "subjectAltName_strict" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "extended_key_usage_strict", "extendedKeyUsage_strict" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "key_usage", "keyUsage" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "not_before", "notBefore" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "key_usage_strict", "keyUsage_strict" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subject_alt_name", "subjectAltName" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "selfsigned_not_after", "selfsigned_notAfter" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "extended_key_usage", "extendedKeyUsage" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "not_after", "notAfter" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "selfsigned_not_before", "selfsigned_notBefore" ], "type": "object" } } ] } ], "type": "object", "description": "This module allows one to (re)generate OpenSSL certificates. It implements a notion of provider (ie. C(selfsigned), C(acme), C(assertonly)) for your certificate. The 'assertonly' provider is intended for use cases where one is only interested in checking properties of a supplied certificate. Many properties that can be specified in this module are for validation of an existing or newly generated certificate. The proper place to specify them, if you want to receive a certificate with these properties is a CSR (Certificate Signing Request). It uses the pyOpenSSL python library to interact with OpenSSL.", "properties": { "privatekey_passphrase": { "type": "string", "description": "The passphrase for the I(privatekey_path)." }, "subject_alt_name_strict": { "description": "If set to True, the I(subject_alt_name) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "force": { "description": "Generate the certificate, even if it already exists.", "$ref": "#/definitions/ansible_truth" }, "extendedKeyUsage": { "type": "string", "description": "The I(extended_key_usage) extension field must contain all these values." }, "csr_path": { "type": "string", "description": "Path to the Certificate Signing Request (CSR) used to generate this certificate. This is not required in C(assertonly) mode." }, "acme_chain": { "type": "string", "description": "Default: True\n\nInclude the intermediate certificate to the generated certificate" }, "extended_key_usage_strict": { "description": "If set to True, the I(extended_key_usage) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "key_usage": { "type": "string", "description": "The I(key_usage) extension field must contain all these values." }, "invalid_at": { "type": "string", "description": "The certificate must be invalid at this point in time. The timestamp is formatted as an ASN.1 TIME." }, "not_before": { "type": "string", "description": "The certificate must start to become valid at this point in time. The timestamp is formatted as an ASN.1 TIME." }, "issuer": { "type": "string", "description": "Key/value pairs that must be present in the issuer name field of the certificate. If you need to specify more than one value with the same key, use a list as value." }, "subject_strict": { "description": "If set to True, the I(subject) field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "selfsigned_version": { "type": "string", "description": "Default: 3\n\nVersion of the C(selfsigned) certificate. Nowadays it should almost always be C(3)." }, "subjectAltName": { "type": "string", "description": "The I(subject_alt_name) extension field must contain these values." }, "notBefore": { "type": "string", "description": "The certificate must start to become valid at this point in time. The timestamp is formatted as an ASN.1 TIME." }, "subjectAltName_strict": { "description": "If set to True, the I(subject_alt_name) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "has_expired": { "description": "Checks if the certificate is expired/not expired at the time the module is executed.", "$ref": "#/definitions/ansible_truth" }, "notAfter": { "type": "string", "description": "The certificate must expire at this point in time. The timestamp is formatted as an ASN.1 TIME." }, "selfsigned_notAfter": { "type": "string", "description": "The timestamp at which the certificate stops being valid. The timestamp is formatted as an ASN.1 TIME. If this value is not specified, certificate will stop being valid 10 years from now." }, "keyUsage": { "type": "string", "description": "The I(key_usage) extension field must contain all these values." }, "version": { "type": "string", "description": "Version of the certificate. Nowadays it should almost always be 3." }, "provider": { "type": "string", "description": "Name of the provider to use to generate/retrieve the OpenSSL certificate. The C(assertonly) provider will not generate files and fail if the certificate file is missing." }, "selfsigned_digest": { "type": "string", "description": "Default: sha256\n\nDigest algorithm to be used when self-signing the certificate" }, "subject": { "type": "string", "description": "Key/value pairs that must be present in the subject name field of the certificate. If you need to specify more than one value with the same key, use a list as value." }, "extendedKeyUsage_strict": { "description": "If set to True, the I(extended_key_usage) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "keyUsage_strict": { "description": "If set to True, the I(key_usage) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "subject_alt_name": { "type": "string", "description": "The I(subject_alt_name) extension field must contain these values." }, "state": { "type": "string", "description": "Default: present\n\nWhether the certificate should exist or not, taking action if the state is different from what is stated." }, "selfsigned_notBefore": { "type": "string", "description": "The timestamp at which the certificate starts being valid. The timestamp is formatted as an ASN.1 TIME. If this value is not specified, certificate will start being valid from now." }, "selfsigned_not_after": { "type": "string", "description": "The timestamp at which the certificate stops being valid. The timestamp is formatted as an ASN.1 TIME. If this value is not specified, certificate will stop being valid 10 years from now." }, "acme_challenge_path": { "type": "string", "description": "Path to the ACME challenge directory that is served on U(http://:80/.well-known/acme-challenge/)" }, "privatekey_path": { "type": "string", "description": "Path to the private key to use when signing the certificate." }, "key_usage_strict": { "description": "If set to True, the I(key_usage) extension field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "issuer_strict": { "description": "If set to True, the I(issuer) field must contain only these values.", "$ref": "#/definitions/ansible_truth" }, "path": { "type": "string", "description": "Remote absolute path where the generated certificate file should be created or is already located." }, "acme_accountkey_path": { "type": "string", "description": "Path to the accountkey for the C(acme) provider" }, "extended_key_usage": { "type": "string", "description": "The I(extended_key_usage) extension field must contain all these values." }, "not_after": { "type": "string", "description": "The certificate must expire at this point in time. The timestamp is formatted as an ASN.1 TIME." }, "signature_algorithms": { "type": "array", "description": "list of algorithms that you would accept the certificate to be signed with (e.g. ['sha256WithRSAEncryption', 'sha512WithRSAEncryption'])." }, "selfsigned_not_before": { "type": "string", "description": "The timestamp at which the certificate starts being valid. The timestamp is formatted as an ASN.1 TIME. If this value is not specified, certificate will start being valid from now." }, "valid_in": { "type": "string", "description": "The certificate must still be valid in I(valid_in) seconds from now." }, "valid_at": { "type": "string", "description": "The certificate must be valid at this point in time. The timestamp is formatted as an ASN.1 TIME." } } }, "ecs_service": { "required": [ "name", "state" ], "type": "object", "description": "Creates or terminates ecs services.", "properties": { "repeat": { "type": "string", "description": "Default: 10\n\nThe number of times to check that the service is available" }, "name": { "type": "string", "description": "The name of the service" }, "desired_count": { "type": "string", "description": "The count of how many instances of the service. This parameter is required when state=present" }, "placement_constraints": { "type": "string", "description": "The placement constraints for the tasks in the service" }, "task_definition": { "type": "string", "description": "The task definition the service will run. This parameter is required when state=present" }, "delay": { "type": "string", "description": "Default: 10\n\nThe time to wait before checking that the service is available" }, "cluster": { "type": "string", "description": "The name of the cluster in which the service exists" }, "state": { "type": "string", "description": "The desired state of the service" }, "role": { "type": "string", "description": "The name or full Amazon Resource Name (ARN) of the IAM role that allows your Amazon ECS container agent to make calls to your load balancer on your behalf. This parameter is only required if you are using a load balancer with your service." }, "deployment_configuration": { "type": "string", "description": "Optional parameters that control the deployment_configuration; format is '{\"maximum_percent\":, \"minimum_healthy_percent\":}" }, "load_balancers": { "type": "string", "description": "The list of ELBs defined for this service" }, "client_token": { "type": "string", "description": "Unique, case-sensitive identifier you provide to ensure the idempotency of the request. Up to 32 ASCII characters are allowed." }, "placement_strategy": { "type": "string", "description": "The placement strategy objects to use for tasks in your service. You can specify a maximum of 5 strategy rules per service" } } }, "dellos9_command": { "required": [ "commands" ], "type": "object", "description": "Sends arbitrary commands to a Dell OS9 node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.\nThis module does not support running commands in configuration mode. Please use M(dellos9_config) to configure Dell OS9 devices.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should be tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote dellos9 device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retries has expired." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of I(retries), the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between retries of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." } } }, "ios_linkagg": { "type": "object", "description": "This module provides declarative management of link aggregation groups on Cisco IOS network devices.", "properties": { "group": { "type": "string", "description": "Channel-group number for the port-channel Link aggregation group. Range 1-255." }, "purge": { "type": "string", "description": "Purge links not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Mode of the link aggregation group." }, "members": { "type": "array", "description": "List of members of the link aggregation group." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." } } }, "openbsd_pkg": { "required": [ "name" ], "type": "object", "description": "Manage packages on OpenBSD using the pkg tools.", "properties": { "ports_dir": { "type": "string", "description": "Default: /usr/ports\n\nWhen used in combination with the C(build) option, allows overriding the default ports source directory." }, "state": { "type": "string", "description": "Default: present\n\nC(present) will make sure the package is installed. C(latest) will make sure the latest version of the package is installed. C(absent) will make sure the specified package is not installed." }, "build": { "description": "Default: no\n\nBuild the package from source instead of downloading and installing a binary. Requires that the port source tree is already installed. Automatically builds and installs the 'sqlports' package, if it is not already installed.", "$ref": "#/definitions/ansible_truth" }, "clean": { "description": "Default: no\n\nWhen updating or removing packages, delete the extra configuration file(s) in the old packages which are annotated with @extra in the packaging-list.", "$ref": "#/definitions/ansible_truth" }, "quick": { "description": "Default: no\n\nReplace or delete packages quickly; do not bother with checksums before removing normal files.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "A name or a list of names of the packages." } } }, "bigip_snat_pool": { "allOf": [ { "allOf": [ { "not": { "required": [ "members", "member" ], "type": "object" } } ] } ], "type": "object", "description": "Manage SNAT pools on a BIG-IP.", "properties": { "member": { "type": "array", "description": "List of members to put in the SNAT pool. When a C(state) of present is provided, this parameter is required. Otherwise, it is optional." }, "state": { "type": "string", "description": "Default: present\n\nWhether the SNAT pool should exist or not." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "The name of the SNAT pool." }, "members": { "type": "array", "description": "List of members to put in the SNAT pool. When a C(state) of present is provided, this parameter is required. Otherwise, it is optional." } } }, "iosxr_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running iosxr. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "bigip_iapplx_package": { "type": "object", "description": "Manages Javascript iApp packages on a BIG-IP. This module will allow you to deploy iAppLX packages to the BIG-IP and manage their lifecycle.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the iAppLX package should exist or not." }, "package": { "type": "string", "description": "The iAppLX package that you want to upload or remove. When C(state) is C(present), and you intend to use this module in a C(role), it is recommended that you use the C({{ role_path }}) variable. An example is provided in the C(EXAMPLES) section.\nWhen C(state) is C(absent), it is not necessary for the package to exist on the Ansible controller. If the full path to the package is provided, the fileame will specifically be cherry picked from it to properly remove the package." } } }, "os_nova_flavor": { "required": [ "name" ], "type": "object", "description": "Add or remove flavors from OpenStack.", "properties": { "flavorid": { "type": "string", "description": "Default: auto\n\nID for the flavor. This is optional as a unique UUID will be assigned if a value is not specified." }, "name": { "type": "string", "description": "Flavor name." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "ram": { "type": "string", "description": "Amount of memory, in MB." }, "ephemeral": { "type": "string", "description": "Ephemeral space size, in GB." }, "vcpus": { "type": "string", "description": "Number of virtual CPUs." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource. When I(state) is 'present', then I(ram), I(vcpus), and I(disk) are all required. There are no default values for those parameters." }, "extra_specs": { "type": "string", "description": "Default: None\n\nMetadata dictionary" }, "swap": { "type": "string", "description": "Swap space size, in MB." }, "rxtx_factor": { "type": "string", "description": "Default: 1.0\n\nRX/TX factor." }, "is_public": { "type": "string", "description": "Default: True\n\nMake flavor accessible to the public." }, "disk": { "type": "string", "description": "Size of local disk, in GB." } } }, "udm_dns_zone": { "required": [ "zone", "type" ], "type": "object", "description": "This module allows to manage dns zones on a univention corporate server (UCS). It uses the python API of the UCS to create a new object or edit it.", "properties": { "retry": { "type": "string", "description": "Default: 1800\n\nInterval that should elapse before a failed refresh should be retried." }, "zone": { "type": "string", "description": "DNS zone name, e.g. C(example.com)." }, "interfaces": { "type": "array", "description": "List of interface IP addresses, on which the server should response this zone. Required if C(state=present)." }, "refresh": { "type": "string", "description": "Default: 3600\n\nInterval before the zone should be refreshed." }, "state": { "type": "string", "description": "Default: present\n\nWhether the dns zone is present or not." }, "contact": { "type": "string", "description": "Contact person in the SOA record." }, "expire": { "type": "string", "description": "Default: 604800\n\nSpecifies the upper limit on the time interval that can elapse before the zone is no longer authoritative." }, "ttl": { "type": "string", "description": "Default: 600\n\nMinimum TTL field that should be exported with any RR from this zone." }, "nameserver": { "type": "array", "description": "List of appropriate name servers. Required if C(state=present)." }, "type": { "type": "string", "description": "Define if the zone is a forward or reverse DNS zone." }, "mx": { "type": "array", "description": "List of MX servers. (Must declared as A or AAAA records)." } } }, "win_reg_stat": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "key" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "key" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "name", "entry", "value", "property" ], "type": "object" } } ] } ], "type": "object", "description": "Like M(win_file), M(win_reg_stat) will return whether the key/property exists.\nIt also returns the sub keys and properties of the key specified.\nIf specifying a property name through I(property), it will return the information specific for that property.", "properties": { "name": { "type": "string", "description": "The registry property name to get information for, the return json will not include the sub_keys and properties entries for the I(key) specified." }, "value": { "type": "string", "description": "The registry property name to get information for, the return json will not include the sub_keys and properties entries for the I(key) specified." }, "key": { "type": "string", "description": "The full registry key path including the hive to search for." }, "entry": { "type": "string", "description": "The registry property name to get information for, the return json will not include the sub_keys and properties entries for the I(key) specified." }, "path": { "type": "string", "description": "The full registry key path including the hive to search for." }, "property": { "type": "string", "description": "The registry property name to get information for, the return json will not include the sub_keys and properties entries for the I(key) specified." } } }, "bigip_irule": { "required": [ "src", "name", "module" ], "type": "object", "description": "Manage iRules across different modules on a BIG-IP.", "properties": { "src": { "type": "string", "description": "The iRule file to interpret and upload to the BIG-IP. Either one of C(src) or C(content) must be provided." }, "name": { "type": "string", "description": "The name of the iRule." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "module": { "type": "string", "description": "The BIG-IP module to add the iRule to." }, "content": { "type": "string", "description": "When used instead of 'src', sets the contents of an iRule directly to the specified value. This is for simple values, but can be used with lookup plugins for anything complex or with formatting. Either one of C(src) or C(content) must be provided." }, "state": { "type": "string", "description": "Default: present\n\nWhether the iRule should exist or not." } } }, "aci_interface_policy_leaf_profile": { "allOf": [ { "allOf": [ { "not": { "required": [ "leaf_interface_profile", "name", "leaf_interface_profile_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "leaf_interface_profile" ], "type": "object" }, { "required": [ "name" ], "type": "object" }, { "required": [ "leaf_interface_profile_name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Manage fabric interface policy leaf profiles on Cisco ACI fabrics.", "properties": { "leaf_interface_profile_name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile." }, "name": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile." }, "descr": { "type": "string", "description": "Description for the Fabric access policy leaf interface profile." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "leaf_interface_profile": { "type": "string", "description": "The name of the Fabric access policy leaf interface profile." }, "description": { "type": "string", "description": "Description for the Fabric access policy leaf interface profile." } } }, "win_acl_inheritance": { "required": [ "path" ], "type": "object", "description": "Change ACL (Access Control List) inheritance and optionally copy inherited ACE's (Access Control Entry) to dedicated ACE's or vice versa.", "properties": { "path": { "type": "string", "description": "Path to be used for changing inheritance" }, "state": { "type": "string", "description": "Default: absent\n\nSpecify whether to enable I(present) or disable I(absent) ACL inheritance" }, "reorganize": { "type": "string", "description": "For P(state) = I(absent), indicates if the inherited ACE's should be copied from the parent directory. This is necessary (in combination with removal) for a simple ACL instead of using multiple ACE deny entries.\nFor P(state) = I(present), indicates if the inherited ACE's should be deduplicated compared to the parent directory. This removes complexity of the ACL structure." } } }, "avi_customipamdnsprofile": { "required": [ "name", "script_uri" ], "type": "object", "description": "This module is used to configure CustomIpamDnsProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Name of the custom ipam dns profile.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "script_uri": { "type": "string", "description": "Script uri of form controller //ipamdnsscripts/.\nField introduced in 17.1.1." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "script_params": { "type": "string", "description": "Parameters that are always passed to the ipam/dns script.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Field introduced in 17.1.1." } } }, "azure_rm_securitygroup": { "required": [ "resource_group" ], "type": "object", "description": "Create, update or delete a network security group. A security group contains Access Control List (ACL) rules that allow or deny network traffic to subnets or individual network interfaces. A security group is created with a set of default security rules and an empty set of security rules. Shape traffic flow by adding rules to the empty set of security rules.", "properties": { "resource_group": { "type": "string", "description": "Name of the resource group the security group belongs to." }, "purge_rules": { "type": "string", "description": "Remove any existing rules not matching those defined in the rules parameters." }, "rules": { "type": "string", "description": "Set of rules shaping traffic flow to or from a subnet or NIC. Each rule is a dictionary." }, "default_rules": { "type": "string", "description": "The set of default rules automatically added to a security group at creation. In general default rules will not be modified. Modify rules to shape the flow of traffic to or from a subnet or NIC. See rules below for the makeup of a rule dict." }, "purge_default_rules": { "type": "string", "description": "Remove any existing rules not matching those defined in the default_rules parameter." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the security group. Set to 'present' to create or update a security group. Set to 'absent' to remove a security group." }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "name": { "type": "string", "description": "Name of the security group to operate on." } } }, "ec2": { "allOf": [ { "allOf": [ { "not": { "required": [ "group", "groups" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "zone", "aws_zone", "ec2_zone" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "key_name", "keypair" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "instance_ids", "instance_id" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "region", "aws_region", "ec2_region" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "network_interfaces", "network_interface" ], "type": "object" } } ] } ], "type": "object", "description": "Creates or terminates ec2 instances.\nC(state=restarted) was added in 2.2", "properties": { "kernel": { "type": "string", "description": "kernel I(eki) to use for the instance" }, "image": { "type": "string", "description": "I(ami) ID to use for the instance" }, "user_data": { "type": "string", "description": "opaque blob of data which is made available to the ec2 instance" }, "instance_initiated_shutdown_behavior": { "type": "string", "description": "Default: stop\n\nSet whether AWS will Stop or Terminate an instance on shutdown" }, "termination_protection": { "type": "string", "description": "Enable or Disable the Termination Protection" }, "private_ip": { "type": "string", "description": "the private ip address to assign the instance (from the vpc subnet)" }, "spot_type": { "type": "string", "description": "Default: one-time\n\nType of spot request; one of \"one-time\" or \"persistent\". Defaults to \"one-time\" if not supplied." }, "source_dest_check": { "type": "string", "description": "Default: True\n\nEnable or Disable the Source/Destination checks (for NAT instances and Virtual Routers)" }, "spot_wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long to wait for the spot instance request to be fulfilled" }, "monitoring": { "type": "string", "description": "enable detailed monitoring (CloudWatch) for instance" }, "zone": { "type": "string", "description": "AWS availability zone in which to launch the instance" }, "exact_count": { "type": "string", "description": "An integer value which indicates how many instances that match the 'count_tag' parameter should be running. Instances are either created or terminated based on this value." }, "ebs_optimized": { "type": "string", "description": "Default: false\n\nwhether instance is using optimized EBS volumes, see U(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html)" }, "state": { "type": "string", "description": "Default: present\n\ncreate or terminate instances" }, "placement_group": { "type": "string", "description": "placement group for the instance when using EC2 Clustered Compute" }, "count_tag": { "type": "string", "description": "Used with 'exact_count' to determine how many nodes based on a specific tag criteria should be running. This can be expressed in multiple ways and is shown in the EXAMPLES section. For instance, one can request 25 servers that are tagged with \"class=webserver\". The specified tag must already exist or be passed in as the 'instance_tags' option." }, "ec2_region": { "type": "string", "description": "The AWS region to use. Must be specified if ec2_url is not used. If not specified then the value of the EC2_REGION environment variable, if any, is used. See U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region)" }, "network_interface": { "type": "string", "description": "A list of existing network interfaces to attach to the instance at launch. When specifying existing network interfaces, none of the assign_public_ip, private_ip, vpc_subnet_id, group, or group_id parameters may be used. (Those parameters are for creating a new network interface at launch.)" }, "ramdisk": { "type": "string", "description": "ramdisk I(eri) to use for the instance" }, "count": { "type": "string", "description": "Default: 1\n\nnumber of instances to launch" }, "key_name": { "type": "string", "description": "key pair to use on the instance" }, "spot_launch_group": { "type": "string", "description": "Launch group for spot request, see U(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-spot-instances-work.html#spot-launch-group)" }, "vpc_subnet_id": { "type": "string", "description": "the subnet ID in which to launch the instance (VPC)" }, "instance_ids": { "type": "array", "description": "list of instance ids, currently used for states: absent, running, stopped" }, "spot_price": { "type": "string", "description": "Maximum spot price to bid, If not set a regular on-demand instance is requested. A spot request is made with this maximum bid. When it is filled, the instance is started." }, "tenancy": { "type": "string", "description": "Default: default\n\nAn instance with a tenancy of \"dedicated\" runs on single-tenant hardware and can only be launched into a VPC. Note that to use dedicated tenancy you MUST specify a vpc_subnet_id as well. Dedicated tenancy is not available for EC2 \"micro\" instances." }, "groups": { "type": "string", "description": "security group (or list of groups) to use with the instance" }, "assign_public_ip": { "type": "string", "description": "when provisioning within vpc, assign a public IP address. Boto library must be 2.13.0+" }, "group": { "type": "string", "description": "security group (or list of groups) to use with the instance" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the instance to be 'running' before returning. Does not wait for SSH, see 'wait_for' example for details." }, "aws_zone": { "type": "string", "description": "AWS availability zone in which to launch the instance" }, "aws_region": { "type": "string", "description": "The AWS region to use. Must be specified if ec2_url is not used. If not specified then the value of the EC2_REGION environment variable, if any, is used. See U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region)" }, "instance_profile_name": { "type": "string", "description": "Name of the IAM instance profile to use. Boto library must be 2.5.0+" }, "region": { "type": "string", "description": "The AWS region to use. Must be specified if ec2_url is not used. If not specified then the value of the EC2_REGION environment variable, if any, is used. See U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region)" }, "network_interfaces": { "type": "string", "description": "A list of existing network interfaces to attach to the instance at launch. When specifying existing network interfaces, none of the assign_public_ip, private_ip, vpc_subnet_id, group, or group_id parameters may be used. (Those parameters are for creating a new network interface at launch.)" }, "keypair": { "type": "string", "description": "key pair to use on the instance" }, "ec2_zone": { "type": "string", "description": "AWS availability zone in which to launch the instance" }, "instance_id": { "type": "array", "description": "list of instance ids, currently used for states: absent, running, stopped" }, "instance_type": { "type": "string", "description": "instance type to use for the instance, see U(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html)" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "volumes": { "type": "string", "description": "a list of hash/dictionaries of volumes to add to the new instance; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - device_name (str; required), delete_on_termination (bool; False), device_type (deprecated), ephemeral (str), encrypted (bool; False), snapshot (str), volume_type (str), iops (int) - device_type is deprecated use volume_type, iops must be set when volume_type='io1', ephemeral and snapshot are mutually exclusive." }, "instance_tags": { "type": "string", "description": "a hash/dictionary of tags to add to the new instance or for starting/stopping instance by tag; '{\"key\":\"value\"}' and '{\"key\":\"value\",\"key\":\"value\"}'" }, "group_id": { "type": "string", "description": "security group id (or list of ids) to use with the instance" } } }, "vca_fw": { "required": [ "fw_rules" ], "type": "object", "description": "Adds or removes firewall rules from a gateway in a vca environment", "properties": { "fw_rules": { "type": "string", "description": "A list of firewall rules to be added to the gateway, Please see examples on valid entries" } } }, "ordnance_facts": { "type": "object", "description": "Collects a base set of device facts from an Ordnance Virtual router over SSH. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "ce_vxlan_global": { "type": "object", "description": "Manages global attributes of VXLAN and bridge domain on HUAWEI CloudEngine devices.", "properties": { "tunnel_mode_vxlan": { "type": "string", "description": "Set the tunnel mode to VXLAN when configuring the VXLAN feature." }, "nvo3_eth_trunk_hash": { "type": "string", "description": "Eth-Trunk from load balancing VXLAN packets in optimized mode." }, "nvo3_prevent_loops": { "type": "string", "description": "Loop prevention of VXLAN traffic in non-enhanced mode. When the device works in non-enhanced mode, inter-card forwarding of VXLAN traffic may result in loops." }, "nvo3_acl_extend": { "type": "string", "description": "Enabling or disabling the VXLAN ACL extension function." }, "bridge_domain_id": { "type": "string", "description": "Specifies a bridge domain ID. The value is an integer ranging from 1 to 16777215." }, "nvo3_gw_enhanced": { "type": "string", "description": "Configuring the Layer 3 VXLAN Gateway to Work in Non-loopback Mode." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "nvo3_ecmp_hash": { "type": "string", "description": "Load balancing of VXLAN packets through ECMP in optimized mode." }, "nvo3_service_extend": { "type": "string", "description": "Enabling or disabling the VXLAN service extension function." } } }, "rax_queue": { "type": "object", "description": "creates / deletes a Rackspace Public Cloud queue.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "name": { "type": "string", "description": "Name to give the queue" } } }, "proxmox_template": { "allOf": [ { "allOf": [ { "not": { "required": [ "src", "path" ], "type": "object" } } ] } ], "type": "object", "description": "allows you to upload/delete templates in Proxmox VE cluster", "properties": { "node": { "type": "string", "description": "Proxmox VE node, when you will operate with template" }, "src": { "type": "string", "description": "path to uploaded file\nrequired only for C(state=present)" }, "force": { "description": "can be used only with C(state=present), exists template will be overwritten", "$ref": "#/definitions/ansible_truth" }, "api_host": { "type": "string", "description": "the host of the Proxmox VE cluster" }, "api_user": { "type": "string", "description": "the user to authenticate with" }, "storage": { "type": "string", "description": "Default: local\n\ntarget storage" }, "api_password": { "type": "string", "description": "the password to authenticate with\nyou can use PROXMOX_PASSWORD environment variable" }, "timeout": { "type": "string", "description": "Default: 30\n\ntimeout for operations" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the template" }, "content_type": { "type": "string", "description": "Default: vztmpl\n\ncontent type\nrequired only for C(state=present)" }, "path": { "type": "string", "description": "path to uploaded file\nrequired only for C(state=present)" }, "validate_certs": { "description": "enable / disable https certificate verification", "$ref": "#/definitions/ansible_truth" }, "template": { "type": "string", "description": "the template name\nrequired only for states C(absent), C(info)" } } }, "docker_service": { "type": "object", "description": "Consumes docker compose to start, shutdown and scale services.\nWorks with compose versions 1 and 2.\nCompose can be read from a docker-compose.yml (or .yaml) file or inline using the C(definition) option.\nSee the examples for more details.\nSupports check mode.", "properties": { "files": { "type": "array", "description": "List of file names relative to C(project_src). Overrides docker-compose.yml or docker-compose.yaml.\nFiles are loaded and merged in the order given." }, "pull": { "description": "Use with state I(present) to always pull images prior to starting the application.\nSame as running docker-compose pull.\nWhen a new image is pulled, services using the image will be recreated unless C(recreate) is I(never).", "$ref": "#/definitions/ansible_truth" }, "project_name": { "type": "string", "description": "Provide a project name. If not provided, the project name is taken from the basename of C(project_src).\nRequired when no C(definition) is provided." }, "nocache": { "description": "Use with the build option to ignore the cache during the image build process.", "$ref": "#/definitions/ansible_truth" }, "project_src": { "type": "string", "description": "Path to a directory containing a docker-compose.yml or docker-compose.yaml file.\nMutually exclusive with C(definition).\nRequired when no C(definition) is provided." }, "hostname_check": { "description": "Whether or not to check the Docker daemon's hostname against the name provided in the client certificate.", "$ref": "#/definitions/ansible_truth" }, "recreate": { "type": "string", "description": "Default: smart\n\nBy default containers will be recreated when their configuration differs from the service definition.\nSetting to I(never) ignores configuration differences and leaves existing containers unchanged.\nSetting to I(always) forces recreation of all existing containers." }, "restarted": { "description": "Use with state I(present) to restart all containers.", "$ref": "#/definitions/ansible_truth" }, "debug": { "description": "Include I(actions) in the return values.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the project.\nSpecifying I(present) is the same as running I(docker-compose up).\nSpecifying I(absent) is the same as running I(docker-compose down)." }, "dependencies": { "description": "Default: True\n\nWhen C(state) is I(present) specify whether or not to include linked services.", "$ref": "#/definitions/ansible_truth" }, "remove_images": { "type": "string", "description": "Use with state I(absent) to remove the all images or only local images." }, "scale": { "type": "string", "description": "When C(state) is I(present) scale services. Provide a dictionary of key/value pairs where the key is the name of the service and the value is an integer count for the number of containers." }, "services": { "type": "string", "description": "When C(state) is I(present) run I(docker-compose up) on a subset of services." }, "stopped": { "description": "Use with state I(present) to leave the containers in an exited or non-running state.", "$ref": "#/definitions/ansible_truth" }, "definition": { "type": "string", "description": "Provide docker-compose yaml describing one or more services, networks and volumes.\nMutually exclusive with C(project_src) and C(files)." }, "remove_volumes": { "description": "Use with state I(absent) to remove data volumes.", "$ref": "#/definitions/ansible_truth" }, "build": { "description": "Use with state I(present) to always build images prior to starting the application.\nSame as running docker-compose build with the pull option.\nImages will only be rebuilt if Docker detects a change in the Dockerfile or build directory contents.\nUse the C(nocache) option to ignore the image cache when performing the build.\nIf an existing image is replaced, services using the image will be recreated unless C(recreate) is I(never).", "$ref": "#/definitions/ansible_truth" } } }, "nxos_ospf_vrf": { "required": [ "ospf" ], "type": "object", "description": "Manages a VRF for an OSPF router.", "properties": { "router_id": { "type": "string", "description": "Router Identifier (ID) of the OSPF router VRF instance." }, "timer_throttle_lsa_max": { "type": "string", "description": "Specify the max interval for rate-limiting Link-State Advertisement (LSA) generation. Valid values are an integer, in milliseconds, or the keyword 'default'." }, "timer_throttle_spf_max": { "type": "string", "description": "Specify the maximum wait time between Shortest Path First (SPF) calculations. Valid values are an integer, in milliseconds, or the keyword 'default'." }, "timer_throttle_lsa_hold": { "type": "string", "description": "Specify the hold interval for rate-limiting Link-State Advertisement (LSA) generation. Valid values are an integer, in milliseconds, or the keyword 'default'." }, "default_metric": { "type": "string", "description": "Specify the default Metric value. Valid values are an integer or the keyword 'default'." }, "log_adjacency": { "type": "string", "description": "Controls the level of log messages generated whenever a neighbor changes state. Valid values are 'log', 'detail', and 'default'." }, "timer_throttle_lsa_start": { "type": "string", "description": "Specify the start interval for rate-limiting Link-State Advertisement (LSA) generation. Valid values are an integer, in milliseconds, or the keyword 'default'." }, "vrf": { "type": "string", "description": "Default: default\n\nName of the resource instance. Valid value is a string. The name 'default' is a valid VRF representing the global OSPF." }, "auto_cost": { "type": "string", "description": "Specifies the reference bandwidth used to assign OSPF cost. Valid values are an integer, in Mbps, or the keyword 'default'." }, "timer_throttle_spf_start": { "type": "string", "description": "Specify initial Shortest Path First (SPF) schedule delay. Valid values are an integer, in milliseconds, or the keyword 'default'." }, "ospf": { "type": "string", "description": "Name of the OSPF instance." }, "timer_throttle_spf_hold": { "type": "string", "description": "Specify minimum hold time between Shortest Path First (SPF) calculations. Valid values are an integer, in milliseconds, or the keyword 'default'." } } }, "os_image_facts": { "required": [ "image" ], "type": "object", "description": "Retrieve facts about a image image from OpenStack.", "properties": { "image": { "type": "string", "description": "Name or ID of the image" } } }, "cnos_factory": { "type": "object", "description": "This module allows you to reset a switch's startup configuration. The method provides a way to reset the startup configuration to its factory settings. This is helpful when you want to move the switch to another topology as a new network device. This module uses SSH to manage network device configuration. The results of the operation can be viewed in results directory. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_factory.html)", "properties": {} }, "vmware_vsan_cluster": { "type": "object", "description": "This module can be used to configure VSAN clustering on an ESXi host", "properties": { "cluster_uuid": { "type": "string", "description": "Desired cluster UUID" } } }, "ovirt_permissions_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "authz_name", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "authz_name" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV permissions.", "properties": { "authz_name": { "type": "string", "description": "Authorization provider of the user/group. In previous versions of oVirt/RHV known as domain." }, "domain": { "type": "string", "description": "Authorization provider of the user/group. In previous versions of oVirt/RHV known as domain." }, "namespace": { "type": "string", "description": "Namespace of the authorization provider, where user/group resides." }, "user_name": { "type": "string", "description": "Username of the user to manage. In most LDAPs it's I(uid) of the user, but in Active Directory you must specify I(UPN) of the user." }, "group_name": { "type": "string", "description": "Name of the group to manage." } } }, "librato_annotation": { "required": [ "links", "title", "api_key", "user" ], "type": "object", "description": "Create an annotation event on the given annotation stream :name. If the annotation stream does not exist, it will be created automatically", "properties": { "user": { "type": "string", "description": "Librato account username" }, "name": { "type": "string", "description": "The annotation stream name\nIf the annotation stream does not exist, it will be created automatically" }, "links": { "type": "string", "description": "See examples" }, "title": { "type": "string", "description": "The title of an annotation is a string and may contain spaces\nThe title should be a short, high-level summary of the annotation e.g. v45 Deployment" }, "start_time": { "type": "string", "description": "The unix timestamp indicating the the time at which the event referenced by this annotation started" }, "source": { "type": "string", "description": "A string which describes the originating source of an annotation when that annotation is tracked across multiple members of a population" }, "end_time": { "type": "string", "description": "The unix timestamp indicating the the time at which the event referenced by this annotation ended\nFor events that have a duration, this is a useful way to annotate the duration of the event" }, "api_key": { "type": "string", "description": "Librato account api key" }, "description": { "type": "string", "description": "The description contains extra meta-data about a particular annotation\nThe description should contain specifics on the individual annotation e.g. Deployed 9b562b2 shipped new feature foo!" } } }, "nxos_evpn_vni": { "required": [ "route_distinguisher", "vni" ], "type": "object", "description": "Manages Cisco Ethernet Virtual Private Network (EVPN) VXLAN Network Identifier (VNI) configurations of a Nexus device.", "properties": { "route_target_both": { "type": "string", "description": "Enables/Disables route-target settings for both import and export target communities using a single property." }, "vni": { "type": "string", "description": "The EVPN VXLAN Network Identifier." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "route_distinguisher": { "type": "string", "description": "The VPN Route Distinguisher (RD). The RD is combined with the IPv4 or IPv6 prefix learned by the PE router to create a globally unique address." }, "route_target_import": { "type": "string", "description": "Sets the route-target 'import' extended communities." }, "route_target_export": { "type": "string", "description": "Sets the route-target 'export' extended communities." } } }, "na_cdot_user_role": { "required": [ "vserver", "state", "name", "command_directory_name" ], "type": "object", "description": "Create or destroy user roles", "properties": { "vserver": { "type": "string", "description": "The name of the vserver to use." }, "access_level": { "type": "string", "description": "Default: all\n\nThe name of the role to manage." }, "state": { "type": "string", "description": "Whether the specified user should exist or not." }, "name": { "type": "string", "description": "The name of the role to manage." }, "command_directory_name": { "type": "string", "description": "The command or command directory to which the role has an access." } } }, "onyx_linkagg": { "required": [ "name", "members" ], "type": "object", "description": "This module provides declarative management of link aggregation groups on Mellanox ONYX network devices.", "properties": { "name": { "type": "string", "description": "Name of the link aggregation group." }, "purge": { "description": "Purge link aggregation groups not defined in the I(aggregate) parameter.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Default: True\n\nMode of the link aggregation group. A value of C(on) will enable LACP. C(active) configures the link to actively information about the state of the link, or it can be configured in C(passive) mode ie. send link state information only when received them from another link." }, "members": { "type": "array", "description": "List of members interfaces of the link aggregation group. The value can be single interface or list of interfaces." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." } } }, "s3_bucket": { "allOf": [ { "allOf": [ { "not": { "required": [ "s3_url", "S3_URL" ], "type": "object" } } ] } ], "type": "object", "description": "Manage S3 buckets in AWS, Ceph, Walrus and FakeS3", "properties": { "force": { "type": "string", "description": "When trying to delete a bucket, delete all keys in the bucket first (an s3 bucket must be empty for a successful deletion)" }, "name": { "type": "string", "description": "Name of the s3 bucket" }, "tags": { "type": "string", "description": "tags dict to apply to bucket" }, "ceph": { "type": "string", "description": "Enable API compatibility with Ceph. It takes into account the S3 API subset working with Ceph in order to provide the same module behaviour where possible." }, "state": { "type": "string", "description": "Default: present\n\nCreate or remove the s3 bucket" }, "policy": { "type": "string", "description": "The JSON policy as a string." }, "requester_pays": { "type": "string", "description": "With Requester Pays buckets, the requester instead of the bucket owner pays the cost of the request and the data download from the bucket." }, "s3_url": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "S3_URL": { "type": "string", "description": "S3 URL endpoint for usage with Ceph, Eucalypus, fakes3, etc. Otherwise assumes AWS" }, "versioning": { "type": "string", "description": "Whether versioning is enabled or disabled (note that once versioning is enabled, it can only be suspended)" } } }, "win_power_plan": { "required": [ "name" ], "type": "object", "description": "This module will change the power plan of a Windows system to the defined string.\nWindows defaults to C(balanced) which will cause CPU throttling. In some cases it can be preferable to change the mode to C(high performance) to increase CPU performance.", "properties": { "name": { "type": "string", "description": "String value that indicates the desired power plan. The power plan must already be present on the system. Commonly there will be options for C(balanced) and C(high performance)." } } }, "avi_webhook": { "required": [ "name" ], "type": "object", "description": "This module is used to configure Webhook object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "uuid": { "type": "string", "description": "Uuid of the webhook profile.\nField introduced in 17.1.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.1.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "name": { "type": "string", "description": "The name of the webhook profile.\nField introduced in 17.1.1." }, "verification_token": { "type": "string", "description": "Verification token sent back with the callback asquery parameters.\nField introduced in 17.1.1." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "callback_url": { "type": "string", "description": "Callback url for the webhook.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "description": { "type": "string", "description": "Field introduced in 17.1.1." } } }, "clc_firewall_policy": { "required": [ "location", "source_account_alias" ], "type": "object", "description": "Create or delete or update firewall polices on Centurylink Cloud", "properties": { "destination_account_alias": { "type": "string", "description": "Default: None\n\nCLC alias for the destination account" }, "destination": { "type": "string", "description": "Default: None\n\nThe list of destination addresses for traffic on the terminating firewall. This is required when state is 'present'" }, "enabled": { "type": "string", "description": "Default: True\n\nWhether the firewall policy is enabled or disabled" }, "source": { "type": "string", "description": "Default: None\n\nThe list of source addresses for traffic on the originating firewall. This is required when state is 'present\"" }, "state": { "type": "string", "description": "Default: present\n\nWhether to create or delete the firewall policy" }, "location": { "type": "string", "description": "Target datacenter for the firewall policy" }, "source_account_alias": { "type": "string", "description": "CLC alias for the source account" }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the provisioning tasks to finish before returning." }, "ports": { "type": "string", "description": "Default: None\n\nThe list of ports associated with the policy. TCP and UDP can take in single ports or port ranges." }, "firewall_policy_id": { "type": "string", "description": "Default: None\n\nId of the firewall policy. This is required to update or delete an existing firewall policy" } } }, "win_audit_rule": { "allOf": [ { "allOf": [ { "not": { "required": [ "path", "dest", "destination" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "destination" ], "type": "object" } ] } ] } ], "type": "object", "description": "Used to apply audit rules to files, folders or registry keys.\nOnce applied, it will begin recording the user who performed the operation defined into the Security Log in the Event viewer.\nThe behavior is designed to ignore inherited rules since those cannot be adjusted without first disabling the inheritance behavior. It will still print inherited rules in the output though for debugging purposes.", "properties": { "rights": { "type": "string", "description": "Comma seperated list of the rights desired. Only required for adding a rule.\nIf I(path) is a file or directory, rights can be any right under MSDN FileSystemRights U(https://msdn.microsoft.com/en-us/library/system.security.accesscontrol.filesystemrights.aspx).\nIf I(path) is a registry key, rights can be any right under MSDN RegistryRights U(https://msdn.microsoft.com/en-us/library/system.security.accesscontrol.registryrights.aspx)." }, "dest": { "type": "string", "description": "Path to the file, folder, or registry key.\nRegistry paths should be in Powershell format, beginning with an abbreviation for the root such as, 'hklm:\\software'." }, "audit_flags": { "type": "string", "description": "Defines whether to log on failure, success, or both.\nTo log both define as comma seperated list \"Success, Failure\"." }, "destination": { "type": "string", "description": "Path to the file, folder, or registry key.\nRegistry paths should be in Powershell format, beginning with an abbreviation for the root such as, 'hklm:\\software'." }, "propagation_flags": { "type": "string", "description": "Default: None\n\nPropagation flag on the audit rules.\nThis value is ignored when the path type is a file.\nFor more information on the choices see MSDN PropagationFlags enumeration at U(https://msdn.microsoft.com/en-us/library/system.security.accesscontrol.propagationflags.aspx)." }, "state": { "type": "string", "description": "Default: present\n\nWhether the rule should be C(present) or C(absent).\nFor absent, only I(path), I(user), and I(state) are required.\nSpecifying C(absent) will remove all rules matching the defined I(user)." }, "user": { "type": "string", "description": "The user or group to adjust rules for." }, "path": { "type": "string", "description": "Path to the file, folder, or registry key.\nRegistry paths should be in Powershell format, beginning with an abbreviation for the root such as, 'hklm:\\software'." }, "inheritance_flags": { "type": "string", "description": "Default: ContainerInherit,ObjectInherit\n\nDefines what objects inside of a folder or registry key will inherit the settings.\nIf you are setting a rule on a file, this value has to be changed to C(none).\nFor more information on the choices see MSDN PropagationFlags enumeration at U(https://msdn.microsoft.com/en-us/library/system.security.accesscontrol.inheritanceflags.aspx)." } } }, "cnos_interface": { "required": [ "interfaceOption", "interfaceRange", "interfaceArg1" ], "type": "object", "description": "This module allows you to work with interface related configurations. The operators used are overloaded to ensure control over switch interface configurations. Apart from the regular device connection related attributes, there are seven interface arguments that will perform further configurations. They are interfaceArg1, interfaceArg2, interfaceArg3, interfaceArg4, interfaceArg5, interfaceArg6, and interfaceArg7. For more details on how to use these arguments, see [Overloaded Variables]. Interface configurations are taken care at six contexts in a regular CLI. They are 1. Interface Name - Configurations 2. Ethernet Interface - Configurations 3. Loopback Interface Configurations 4. Management Interface Configurations 5. Port Aggregation - Configurations 6. VLAN Configurations This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_interface.html)", "properties": { "interfaceOption": { "type": "string", "description": "This specifies the attribute you specify subsequent to interface command" }, "interfaceRange": { "type": "string", "description": "This specifies the interface range in which the port aggregation is envisaged" }, "interfaceArg4": { "type": "string", "description": "This is an overloaded interface fourth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg5": { "type": "string", "description": "This is an overloaded interface fifth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg6": { "type": "string", "description": "This is an overloaded interface sixth argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg7": { "type": "string", "description": "This is an overloaded interface seventh argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg1": { "type": "string", "description": "This is an overloaded interface first argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg2": { "type": "string", "description": "This is an overloaded interface second argument. Usage of this argument can be found is the User Guide referenced above." }, "interfaceArg3": { "type": "string", "description": "This is an overloaded interface third argument. Usage of this argument can be found is the User Guide referenced above." } } }, "ec2_eip": { "allOf": [ { "allOf": [ { "not": { "required": [ "public_ip", "ip" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "device_id", "instance_id" ], "type": "object" } } ] } ], "type": "object", "description": "This module can allocate or release an EIP.\nThis module can associate/disassociate an EIP with instances or network interfaces.", "properties": { "release_on_disassociation": { "type": "string", "description": "whether or not to automatically release the EIP when it is disassociated" }, "instance_id": { "type": "string", "description": "The id of the device for the EIP. Can be an EC2 Instance id or Elastic Network Interface (ENI) id." }, "reuse_existing_ip_allowed": { "type": "string", "description": "Reuse an EIP that is not associated to a device (when available), instead of allocating a new one." }, "ip": { "type": "string", "description": "The IP address of a previously allocated EIP.\nIf present and device is specified, the EIP is associated with the device.\nIf absent and device is specified, the EIP is disassociated from the device." }, "public_ip": { "type": "string", "description": "The IP address of a previously allocated EIP.\nIf present and device is specified, the EIP is associated with the device.\nIf absent and device is specified, the EIP is disassociated from the device." }, "state": { "type": "string", "description": "Default: present\n\nIf present, allocate an EIP or associate an existing EIP with a device.\nIf absent, disassociate the EIP from the device and optionally release it." }, "in_vpc": { "type": "string", "description": "allocate an EIP inside a VPC or not" }, "device_id": { "type": "string", "description": "The id of the device for the EIP. Can be an EC2 Instance id or Elastic Network Interface (ENI) id." } } }, "netscaler_server": { "type": "object", "description": "Manage server entities configuration.\nThis module is intended to run either on the ansible control node or a bastion (jumpserver) with access to the actual netscaler instance.", "properties": { "comment": { "type": "string", "description": "Any information about the server." }, "disabled": { "description": "When set to C(true) the server state will be set to C(disabled).\nWhen set to C(false) the server state will be set to C(enabled).\nNote that due to limitations of the underlying NITRO API a C(disabled) state change alone does not cause the module result to report a changed status.", "$ref": "#/definitions/ansible_truth" }, "domain": { "type": "string", "description": "Domain name of the server. For a domain based configuration, you must create the server first.\nMinimum length = 1" }, "name": { "type": "string", "description": "Name for the server.\nMust begin with an ASCII alphabetic or underscore C(_) character, and must contain only ASCII alphanumeric, underscore C(_), hash C(#), period C(.), space C( ), colon C(:), at C(@), equals C(=), and hyphen C(-) characters.\nCan be changed after the name is created.\nMinimum length = 1" }, "ipv6address": { "description": "Support IPv6 addressing mode. If you configure a server with the IPv6 addressing mode, you cannot use the server in the IPv4 addressing mode.", "$ref": "#/definitions/ansible_truth" }, "domainresolveretry": { "type": "string", "description": "Default: 5\n\nTime, in seconds, for which the NetScaler appliance must wait, after DNS resolution fails, before sending the next DNS query to resolve the domain name.\nMinimum value = C(5)\nMaximum value = C(20939)" }, "translationmask": { "type": "string", "description": "The netmask of the translation ip." }, "delay": { "type": "string", "description": "Time, in seconds, after which all the services configured on the server are disabled.\nThis option is meaningful only when setting the I(disabled) option to C(true)" }, "translationip": { "type": "string", "description": "IP address used to transform the server's DNS-resolved IP address." }, "graceful": { "description": "Shut down gracefully, without accepting any new connections, and disabling each service when all of its connections are closed.\nThis option is meaningful only when setting the I(disabled) option to C(true)", "$ref": "#/definitions/ansible_truth" }, "td": { "type": "string", "description": "Integer value that uniquely identifies the traffic domain in which you want to configure the entity. If you do not specify an ID, the entity becomes part of the default traffic domain, which has an ID of 0.\nMinimum value = C(0)\nMaximum value = C(4094)" }, "ipaddress": { "type": "string", "description": "IPv4 or IPv6 address of the server. If you create an IP address based server, you can specify the name of the server, instead of its IP address, when creating a service. Note: If you do not create a server entry, the server IP address that you enter when you create a service becomes the name of the server." } } }, "puppet": { "type": "object", "description": "Runs I(puppet) agent or apply in a reliable manner", "properties": { "logdest": { "type": "string", "description": "Default: stdout\n\nWhere the puppet logs should go, if puppet apply is being used" }, "execute": { "type": "string", "description": "Default: None\n\nExecute a specific piece of Puppet code. It has no effect with a puppetmaster." }, "certname": { "type": "string", "description": "Default: None\n\nThe name to use when handling certificates." }, "tags": { "type": "string", "description": "Default: None\n\nA comma-separated list of puppet tags to be used." }, "puppetmaster": { "type": "string", "description": "Default: None\n\nThe hostname of the puppetmaster to contact." }, "facter_basename": { "type": "string", "description": "Default: ansible\n\nBasename of the facter output file" }, "manifest": { "type": "string", "description": "Default: None\n\nPath to the manifest file to run puppet apply on." }, "environment": { "type": "string", "description": "Default: None\n\nPuppet environment to be used." }, "timeout": { "type": "string", "description": "Default: 30m\n\nHow long to wait for I(puppet) to finish." }, "facts": { "type": "string", "description": "Default: None\n\nA dict of values to pass in as persistent external facter facts" } } }, "cnos_vlag": { "required": [ "vlagArg1" ], "type": "object", "description": "This module allows you to work with virtual Link Aggregation Groups (vLAG) related configurations. The operators used are overloaded to ensure control over switch vLAG configurations. Apart from the regular device connection related attributes, there are four vLAG arguments which are overloaded variables that will perform further configurations. They are vlagArg1, vlagArg2, vlagArg3, and vlagArg4. For more details on how to use these arguments, see [Overloaded Variables]. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_vlag.html)", "properties": { "vlagArg2": { "type": "string", "description": "This is an overloaded vlag second argument. Usage of this argument can be found is the User Guide referenced above." }, "vlagArg3": { "type": "string", "description": "This is an overloaded vlag third argument. Usage of this argument can be found is the User Guide referenced above." }, "vlagArg1": { "type": "string", "description": "This is an overloaded vlag first argument. Usage of this argument can be found is the User Guide referenced above." }, "vlagArg4": { "type": "string", "description": "This is an overloaded vlag fourth argument. Usage of this argument can be found is the User Guide referenced above." } } }, "azure_rm_networkinterface": { "allOf": [ { "allOf": [ { "not": { "required": [ "public_ip_address_name", "public_ip_address", "public_ip_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "virtual_network_name", "virtual_network" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "security_group_name", "security_group" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subnet_name", "subnet" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update or delete a network interface. When creating a network interface you must provide the name of an existing virtual network, the name of an existing subnet within the virtual network. A default security group and public IP address will be created automatically, or you can provide the name of an existing security group and public IP address. See the examples below for more details.", "properties": { "public_ip_address_name": { "type": "string", "description": "Name of an existing public IP address object to associate with the security group." }, "subnet": { "type": "string", "description": "Name of an existing subnet within the specified virtual network. Required when creating a network interface" }, "public_ip_address": { "type": "string", "description": "Name of an existing public IP address object to associate with the security group." }, "resource_group": { "type": "string", "description": "Name of a resource group where the network interface exists or will be created." }, "virtual_network_name": { "type": "string", "description": "Name of an existing virtual network with which the network interface will be associated. Required when creating a network interface." }, "public_ip_allocation_method": { "type": "string", "description": "Default: Dynamic\n\nIf a public_ip_address_name is not provided, a default public IP address will be created. The allocation method determines whether or not the public IP address assigned to the network interface is permanent." }, "private_ip_allocation_method": { "type": "string", "description": "Default: Dynamic\n\nSpecify whether or not the assigned IP address is permanent. NOTE: when creating a network interface specifying a value of 'Static' requires that a private_ip_address value be provided. You can update the allocation method to 'Static' after a dynamic private ip address has been assigned." }, "security_group_name": { "type": "string", "description": "Name of an existing security group with which to associate the network interface. If not provided, a default security group will be created." }, "public_ip": { "type": "string", "description": "Default: True\n\nWhen creating a network interface, if no public IP address name is provided a default public IP address will be created. Set to false, if you do not want a public IP address automatically created." }, "private_ip_address": { "type": "string", "description": "Valid IPv4 address that falls within the specified subnet." }, "state": { "type": "string", "description": "Default: present\n\nAssert the state of the network interface. Use 'present' to create or update an interface and 'absent' to delete an interface." }, "public_ip_name": { "type": "string", "description": "Name of an existing public IP address object to associate with the security group." }, "subnet_name": { "type": "string", "description": "Name of an existing subnet within the specified virtual network. Required when creating a network interface" }, "location": { "type": "string", "description": "Default: resource_group location\n\nValid azure location. Defaults to location of the resource group." }, "security_group": { "type": "string", "description": "Name of an existing security group with which to associate the network interface. If not provided, a default security group will be created." }, "virtual_network": { "type": "string", "description": "Name of an existing virtual network with which the network interface will be associated. Required when creating a network interface." }, "os_type": { "type": "string", "description": "Default: Linux\n\nDetermines any rules to be added to a default security group. When creating a network interface, if no security group name is provided, a default security group will be created. If the os_type is 'Windows', a rule will be added allowing RDP access. If the os_type is 'Linux', a rule allowing SSH access will be added." }, "open_ports": { "type": "string", "description": "When a default security group is created for a Linux host a rule will be added allowing inbound TCP connections to the default SSH port 22, and for a Windows host rules will be added allowing inbound access to RDP ports 3389 and 5986. Override the default ports by providing a list of open ports." }, "name": { "type": "string", "description": "Name of the network interface." } } }, "cnos_vlan": { "required": [ "vlanArg1" ], "type": "object", "description": "This module allows you to work with VLAN related configurations. The operators used are overloaded to ensure control over switch VLAN configurations. The first level of VLAN configuration allows to set up the VLAN range, the VLAN tag persistence, a VLAN access map and access map filter. After passing this level, there are five VLAN arguments that will perform further configurations. They are vlanArg1, vlanArg2, vlanArg3, vlanArg4, and vlanArg5. The value of vlanArg1 will determine the way following arguments will be evaluated. For more details on how to use these arguments, see [Overloaded Variables]. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_vlan.html)", "properties": { "vlanArg5": { "type": "string", "description": "This is an overloaded vlan fifth argument. Usage of this argument can be found is the User Guide referenced above." }, "vlanArg4": { "type": "string", "description": "This is an overloaded vlan fourth argument. Usage of this argument can be found is the User Guide referenced above." }, "vlanArg3": { "type": "string", "description": "This is an overloaded vlan third argument. Usage of this argument can be found is the User Guide referenced above." }, "vlanArg2": { "type": "string", "description": "This is an overloaded vlan second argument. Usage of this argument can be found is the User Guide referenced above." }, "vlanArg1": { "type": "string", "description": "This is an overloaded vlan first argument. Usage of this argument can be found is the User Guide referenced above." } } }, "proxysql_global_variables": { "required": [ "variable" ], "type": "object", "description": "The M(proxysql_global_variables) module gets or sets the proxysql global variables.", "properties": { "variable": { "type": "string", "description": "Defines which variable should be returned, or if I(value) is specified which variable should be updated." }, "value": { "type": "string", "description": "Defines a value the variable specified using I(variable) should be set to." } } }, "dladm_vnic": { "allOf": [ { "allOf": [ { "not": { "required": [ "vlan", "vlan_id" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "mac", "macaddr" ], "type": "object" } } ] } ], "type": "object", "description": "Create or delete VNICs on Solaris/illumos systems.", "properties": { "macaddr": { "type": "string", "description": "Sets the VNIC's MAC address. Must be valid unicast MAC address." }, "temporary": { "type": "string", "description": "Specifies that the VNIC is temporary. Temporary VNICs do not persist across reboots." }, "name": { "type": "string", "description": "VNIC name." }, "vlan": { "type": "string", "description": "Enable VLAN tagging for this VNIC. The VLAN tag will have id I(vlan)." }, "mac": { "type": "string", "description": "Sets the VNIC's MAC address. Must be valid unicast MAC address." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete Solaris/illumos VNIC." }, "link": { "type": "string", "description": "VNIC underlying link name." }, "vlan_id": { "type": "string", "description": "Enable VLAN tagging for this VNIC. The VLAN tag will have id I(vlan)." } } }, "stacki_host": { "required": [ "name", "stacki_user", "stacki_endpoint", "stacki_password" ], "type": "object", "description": "Use this module to add or remove hosts to a stacki front-end via API.\nU(https://github.com/StackIQ/stacki)", "properties": { "prim_intf_ip": { "type": "string", "description": "IP Address for the primary network interface." }, "name": { "type": "string", "description": "Name of the host to be added to Stacki." }, "stacki_user": { "type": "string", "description": "Username for authenticating with Stacki API, but if not specified, the environment variable C(stacki_user) is used instead." }, "stacki_endpoint": { "type": "string", "description": "URL for the Stacki API Endpoint." }, "prim_intf": { "type": "string", "description": "Name of the primary network interface." }, "force_install": { "type": "string", "description": "Set value to True to force node into install state if it already exists in stacki." }, "stacki_password": { "type": "string", "description": "Password for authenticating with Stacki API, but if not specified, the environment variable C(stacki_password) is used instead." }, "prim_intf_mac": { "type": "string", "description": "MAC Address for the primary PXE boot network interface." } } }, "avi_pkiprofile": { "required": [ "name" ], "type": "object", "description": "This module is used to configure PKIProfile object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "crls": { "type": "string", "description": "Certificate revocation lists." }, "name": { "type": "string", "description": "Name of the pki profile." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "ignore_peer_chain": { "description": "When enabled, avi will not trust intermediate and root certs presented by a client.\nInstead, only the chain certs configured in the certificate authority section will be used to verify trust of the client's cert.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "is_federated": { "description": "This field describes the object's replication scope.\nIf the field is set to false, then the object is visible within the controller-cluster and its associated service-engines.\nIf the field is set to true, then the object is replicated across the federation.\nField introduced in 17.1.3.\nDefault value when not specified in API or module is interpreted by Avi Controller as False.", "$ref": "#/definitions/ansible_truth" }, "created_by": { "type": "string", "description": "Creator name." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "validate_only_leaf_crl": { "description": "When enabled, avi will only validate the revocation status of the leaf certificate using crl.\nTo enable validation for the entire chain, disable this option and provide all the relevant crls.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "ca_certs": { "type": "array", "description": "List of certificate authorities (root and intermediate) trusted that is used for certificate validation." }, "crl_check": { "description": "When enabled, avi will verify via crl checks that certificates in the trust chain have not been revoked.\nDefault value when not specified in API or module is interpreted by Avi Controller as True.", "$ref": "#/definitions/ansible_truth" }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." } } }, "include_vars": { "type": "object", "description": "Loads variables from a YAML/JSON files dynamically from within a file or from a directory recursively during task runtime. If loading a directory, the files are sorted alphabetically before being loaded.\nThis module is also supported for Windows targets.", "properties": { "ignore_files": { "type": "array", "description": "List of file names to ignore." }, "free-form": { "type": "string", "description": "This module allows you to specify the 'file' option directly without any other options. There is no 'free-form' option, this is just an indicator, see example below." }, "files_matching": { "type": "string", "description": "Limit the files that are loaded within any directory to this regular expression." }, "depth": { "type": "string", "description": "When using C(dir), this module will, by default, recursively go through each sub directory and load up the variables. By explicitly setting the depth, this module will only go as deep as the depth." }, "extensions": { "type": "array", "description": "Default: ['yaml', 'yml', 'json']\n\nList of file extensions to read when using C(dir)." }, "file": { "type": "string", "description": "The file name from which variables should be loaded.\nIf the path is relative, it will look for the file in vars/ subdirectory of a role or relative to playbook." }, "dir": { "type": "string", "description": "The directory name from which the variables should be loaded.\nIf the path is relative, it will look for the file in vars/ subdirectory of a role or relative to playbook." }, "name": { "type": "string", "description": "The name of a variable into which assign the included vars. If omitted (null) they will be made top level vars." } } }, "netapp_e_snapshot_group": { "required": [ "api_password", "name", "state", "storage_pool_name", "api_username", "base_volume_name", "api_url" ], "type": "object", "description": "Create, update, delete snapshot groups for NetApp E-series storage arrays", "properties": { "repo_pct": { "type": "string", "description": "Default: 20\n\nThe size of the repository in relation to the size of the base volume" }, "name": { "type": "string", "description": "The name to give the snapshot group" }, "rollback_priority": { "type": "string", "description": "Default: medium\n\nThe importance of the rollback operation.\nThis value is overridden by consistency group setting if this snapshot group is associated with a consistency group" }, "delete_limit": { "type": "string", "description": "Default: 30\n\nThe automatic deletion indicator.\nIf non-zero, the oldest snapshot image will be automatically deleted when creating a new snapshot image to keep the total number of snapshot images limited to the number specified.\nThis value is overridden by the consistency group setting if this snapshot group is associated with a consistency group." }, "api_password": { "type": "string", "description": "The password to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "state": { "type": "string", "description": "Whether to ensure the group is present or absent." }, "storage_pool_name": { "type": "string", "description": "The name of the storage pool on which to allocate the repository volume." }, "api_username": { "type": "string", "description": "The username to authenticate with the SANtricity WebServices Proxy or embedded REST API." }, "api_url": { "type": "string", "description": "The url to the SANtricity WebServices Proxy or embedded REST API." }, "base_volume_name": { "type": "string", "description": "The name of the base volume or thin volume to use as the base for the new snapshot group.\nIf a snapshot group with an identical C(name) already exists but with a different base volume an error will be returned." }, "full_policy": { "type": "string", "description": "Default: purgepit\n\nThe behavior on when the data repository becomes full.\nThis value is overridden by consistency group setting if this snapshot group is associated with a consistency group" }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "warning_threshold": { "type": "string", "description": "Default: 80\n\nThe repository utilization warning threshold, as a percentage of the repository volume capacity." } } }, "datadog_event": { "required": [ "title", "text", "app_key", "api_key" ], "type": "object", "description": "Allows to post events to DataDog (www.datadoghq.com) service.\nUses http://docs.datadoghq.com/api/#events API.", "properties": { "date_happened": { "type": "string", "description": "Default: now\n\nPOSIX timestamp of the event.\nDefault value is now." }, "alert_type": { "type": "string", "description": "Default: info\n\nType of alert." }, "tags": { "type": "string", "description": "Comma separated list of tags to apply to the event." }, "text": { "type": "string", "description": "The body of the event." }, "title": { "type": "string", "description": "The event title." }, "app_key": { "type": "string", "description": "Your DataDog app key." }, "priority": { "type": "string", "description": "Default: normal\n\nThe priority of the event." }, "host": { "type": "string", "description": "Default: {{ ansible_hostname }}\n\nHost name to associate with the event." }, "aggregation_key": { "type": "string", "description": "An arbitrary string to use for aggregation." }, "api_key": { "type": "string", "description": "Your DataDog API key." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "ios_ping": { "required": [ "dest" ], "type": "object", "description": "Tests reachability using ping from switch to a remote destination.\nFor a general purpose network module, see the M(net_ping) module.\nFor Windows targets, use the M(win_ping) module instead.\nFor targets running Python, use the M(ping) module instead.", "properties": { "count": { "type": "string", "description": "Default: 5\n\nNumber of packets to send." }, "dest": { "type": "string", "description": "The IP Address or hostname (resolvable by switch) of the remote node." }, "state": { "type": "string", "description": "Default: present\n\nDetermines if the expected result is success or fail." }, "vrf": { "type": "string", "description": "Default: default\n\nThe VRF to use for forwarding." }, "source": { "type": "string", "description": "The source IP Address." } } }, "vmware_local_role_manager": { "required": [ "local_role_name" ], "type": "object", "description": "Manage local roles on an ESXi host", "properties": { "force_remove": { "description": "If set to C(False) then prevents the role from being removed if any permissions are using it.", "$ref": "#/definitions/ansible_truth" }, "local_role_name": { "type": "string", "description": "The local role name to be managed." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the role.\nIf the role already exists when C(state=present), the role info is updated." }, "local_privilege_ids": { "type": "string", "description": "The list of privileges that role needs to have.\nPlease see U(https://docs.vmware.com/en/VMware-vSphere/6.0/com.vmware.vsphere.security.doc/GUID-ED56F3C4-77D0-49E3-88B6-B99B8B437B62.html)" } } }, "bigip_sys_global": { "type": "object", "description": "Manage BIG-IP global settings.", "properties": { "security_banner": { "description": "Specifies whether the system displays an advisory message on the login screen.", "$ref": "#/definitions/ansible_truth" }, "net_reboot": { "description": "Specifies, when C(enabled), that the next time you reboot the system, the system boots to an ISO image on the network, rather than an internal media drive.", "$ref": "#/definitions/ansible_truth" }, "banner_text": { "type": "string", "description": "Specifies the text to present in the advisory banner." }, "console_timeout": { "type": "string", "description": "Specifies the number of seconds of inactivity before the system logs off a user that is logged on." }, "quiet_boot": { "description": "Specifies, when C(enabled), that the system suppresses informational text on the console during the boot cycle. When C(disabled), the system presents messages and informational text on the console during the boot cycle.", "$ref": "#/definitions/ansible_truth" }, "mgmt_dhcp": { "description": "Specifies whether or not to enable DHCP client on the management interface", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nThe state of the variable on the system. When C(present), guarantees that an existing variable is set to C(value)." }, "gui_setup": { "description": "C(enable) or C(disabled) the Setup utility in the browser-based Configuration utility.", "$ref": "#/definitions/ansible_truth" }, "lcd_display": { "description": "Specifies, when C(enabled), that the system menu displays on the LCD screen on the front of the unit. This setting has no effect when used on the VE platform.", "$ref": "#/definitions/ansible_truth" } } }, "eos_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running eos. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "elb_target": { "required": [ "target_id", "state" ], "type": "object", "description": "Used to register or deregister a target in a target group", "properties": { "target_status_timeout": { "type": "string", "description": "Default: 60\n\nMaximum time in seconds to wait for target_status change" }, "target_id": { "type": "string", "description": "The ID of the target." }, "target_group_name": { "type": "string", "description": "The name of the target group. Mutually exclusive of I(target_group_arn)." }, "state": { "type": "string", "description": "Register or deregister the target." }, "target_group_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the target group. Mutually exclusive of I(target_group_name)." }, "target_port": { "type": "string", "description": "Default: The default port for a target is the port for the target group.\n\nThe port on which the target is listening. You can specify a port override. If a target is already registered, you can register it again using a different port." }, "target_status": { "type": "string", "description": "Blocks and waits for the target status to equal given value. For more detail on target status see U(http://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html#target-health-states)" }, "deregister_unused": { "type": "string", "description": "The default behaviour for targets that are unused is to leave them registered. If instead you would like to remove them set I(deregister_unused) to yes." }, "target_az": { "type": "string", "description": "An Availability Zone or all. This determines whether the target receives traffic from the load balancer nodes in the specified Availability Zone or from all enabled Availability Zones for the load balancer. This parameter is not supported if the target type of the target group is instance." } } }, "slack": { "required": [ "token" ], "type": "object", "description": "The M(slack) module sends notifications to U(http://slack.com) via the Incoming WebHook integration", "properties": { "username": { "type": "string", "description": "Default: Ansible\n\nThis is the sender of the message." }, "domain": { "type": "string", "description": "Default: None\n\nSlack (sub)domain for your environment without protocol. (i.e. C(future500.slack.com)) In 1.8 and beyond, this is deprecated and may be ignored. See token documentation for information." }, "attachments": { "type": "string", "description": "Default: None\n\nDefine a list of attachments. This list mirrors the Slack JSON API. For more information, see https://api.slack.com/docs/attachments" }, "color": { "type": "string", "description": "Default: normal\n\nAllow text to use default colors - use the default of 'normal' to not send a custom color bar at the start of the message" }, "icon_url": { "type": "string", "description": "Url for the message sender's icon (default C(https://www.ansible.com/favicon.ico))" }, "parse": { "type": "string", "description": "Default: None\n\nSetting for the message parser at Slack" }, "token": { "type": "string", "description": "Slack integration token. This authenticates you to the slack service. Prior to 1.8, a token looked like C(3Ffe373sfhRE6y42Fg3rvf4GlK). In 1.8 and above, ansible adapts to the new slack API where tokens look like C(G922VJP24/D921DW937/3Ffe373sfhRE6y42Fg3rvf4GlK). If tokens are in the new format then slack will ignore any value of domain. If the token is in the old format the domain is required. Ansible has no control of when slack will get rid of the old API. When slack does that the old format will stop working." }, "icon_emoji": { "type": "string", "description": "Default: None\n\nEmoji for the message sender. See Slack documentation for options. (if I(icon_emoji) is set, I(icon_url) will not be used)" }, "link_names": { "type": "string", "description": "Default: 1\n\nAutomatically create links for channels and usernames in I(msg)." }, "msg": { "type": "string", "description": "Default: None\n\nMessage to send." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "channel": { "type": "string", "description": "Default: None\n\nChannel to send the message to. If absent, the message goes to the channel selected for the I(token)." } } }, "xbps": { "type": "object", "description": "Manage packages with the XBPS package manager.", "properties": { "update_cache": { "type": "string", "description": "Default: True\n\nWhether or not to refresh the master package lists. This can be run as part of a package installation or as a separate step." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the package." }, "upgrade": { "type": "string", "description": "Whether or not to upgrade whole system" }, "recurse": { "type": "string", "description": "When removing a package, also remove its dependencies, provided that they are not required by other packages and were not explicitly installed by a user." }, "name": { "type": "string", "description": "Name of the package to install, upgrade, or remove." } } }, "iosxr_netconf": { "allOf": [ { "allOf": [ { "not": { "required": [ "netconf_vrf", "vrf" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "netconf_port", "listens_on" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides an abstraction that enables and configures the netconf system service running on Cisco IOS-XR Software. This module can be used to easily enable the Netconf API. Netconf provides a programmatic interface for working with configuration and state resources as defined in RFC 6242.", "properties": { "state": { "type": "string", "description": "Default: present\n\nSpecifies the state of the C(iosxr_netconf) resource on the remote device. If the I(state) argument is set to I(present) the netconf service will be configured. If the I(state) argument is set to I(absent) the netconf service will be removed from the configuration." }, "netconf_vrf": { "type": "string", "description": "Default: default\n\nnetconf vrf name" }, "listens_on": { "type": "string", "description": "Default: 830\n\nThis argument specifies the port the netconf service should listen on for SSH connections. The default port as defined in RFC 6242 is 830." }, "vrf": { "type": "string", "description": "Default: default\n\nnetconf vrf name" }, "netconf_port": { "type": "string", "description": "Default: 830\n\nThis argument specifies the port the netconf service should listen on for SSH connections. The default port as defined in RFC 6242 is 830." } } }, "pkg5_publisher": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "publisher" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "publisher" ], "type": "object" } ] } ] } ], "type": "object", "description": "IPS packages are the native packages in Solaris 11 and higher.\nThis modules will configure which publishers a client will download IPS packages from.", "properties": { "origin": { "type": "string", "description": "A path or URL to the repository.\nMultiple values may be provided." }, "publisher": { "type": "string", "description": "The publisher's name." }, "name": { "type": "string", "description": "The publisher's name." }, "enabled": { "type": "string", "description": "Is the repository enabled or disabled?" }, "sticky": { "type": "string", "description": "Packages installed from a sticky repository can only receive updates from that repository." }, "state": { "type": "string", "description": "Default: present\n\nWhether to ensure that a publisher is present or absent." }, "mirror": { "type": "string", "description": "A path or URL to the repository mirror.\nMultiple values may be provided." } } }, "aos_device": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Device module let you manage your devices in AOS easily. You can approve devices and define in which state the device should be. Currently only the state I(normal) is supported but the goal is to extend this module with additional state. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "name": { "type": "string", "description": "The device serial-number; i.e. uniquely identifies the device in the AOS system. Only one of I(name) or I(id) can be set." }, "state": { "type": "string", "description": "Default: normal\n\nDefine in which state the device should be. Currently only I(normal) is supported but the goal is to add I(maint) and I(decomm)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "location": { "type": "string", "description": "When approving a device using the I(approve) argument, it's possible define the location of the device." }, "approve": { "type": "string", "description": "Default: no\n\nThe approve argument instruct the module to convert a device in quarantine mode into approved mode." }, "id": { "type": "string", "description": "The AOS internal id for a device; i.e. uniquely identifies the device in the AOS system. Only one of I(name) or I(id) can be set." } } }, "bigip_partition": { "required": [ "name" ], "type": "object", "description": "Manage BIG-IP partitions.", "properties": { "route_domain": { "type": "string", "description": "The default Route Domain to assign to the Partition. If no route domain is specified, then the default route domain for the system (typically zero) will be used only when creating a new partition." }, "description": { "type": "string", "description": "The description to attach to the Partition." }, "name": { "type": "string", "description": "Name of the partition" }, "state": { "type": "string", "description": "Default: present\n\nWhether the partition should exist or not." } } }, "avi_hardwaresecuritymodulegroup": { "required": [ "name", "hsm" ], "type": "object", "description": "This module is used to configure HardwareSecurityModuleGroup object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "name": { "type": "string", "description": "Name of the hsm group configuration object." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "hsm": { "type": "string", "description": "Hardware security module configuration." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "uuid": { "type": "string", "description": "Uuid of the hsm group configuration object." } } }, "ce_vrf_af": { "required": [ "vrf" ], "type": "object", "description": "Manages VPN instance address family of HUAWEI CloudEngine switches.", "properties": { "vpn_target_type": { "type": "string", "description": "VPN instance vpn target type." }, "vpn_target_state": { "type": "string", "description": "Manage the state of the vpn target." }, "vrf_aftype": { "type": "string", "description": "Default: v4\n\nVPN instance address family." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the af." }, "route_distinguisher": { "type": "string", "description": "VPN instance route distinguisher,the RD used to distinguish same route prefix from different vpn. The RD must be setted before setting vpn_target_value." }, "vrf": { "type": "string", "description": "VPN instance." }, "evpn": { "type": "string", "description": "Is extend vpn or normal vpn." }, "vpn_target_value": { "type": "string", "description": "VPN instance target value. Such as X.X.X.X:number<0-65535> or number<0-65535>:number<0-4294967295> or number<0-65535>.number<0-65535>:number<0-65535> or number<65536-4294967295>:number<0-65535> but not support 0:0 and 0.0:0." } } }, "vmware_host_acceptance": { "type": "object", "description": "This module can be used to manage acceptance level of an ESXi host.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nAcceptance level of all ESXi host system in the given cluster will be managed.\nIf C(esxi_hostname) is not given, this parameter is required." }, "state": { "type": "string", "description": "Default: list\n\nSet or list acceptance level of the given ESXi host.\nIf set to C(list), then will return current acceptance level of given host system/s.\nIf set to C(present), then will set given acceptance level." }, "acceptance_level": { "type": "string", "description": "Name of acceptance level.\nIf set to C(partner), then accept only partner and VMware signed and certified VIBs.\nIf set to C(vmware_certified), then accept only VIBs that are signed and certified by VMware.\nIf set to C(vmware_accepted), then accept VIBs that have been accepted by VMware.\nIf set to C(community), then accept all VIBs, even those that are not signed." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nAcceptance level of this ESXi host system will be managed.\nIf C(cluster_name) is not given, this parameter is required." } } }, "vmware_host_service_facts": { "type": "object", "description": "This module can be used to gather facts about an ESXi host's services.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nService facts about each ESXi server will be returned for given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nService facts about this ESXi server will be returned.\nIf C(cluster_name) is not given, this parameter is required." } } }, "stackdriver": { "required": [ "key" ], "type": "object", "description": "Send code deploy and annotation events to Stackdriver", "properties": { "repository": { "type": "string", "description": "The repository (or project) deployed" }, "level": { "type": "string", "description": "Default: INFO\n\none of INFO/WARN/ERROR, defaults to INFO if not supplied.  May affect display." }, "annotated_by": { "type": "string", "description": "Default: Ansible\n\nThe person or robot who the annotation should be attributed to." }, "deployed_by": { "type": "string", "description": "Default: Ansible\n\nThe person or robot responsible for deploying the code" }, "deployed_to": { "type": "string", "description": "The environment code was deployed to. (ie: development, staging, production)" }, "instance_id": { "type": "string", "description": "id of an EC2 instance that this event should be attached to, which will limit the contexts where this event is shown" }, "key": { "type": "string", "description": "API key." }, "msg": { "type": "string", "description": "The contents of the annotation message, in plain text.  Limited to 256 characters. Required for annotation." }, "event_epoch": { "type": "string", "description": "Unix timestamp of where the event should appear in the timeline, defaults to now. Be careful with this." }, "revision_id": { "type": "string", "description": "The revision of the code that was deployed. Required for deploy events" }, "event": { "type": "string", "description": "The type of event to send, either annotation or deploy" } } }, "junos_static_route": { "allOf": [ { "allOf": [ { "not": { "required": [ "preference", "admin_distance" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "address", "prefix" ], "type": "object" } }, { "oneOf": [ { "required": [ "address" ], "type": "object" }, { "required": [ "prefix" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module provides declarative management of static IP routes on Juniper JUNOS network devices.", "properties": { "qualified_next_hop": { "type": "string", "description": "Qualified next hop IP of the static route. Qualified next hops allow to associate preference with a particular next-hop address." }, "prefix": { "type": "string", "description": "Network address with prefix of the static route." }, "admin_distance": { "type": "string", "description": "Global admin preference of the static route." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the static route configuration." }, "next_hop": { "type": "string", "description": "Next hop IP of the static route." }, "preference": { "type": "string", "description": "Global admin preference of the static route." }, "qualified_preference": { "type": "string", "description": "Assign preference for qualified next hop." }, "address": { "type": "string", "description": "Network address with prefix of the static route." }, "aggregate": { "type": "array", "description": "List of static route definitions" } } }, "purefa_snap": { "required": [ "name" ], "type": "object", "description": "Create or delete volumes and volume snapshots on Pure Storage FlashArray.", "properties": { "name": { "type": "string", "description": "The name of the source volume." }, "state": { "type": "string", "description": "Default: present\n\nDefine whether the volume snapshot should exist or not." }, "suffix": { "type": "string", "description": "Suffix of snapshot name." }, "target": { "type": "string", "description": "Name of target volume if creating from snapshot." }, "overwrite": { "description": "Default: no\n\nDefine whether to overwrite existing volume when creating from snapshot.", "$ref": "#/definitions/ansible_truth" }, "eradicate": { "description": "Default: no\n\nDefine whether to eradicate the snapshot on delete or leave in trash.", "$ref": "#/definitions/ansible_truth" } } }, "xattr": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "path" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "path" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manages filesystem user defined extended attributes, requires that they are enabled on the target filesystem and that the setfattr/getfattr utilities are present.", "properties": { "name": { "type": "string", "description": "Default: None\n\nThe full path of the file/object to get the facts of" }, "value": { "type": "string", "description": "Default: None\n\nThe value to set the named name/key to, it automatically sets the C(state) to 'set'" }, "state": { "type": "string", "description": "Default: get\n\ndefines which state you want to do. C(read) retrieves the current value for a C(key) (default) C(present) sets C(name) to C(value), default if value is set C(all) dumps all data C(keys) retrieves all keys C(absent) deletes the key" }, "key": { "type": "string", "description": "Default: None\n\nThe name of a specific Extended attribute key to set/retrieve" }, "path": { "type": "string", "description": "Default: None\n\nThe full path of the file/object to get the facts of" }, "follow": { "type": "string", "description": "Default: True\n\nif yes, dereferences symlinks and sets/gets attributes on symlink target, otherwise acts on symlink itself." } } }, "mysql_replication": { "type": "object", "description": "Manages MySQL server replication, slave, master status get and change master host.", "properties": { "master_ssl_cert": { "type": "string", "description": "same as mysql variable" }, "master_auto_position": { "type": "string", "description": "does the host uses GTID based replication or not" }, "master_log_pos": { "type": "string", "description": "same as mysql variable" }, "master_password": { "type": "string", "description": "same as mysql variable" }, "master_host": { "type": "string", "description": "same as mysql variable" }, "master_ssl": { "type": "string", "description": "same as mysql variable" }, "master_ssl_capath": { "type": "string", "description": "same as mysql variable" }, "master_ssl_ca": { "type": "string", "description": "same as mysql variable" }, "master_ssl_key": { "type": "string", "description": "same as mysql variable" }, "master_connect_retry": { "type": "string", "description": "same as mysql variable" }, "master_user": { "type": "string", "description": "same as mysql variable" }, "mode": { "type": "string", "description": "Default: getslave\n\nmodule operating mode. Could be getslave (SHOW SLAVE STATUS), getmaster (SHOW MASTER STATUS), changemaster (CHANGE MASTER TO), startslave (START SLAVE), stopslave (STOP SLAVE), resetslave (RESET SLAVE), resetslaveall (RESET SLAVE ALL)" }, "master_port": { "type": "string", "description": "same as mysql variable" }, "master_log_file": { "type": "string", "description": "same as mysql variable" }, "master_ssl_cipher": { "type": "string", "description": "same as mysql variable" }, "relay_log_pos": { "type": "string", "description": "same as mysql variable" }, "relay_log_file": { "type": "string", "description": "same as mysql variable" } } }, "hpilo_facts": { "required": [ "host" ], "type": "object", "description": "This module gathers facts for a specific system using its HP iLO interface. These facts include hardware and network related information useful for provisioning (e.g. macaddress, uuid).\nThis module requires the hpilo python module.", "properties": { "host": { "type": "string", "description": "The HP iLO hostname/address that is linked to the physical system." }, "password": { "type": "string", "description": "Default: admin\n\nThe password to authenticate to the HP iLO interface." }, "ssl_version": { "type": "string", "description": "Default: TLSv1\n\nChange the ssl_version used." }, "login": { "type": "string", "description": "Default: Administrator\n\nThe login name to authenticate to the HP iLO interface." } } }, "os_image": { "required": [ "name" ], "type": "object", "description": "Add or Remove images from the OpenStack Image Repository", "properties": { "ramdisk": { "type": "string", "description": "Default: None\n\nThe name of an existing ramdisk image that will be associated with this image" }, "kernel": { "type": "string", "description": "Default: None\n\nThe name of an existing kernel image that will be associated with this image" }, "properties": { "type": "string", "description": "Additional properties to be associated with this image" }, "name": { "type": "string", "description": "Default: None\n\nName that has to be given to the image" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "container_format": { "type": "string", "description": "Default: bare\n\nThe format of the container" }, "min_ram": { "type": "string", "description": "Default: None\n\nThe minimum ram (in MB) required to boot this image" }, "disk_format": { "type": "string", "description": "Default: qcow2\n\nThe format of the disk that is getting uploaded" }, "filename": { "type": "string", "description": "Default: None\n\nThe path to the file which has to be uploaded" }, "min_disk": { "type": "string", "description": "Default: None\n\nThe minimum disk space (in GB) required to boot this image" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "checksum": { "type": "string", "description": "Default: None\n\nThe checksum of the image" }, "owner": { "type": "string", "description": "Default: None\n\nThe owner of the image" }, "is_public": { "type": "string", "description": "Default: yes\n\nWhether the image can be accessed publicly. Note that publicizing an image requires admin role by default." }, "id": { "type": "string", "description": "Default: None\n\nThe Id of the image" } } }, "ovirt_permissions": { "allOf": [ { "allOf": [ { "not": { "required": [ "authz_name", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "authz_name" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Module to manage permissions of users/groups in oVirt/RHV.", "properties": { "domain": { "type": "string", "description": "Authorization provider of the user/group." }, "authz_name": { "type": "string", "description": "Authorization provider of the user/group." }, "object_type": { "type": "string", "description": "Default: vm\n\nThe object where the permissions should be managed." }, "namespace": { "type": "string", "description": "Namespace of the authorization provider, where user/group resides." }, "object_name": { "type": "string", "description": "Name of the object where the permissions should be managed." }, "object_id": { "type": "string", "description": "ID of the object where the permissions should be managed." }, "group_name": { "type": "string", "description": "Name of the group to manage.\nNote that if group does not exist in the system this module will fail, you should ensure the group exists by using M(ovirt_groups) module." }, "state": { "type": "string", "description": "Default: present\n\nShould the permission be present/absent." }, "role": { "type": "string", "description": "Default: UserRole\n\nName of the role to be assigned to user/group on specific object." }, "user_name": { "type": "string", "description": "Username of the user to manage. In most LDAPs it's I(uid) of the user, but in Active Directory you must specify I(UPN) of the user.\nNote that if user does not exist in the system this module will fail, you should ensure the user exists by using M(ovirt_users) module." } } }, "dladm_vlan": { "allOf": [ { "allOf": [ { "not": { "required": [ "vlan_id", "vid" ], "type": "object" } } ] } ], "type": "object", "description": "Create or delete VLAN interfaces on Solaris/illumos systems.", "properties": { "temporary": { "type": "string", "description": "Specifies that the VLAN interface is temporary. Temporary VLANs do not persist across reboots." }, "name": { "type": "string", "description": "VLAN interface name." }, "vid": { "type": "string", "description": "VLAN ID value for VLAN interface." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete Solaris/illumos VNIC." }, "link": { "type": "string", "description": "VLAN underlying link name." }, "vlan_id": { "type": "string", "description": "VLAN ID value for VLAN interface." } } }, "elasticsearch_plugin": { "required": [ "name" ], "type": "object", "description": "Manages Elasticsearch plugins.", "properties": { "name": { "type": "string", "description": "Name of the plugin to install. In Eleasticsearch >= 2.0, the name can be an URL or file location." }, "proxy_host": { "type": "string", "description": "Default: None\n\nProxy host to use during plugin installation" }, "url": { "type": "string", "description": "Default: None\n\nSet exact URL to download the plugin from (Only works for ES 1.x)" }, "proxy_port": { "type": "string", "description": "Default: None\n\nProxy port to use during plugin installation" }, "state": { "type": "string", "description": "Default: present\n\nDesired state of a plugin." }, "version": { "type": "string", "description": "Default: None\n\nVersion of the plugin to be installed. If plugin exists with previous version, it will NOT be updated" }, "timeout": { "type": "string", "description": "Default: 1m\n\nTimeout setting: 30s, 1m, 1h...\nOnly valid for Elasticsearch < 5.0. This option is ignored for Elasticsearch > 5.0." }, "plugin_dir": { "type": "string", "description": "Default: /usr/share/elasticsearch/plugins/\n\nYour configured plugin directory specified in Elasticsearch" }, "plugin_bin": { "type": "string", "description": "Default: None\n\nLocation of the plugin binary. If this file is not found, the default plugin binaries will be used.\nThe default changed in Ansible 2.4 to None." } } }, "proxysql_mysql_users": { "required": [ "username" ], "type": "object", "description": "The M(proxysql_mysql_users) module adds or removes mysql users using the proxysql admin interface.", "properties": { "username": { "type": "string", "description": "Name of the user connecting to the mysqld or ProxySQL instance." }, "default_hostgroup": { "type": "string", "description": "If there is no matching rule for the queries sent by this user, the traffic it generates is sent to the specified hostgroup. If omitted the proxysql database default for I(use_ssl) is 0." }, "frontend": { "type": "string", "description": "Default: True\n\nIf I(frontend) is set to C(True), this (username, password) pair is used for authenticating to the mysqld servers against any hostgroup." }, "default_schema": { "type": "string", "description": "The schema to which the connection should change to by default." }, "transaction_persistent": { "type": "string", "description": "If this is set for the user with which the MySQL client is connecting to ProxySQL (thus a \"frontend\" user), transactions started within a hostgroup will remain within that hostgroup regardless of any other rules. If omitted the proxysql database default for I(transaction_persistent) is C(False)." }, "max_connections": { "type": "string", "description": "The maximum number of connections ProxySQL will open to the backend for this user. If omitted the proxysql database default for I(max_connections) is 10000." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present) - adds the user, when C(absent) - removes the user." }, "fast_forward": { "type": "string", "description": "If I(fast_forward) is set to C(True), I(fast_forward) will bypass the query processing layer (rewriting, caching) and pass through the query directly as is to the backend server. If omitted the proxysql database default for I(fast_forward) is C(False)." }, "active": { "type": "string", "description": "A user with I(active) set to C(False) will be tracked in the database, but will be never loaded in the in-memory data structures. If omitted the proxysql database default for I(active) is C(True)." }, "use_ssl": { "type": "string", "description": "If I(use_ssl) is set to C(True), connections by this user will be made using SSL connections. If omitted the proxysql database default for I(use_ssl) is C(False)." }, "password": { "type": "string", "description": "Password of the user connecting to the mysqld or ProxySQL instance." }, "backend": { "type": "string", "description": "Default: True\n\nIf I(backend) is set to C(True), this (username, password) pair is used for authenticating to the ProxySQL instance." } } }, "ops_config": { "type": "object", "description": "OpenSwitch configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with ops configuration sections in a deterministic way.", "properties": { "src": { "type": "string", "description": "The I(src) argument provides a path to the configuration file to load into the remote system. The path can either be a full system path to the configuration file if the value starts with / or relative to the root of the implemented role or playbook. This argument is mutually exclusive with the I(lines) and I(parents) arguments." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured.\nNote this argument should be considered deprecated. To achieve the equivalent, set the C(match=none) which is idempotent. This argument will be removed in a future release." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "vyos_config": { "type": "object", "description": "This module provides configuration file management of VyOS devices. It provides arguments for managing both the configuration file and state of the active configuration. All configuration statements are based on `set` and `delete` commands in the device configuration.", "properties": { "comment": { "type": "string", "description": "Default: configured by vyos_config\n\nAllows a commit description to be specified to be included when the configuration is committed. If the configuration is not changed or committed, this argument is ignored." }, "src": { "type": "string", "description": "The C(src) argument specifies the path to the source config file to load. The source config file can either be in bracket format or set format. The source file can include Jinja2 template variables." }, "config": { "type": "string", "description": "The C(config) argument specifies the base configuration to use to compare against the desired configuration. If this value is not specified, the module will automatically retrieve the current active configuration from the remote device." }, "lines": { "type": "string", "description": "The ordered set of configuration lines to be managed and compared with the existing configuration on the remote device." }, "save": { "type": "string", "description": "The C(save) argument controls whether or not changes made to the active configuration are saved to disk. This is independent of committing the config. When set to True, the active configuration is saved." }, "backup": { "type": "string", "description": "The C(backup) argument will backup the current devices active configuration to the Ansible control host prior to making any changes. The backup file will be located in the backup folder in the root of the playbook" }, "match": { "type": "string", "description": "Default: line\n\nThe C(match) argument controls the method used to match against the current active configuration. By default, the desired config is matched against the active config and the deltas are loaded. If the C(match) argument is set to C(none) the active configuration is ignored and the configuration is always loaded." } } }, "ios_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on IOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of L3 interfaces definitions. Each of the entry in aggregate list should define name of interface C(name) and a optional C(ipv4) or C(ipv6) address." }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration. It indicates if the configuration should be present or absent on remote device." }, "ipv6": { "type": "string", "description": "IPv6 address to be set for the L3 interface mentioned in I(name) option. The address format is /, the mask is number in range 0-128 eg. fd5d:12c9:2201:1::1/64" }, "ipv4": { "type": "string", "description": "IPv4 address to be set for the L3 interface mentioned in I(name) option. The address format is /, the mask is number in range 0-32 eg. 192.168.0.1/24" }, "name": { "type": "string", "description": "Name of the L3 interface to be configured eg. GigabitEthernet0/2" } } }, "os_project": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain_id", "domain" ], "type": "object" } } ] } ], "type": "object", "description": "Manage OpenStack Projects. Projects can be created, updated or deleted using this module. A project will be updated if I(name) matches an existing project and I(state) is present. The value for I(name) cannot be updated without deleting and re-creating the project.", "properties": { "domain": { "type": "string", "description": "Default: None\n\nDomain id to create the project in if the cloud supports domains. The domain_id parameter requires shade >= 1.8.0" }, "name": { "type": "string", "description": "Name for the project" }, "enabled": { "type": "string", "description": "Default: True\n\nIs the project enabled" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "domain_id": { "type": "string", "description": "Default: None\n\nDomain id to create the project in if the cloud supports domains. The domain_id parameter requires shade >= 1.8.0" }, "description": { "type": "string", "description": "Default: None\n\nDescription for the project" } } }, "bigip_device_sshd": { "type": "object", "description": "Manage the SSHD settings of a BIG-IP", "properties": { "log_level": { "type": "string", "description": "Specifies the minimum SSHD message level to include in the system log." }, "banner_text": { "type": "string", "description": "Specifies the text to include on the pre-login banner that displays when a user attempts to login to the system using SSH." }, "allow": { "type": "string", "description": "Specifies, if you have enabled SSH access, the IP address or address range for other systems that can use SSH to communicate with this system." }, "inactivity_timeout": { "type": "string", "description": "Specifies the number of seconds before inactivity causes an SSH session to log out." }, "login": { "type": "string", "description": "Specifies, when checked C(enabled), that the system accepts SSH communications." }, "banner": { "type": "string", "description": "Whether to enable the banner or not." }, "port": { "type": "string", "description": "Port that you want the SSH daemon to run on." } } }, "zfs": { "required": [ "state", "name" ], "type": "object", "description": "Manages ZFS file systems, volumes, clones and snapshots", "properties": { "origin": { "type": "string", "description": "Snapshot from which to create a clone." }, "state": { "type": "string", "description": "Whether to create (C(present)), or remove (C(absent)) a file system, snapshot or volume. All parents/children will be created/destroyed as needed to reach the desired state." }, "extra_zfs_properties": { "type": "object", "description": "A dictionary of zfs properties to be set.\nSee the zfs(8) man page for more information." }, "name": { "type": "string", "description": "File system, snapshot or volume name e.g. C(rpool/myfs)." }, "key_value": { "type": "string", "description": "(**DEPRECATED**) This will be removed in Ansible-2.9. Set these values in the\nC(extra_zfs_properties) option instead.\nThe C(zfs) module takes key=value pairs for zfs properties to be set.\nSee the zfs(8) man page for more information." } } }, "uri": { "required": [ "url" ], "type": "object", "description": "Interacts with HTTP and HTTPS web services and supports Digest, Basic and WSSE HTTP authentication mechanisms.", "properties": { "body": { "type": "string", "description": "The body of the http request/response to the web service. If C(body_format) is set to 'json' it will take an already formatted JSON string or convert a data structure into JSON." }, "status_code": { "type": "string", "description": "Default: 200\n\nA valid, numeric, HTTP status code that signifies success of the request. Can also be comma separated list of status codes." }, "headers": { "type": "string", "description": "Add custom HTTP headers to a request in the format of a YAML hash" }, "dest": { "type": "string", "description": "path of where to download the file to (if desired). If I(dest) is a directory, the basename of the file on the remote server will be used." }, "follow_redirects": { "type": "string", "description": "Default: safe\n\nWhether or not the URI module should follow redirects. C(all) will follow all redirects. C(safe) will follow only \"safe\" redirects, where \"safe\" means that the client is only doing a GET or HEAD on the URI to which it is being redirected. C(none) will not follow any redirects. Note that C(yes) and C(no) choices are accepted for backwards compatibility, where C(yes) is the equivalent of C(all) and C(no) is the equivalent of C(safe). C(yes) and C(no) are deprecated and will be removed in some future version of Ansible." }, "force_basic_auth": { "type": "string", "description": "Default: no\n\nThe library used by the uri module only sends authentication information when a webservice responds to an initial request with a 401 status. Since some basic auth services do not properly send a 401, logins will fail. This option forces the sending of the Basic authentication header upon initial request." }, "removes": { "type": "string", "description": "a filename, when it does not exist, this step will not be run." }, "method": { "type": "string", "description": "Default: GET\n\nThe HTTP method of the request or response. It MUST be uppercase." }, "creates": { "type": "string", "description": "a filename, when it already exists, this step will not be run." }, "url": { "type": "string", "description": "HTTP or HTTPS URL in the form (http|https)://host.domain[:port]/path" }, "user": { "type": "string", "description": "username for the module to use for Digest, Basic or WSSE authentication." }, "timeout": { "type": "string", "description": "Default: 30\n\nThe socket level timeout in seconds" }, "others": { "type": "string", "description": "all arguments accepted by the M(file) module also work here" }, "body_format": { "type": "string", "description": "Default: raw\n\nThe serialization format of the body. When set to json, encodes the body argument, if needed, and automatically sets the Content-Type header accordingly." }, "return_content": { "type": "string", "description": "Default: no\n\nWhether or not to return the body of the request as a \"content\" key in the dictionary result. If the reported Content-type is \"application/json\", then the JSON is additionally loaded into a key called C(json) in the dictionary results." }, "password": { "type": "string", "description": "password for the module to use for Digest, Basic or WSSE authentication." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only set to C(no) used on personally controlled sites using self-signed certificates. Prior to 1.9.2 the code defaulted to C(no)." }, "HEADER_": { "type": "string", "description": "Any parameter starting with \"HEADER_\" is a sent with your request as a header. For example, HEADER_Content-Type=\"application/json\" would send the header \"Content-Type\" along with your request with a value of \"application/json\". This option is deprecated as of C(2.1) and may be removed in a future release. Use I(headers) instead." } } }, "ce_facts": { "type": "object", "description": "Collects facts from CloudEngine devices running the CloudEngine operating system. Fact collection is supported over Cli transport. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "gce_snapshot": { "required": [ "instance_name", "project_id", "credentials_file", "service_account_email" ], "type": "object", "description": "Manages snapshots for GCE instances. This module manages snapshots for the storage volumes of a GCE compute instance. If there are multiple volumes, each snapshot will be prepended with the disk name", "properties": { "service_account_email": { "type": "string", "description": "GCP service account email for the project where the instance resides" }, "disks": { "type": "string", "description": "Default: all\n\nA list of disks to create snapshots for. If none is provided, all of the volumes will be snapshotted" }, "instance_name": { "type": "string", "description": "The GCE instance to snapshot" }, "state": { "type": "string", "description": "Default: present\n\nWhether a snapshot should be C(present) or C(absent)" }, "snapshot_name": { "type": "string", "description": "The name of the snapshot to manage" }, "credentials_file": { "type": "string", "description": "The path to the credentials file associated with the service account" }, "project_id": { "type": "string", "description": "The GCP project ID to use" } } }, "ce_ospf": { "required": [ "process_id" ], "type": "object", "description": "Manages configuration of an OSPF instance on HUAWEI CloudEngine switches.", "properties": { "addr": { "type": "string", "description": "Specifies the address of the network segment where the interface resides. The value is in dotted decimal notation." }, "area": { "type": "string", "description": "Specifies the area ID. The area with the area-id being 0 is a backbone area. Valid values are a string, formatted as an IP address (i.e. \"0.0.0.0\") or as an integer between 1 and 4294967295." }, "max_load_balance": { "type": "string", "description": "The maximum number of paths for forward packets over multiple paths. Valid value is an integer in the range from 1 to 64." }, "mask": { "type": "string", "description": "IP network wildcard bits in decimal format between 0 and 32." }, "auth_key_id": { "type": "string", "description": "Authentication key id when C(auth_mode) is 'hmac-sha256', 'md5' or 'hmac-md5. Valid value is an integer is in the range from 1 to 255." }, "auth_mode": { "type": "string", "description": "Specifies the authentication type." }, "auth_text_simple": { "type": "string", "description": "Specifies a password for simple authentication. The value is a string of 1 to 8 characters." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "process_id": { "type": "string", "description": "Specifies a process ID. The value is an integer ranging from 1 to 4294967295." }, "nexthop_addr": { "type": "string", "description": "IPv4 address for configure next-hop address's weight. Valid values are a string, formatted as an IP address." }, "auth_text_md5": { "type": "string", "description": "Specifies a password for MD5, HMAC-MD5, or HMAC-SHA256 authentication. The value is a string of 1 to 255 case-sensitive characters, spaces not supported." }, "nexthop_weight": { "type": "string", "description": "Indicates the weight of the next hop. The smaller the value is, the higher the preference of the route is. It is an integer that ranges from 1 to 254." } } }, "win_route": { "required": [ "destination" ], "type": "object", "description": "Add or remove a static route.", "properties": { "metric": { "type": "string", "description": "Default: 1\n\nMetric used by the static route." }, "destination": { "type": "string", "description": "Destination IP address in CIDR format (ip address/prefix length)" }, "gateway": { "type": "string", "description": "The gateway used by the static route.\nIf C(gateway) is not provided it will be set to C(0.0.0.0)." }, "state": { "type": "string", "description": "Default: present\n\nIf present, it adds a network static route. If absent, it removes a network static route." } } }, "nginx_status_facts": { "required": [ "url" ], "type": "object", "description": "Gathers facts from nginx from an URL having C(stub_status) enabled.", "properties": { "url": { "type": "string", "description": "URL of the nginx status." }, "timeout": { "type": "string", "description": "Default: 10\n\nHTTP connection timeout in seconds." } } }, "java_cert": { "required": [ "keystore_pass" ], "type": "object", "description": "This is a wrapper module around keytool. Which can be used to import/remove certificates from a given java keystore.", "properties": { "keystore_create": { "type": "string", "description": "Create keystore if it doesn't exist" }, "cert_alias": { "type": "string", "description": "Imported certificate alias." }, "executable": { "type": "string", "description": "Default: keytool\n\nPath to keytool binary if not used we search in PATH for it." }, "pkcs12_alias": { "type": "string", "description": "Default: 1\n\nAlias in the PKCS12 keystore." }, "cert_port": { "type": "string", "description": "Default: 443\n\nPort to connect to URL. This will be used to create server URL:PORT" }, "pkcs12_password": { "type": "string", "description": "Password for importing from PKCS12 keystore." }, "state": { "type": "string", "description": "Default: present\n\nDefines action which can be either certificate import or removal." }, "keystore_pass": { "type": "string", "description": "Keystore password." }, "cert_path": { "type": "string", "description": "Local path to load certificate from. One of cert_url or cert_path is required to load certificate." }, "cert_url": { "type": "string", "description": "Basic URL to fetch SSL certificate from. One of cert_url or cert_path is required to load certificate." }, "pkcs12_path": { "type": "string", "description": "Local path to load PKCS12 keystore from." }, "keystore_path": { "type": "string", "description": "Path to keystore." } } }, "blockinfile": { "allOf": [ { "allOf": [ { "not": { "required": [ "block", "content" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "path", "dest", "destfile", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "path" ], "type": "object" }, { "required": [ "dest" ], "type": "object" }, { "required": [ "destfile" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module will insert/update/remove a block of multi-line text surrounded by customizable marker lines.", "properties": { "name": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "insertbefore": { "type": "string", "description": "If specified, the block will be inserted before the last match of specified regular expression. A special value is available; C(BOF) for inserting the block at the beginning of the file. If specified regular expression has no matches, the block will be inserted at the end of the file." }, "dest": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "marker_begin": { "type": "string", "description": "Default: BEGIN\n\nThis will be inserted at {mark} in the opening ansible block marker." }, "create": { "description": "Default: no\n\nCreate a new file if it doesn't exist.", "$ref": "#/definitions/ansible_truth" }, "destfile": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "content": { "type": "string", "description": "The text to insert inside the marker lines. If it's missing or an empty string, the block will be removed as if C(state) were specified to C(absent)." }, "insertafter": { "type": "string", "description": "Default: EOF\n\nIf specified, the block will be inserted after the last match of specified regular expression. A special value is available; C(EOF) for inserting the block at the end of the file. If specified regular expression has no matches, C(EOF) will be used instead." }, "state": { "type": "string", "description": "Default: present\n\nWhether the block should be there or not." }, "marker_end": { "type": "string", "description": "Default: END\n\nThis will be inserted at {mark} in the closing ansible block marker." }, "marker": { "type": "string", "description": "Default: # {mark} ANSIBLE MANAGED BLOCK\n\nThe marker line template. \"{mark}\" will be replaced with the values in marker_begin (default=\"BEGIN\") and marker_end (default=\"END\")." }, "path": { "type": "string", "description": "The file to modify.\nBefore 2.3 this option was only usable as I(dest), I(destfile) and I(name)." }, "backup": { "description": "Default: no\n\nCreate a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.", "$ref": "#/definitions/ansible_truth" }, "block": { "type": "string", "description": "The text to insert inside the marker lines. If it's missing or an empty string, the block will be removed as if C(state) were specified to C(absent)." } } }, "pause": { "type": "object", "description": "Pauses playbook execution for a set amount of time, or until a prompt is acknowledged. All parameters are optional. The default behavior is to pause with a prompt.\nYou can use C(ctrl+c) if you wish to advance a pause earlier than it is set to expire or if you need to abort a playbook run entirely. To continue early: press C(ctrl+c) and then C(c). To abort a playbook: press C(ctrl+c) and then C(a).\nThe pause module integrates into async/parallelized playbooks without any special considerations (see also: Rolling Updates). When using pauses with the C(serial) playbook parameter (as in rolling updates) you are only prompted once for the current group of hosts.", "properties": { "seconds": { "type": "string", "description": "A positive number of seconds to pause for." }, "prompt": { "type": "string", "description": "Optional text to use for the prompt message." }, "minutes": { "type": "string", "description": "A positive number of minutes to pause for." } } }, "nxos_template": { "type": "object", "description": "Manages network device configurations over SSH or NXAPI. This module allows implementers to work with the device running-config. It provides a way to push a set of commands onto a network device by evaluating the current running-config and only pushing configuration commands that are not already configured. The config source can be a set of commands or a template.", "properties": { "src": { "type": "string", "description": "The path to the config source. The source can be either a file with config or a template that will be merged during runtime. By default the task will search for the source file in role or playbook root folder in templates directory." }, "config": { "type": "string", "description": "The module, by default, will connect to the remote device and retrieve the current running-config to use as a base for comparing against the contents of source. There are times when it is not desirable to have the task get the current running-config for every task in a playbook. The I(config) argument allows the implementer to pass in the configuration to use as the base config for comparison." }, "force": { "type": "string", "description": "The force argument instructs the module to not consider the current devices running-config. When set to true, this will cause the module to push the contents of I(src) into the device without first checking if already configured." }, "backup": { "type": "string", "description": "When this argument is configured true, the module will backup the running-config from the node prior to making any changes. The backup file will be written to backup_{{ hostname }} in the root of the playbook directory." }, "include_defaults": { "type": "string", "description": "The module, by default, will collect the current device running-config to use as a base for comparisons to the commands in I(src). Setting this value to true will cause the module to issue the command C(show running-config all) to include all device settings." } } }, "eos_l3_interface": { "type": "object", "description": "This module provides declarative management of L3 interfaces on Arista EOS network devices.", "properties": { "aggregate": { "type": "array", "description": "List of L3 interfaces definitions. Each of the entry in aggregate list should define name of interface C(name) and a optional C(ipv4) or C(ipv6) address." }, "state": { "type": "string", "description": "Default: present\n\nState of the L3 interface configuration. It indicates if the configuration should be present or absent on remote device." }, "ipv6": { "type": "string", "description": "IPv6 address to be set for the L3 interface mentioned in I(name) option. The address format is /, the mask is number in range 0-128 eg. fd5d:12c9:2201:1::1/64" }, "ipv4": { "type": "string", "description": "IPv4 address to be set for the L3 interface mentioned in I(name) option. The address format is /, the mask is number in range 0-32 eg. 192.168.0.1/24" }, "name": { "type": "string", "description": "Name of the L3 interface to be configured eg. ethernet1" } } }, "bigiq_regkey_license": { "required": [ "license_key", "regkey_pool" ], "type": "object", "description": "Manages licenses in a BIG-IQ registration key pool.", "properties": { "license_key": { "type": "string", "description": "The license key to put in the pool." }, "regkey_pool": { "type": "string", "description": "The registration key pool that you want to place the license in.\nYou must be mindful to name your registration pools unique names. While BIG-IQ does not require this, this module does. If you do not do this, the behavior of the module is undefined and you may end up putting licenses in the wrong registration key pool." }, "accept_eula": { "type": "string", "description": "A key that signifies that you accept the F5 EULA for this license.\nA copy of the EULA can be found here https://askf5.f5.com/csp/article/K12902\nThis is required when C(state) is C(present)." }, "description": { "type": "string", "description": "Description of the license." }, "state": { "type": "string", "description": "Default: present\n\nThe state of the regkey license in the pool on the system.\nWhen C(present), guarantees that the license exists in the pool.\nWhen C(absent), removes the license from the pool." } } }, "eos_l2_interface": { "allOf": [ { "allOf": [ { "not": { "required": [ "trunk_allowed_vlans", "trunk_vlans" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module provides declarative management of L2 interfaces on Arista EOS network devices.", "properties": { "native_vlan": { "type": "string", "description": "Native VLAN to be configured in trunk port. If C(mode=trunk), used as the trunk native VLAN ID." }, "access_vlan": { "type": "string", "description": "Configure given VLAN in access port. If C(mode=access), used as the access VLAN ID." }, "name": { "type": "string", "description": "Name of the interface" }, "trunk_vlans": { "type": "array", "description": "List of allowed VLANs in a given trunk port. If C(mode=trunk), these are the ONLY VLANs that will be configured on the trunk, i.e. C(2-10,15)." }, "aggregate": { "type": "array", "description": "List of Layer-2 interface definitions." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the Layer-2 Interface configuration." }, "trunk_allowed_vlans": { "type": "array", "description": "List of allowed VLANs in a given trunk port. If C(mode=trunk), these are the ONLY VLANs that will be configured on the trunk, i.e. C(2-10,15)." }, "mode": { "type": "string", "description": "Mode in which interface needs to be configured." }, "interface": { "type": "string", "description": "Name of the interface" } } }, "ipa_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify and delete group within IPA server", "properties": { "group": { "type": "array", "description": "List of group names assigned to this group.\nIf an empty list is passed all groups will be removed from this group.\nIf option is omitted assigned groups will not be checked or changed.\nGroups that are already assigned but not passed will be removed." }, "cn": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." }, "user": { "type": "array", "description": "List of user names assigned to this group.\nIf an empty list is passed all users will be removed from this group.\nIf option is omitted assigned users will not be checked or changed.\nUsers that are already assigned but not passed will be removed." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "gidnumber": { "type": "string", "description": "GID (use this option to set it manually)." }, "external": { "type": "string", "description": "Allow adding external non-IPA members from trusted domains." }, "nonposix": { "type": "string", "description": "Create as a non-POSIX group." }, "name": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." } } }, "panos_lic": { "required": [ "ip_address", "password", "auth_code" ], "type": "object", "description": "Apply an authcode to a device.\nThe authcode should have been previously registered on the Palo Alto Networks support portal.\nThe device should have Internet access.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "force": { "type": "string", "description": "Default: false\n\nwhether to apply authcode even if device is already licensed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" }, "auth_code": { "type": "string", "description": "authcode to be applied" } } }, "win_package": { "allOf": [ { "allOf": [ { "not": { "required": [ "state", "ensure" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "product_id", "productid" ], "type": "object" } }, { "oneOf": [ { "required": [ "product_id" ], "type": "object" }, { "required": [ "productid" ], "type": "object" } ] } ] } ], "type": "object", "description": "Installs or uninstalls a package.\nOptionally uses a product_id to check if the package needs installing. You can find product ids for installed programs in the windows registry either in C(HKLM:Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall) or for 32 bit programs C(HKLM:Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall)", "properties": { "product_id": { "type": "string", "description": "product id of the installed package (used for checking if already installed)\nYou can find product ids for installed programs in the windows registry either in C(HKLM:Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall) or for 32 bit programs C(HKLM:Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall)'" }, "user_password": { "type": "string", "description": "Password of an account with access to the package if its located on a file share. Only needed if the winrm user doesn't have access to the package. Also specify user_name for this to function properly." }, "state": { "type": "string", "description": "Default: present\n\nInstall or Uninstall" }, "ensure": { "type": "string", "description": "Default: present\n\nInstall or Uninstall" }, "arguments": { "type": "string", "description": "Any arguments the installer needs" }, "path": { "type": "string", "description": "Location of the package to be installed (either on file system, network share or url)" }, "productid": { "type": "string", "description": "product id of the installed package (used for checking if already installed)\nYou can find product ids for installed programs in the windows registry either in C(HKLM:Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall) or for 32 bit programs C(HKLM:Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall)'" }, "user_name": { "type": "string", "description": "Username of an account with access to the package if its located on a file share. Only needed if the winrm user doesn't have access to the package. Also specify user_password for this to function properly." }, "name": { "type": "string", "description": "Name of the package, if name isn't specified the path will be used for log messages" } } }, "ce_vxlan_tunnel": { "type": "object", "description": "This module offers the ability to set the VNI and mapped to the BD, and configure an ingress replication list on HUAWEI CloudEngine devices.", "properties": { "vni_id": { "type": "string", "description": "Specifies a VXLAN network identifier (VNI) ID. The value is an integer ranging from 1 to 16000000." }, "nve_mode": { "type": "string", "description": "Specifies the working mode of an NVE interface." }, "source_ip": { "type": "string", "description": "Specifies an IP address for a source VTEP. The value is in dotted decimal notation." }, "bridge_domain_id": { "type": "string", "description": "Specifies a bridge domain ID. The value is an integer ranging from 1 to 16777215." }, "peer_list_ip": { "type": "string", "description": "Specifies the IP address of a remote VXLAN tunnel endpoints (VTEP). The value is in dotted decimal notation." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "nve_name": { "type": "string", "description": "Specifies the number of an NVE interface. The value ranges from 1 to 2." }, "protocol_type": { "type": "string", "description": "The operation type of routing protocol." } } }, "nxos_pim_rp_address": { "required": [ "rp_address" ], "type": "object", "description": "Manages configuration of an Protocol Independent Multicast (PIM) static rendezvous point (RP) address instance.", "properties": { "route_map": { "type": "string", "description": "Route map policy for static RP. Valid values are route-map policy names." }, "prefix_list": { "type": "string", "description": "Prefix list policy for static RP. Valid values are prefix-list policy names." }, "rp_address": { "type": "string", "description": "Configures a Protocol Independent Multicast (PIM) static rendezvous point (RP) address. Valid values are unicast addresses." }, "group_list": { "type": "string", "description": "Group range for static RP. Valid values are multicast addresses." }, "bidir": { "type": "string", "description": "Group range is treated in PIM bidirectional mode." } } }, "cnos_template": { "required": [ "commandfile" ], "type": "object", "description": "This module allows you to work with the running configuration of a switch. It provides a way to execute a set of CNOS commands on a switch by evaluating the current running configuration and executing the commands only if the specific settings have not been already configured. The configuration source can be a set of commands or a template written in the Jinja2 templating language. This module uses SSH to manage network device configuration. The results of the operation will be placed in a directory named 'results' that must be created by the user in their local directory to where the playbook is run. For more information about this module from Lenovo and customizing it usage for your use cases, please visit U(http://systemx.lenovofiles.com/help/index.jsp?topic=%2Fcom.lenovo.switchmgt.ansible.doc%2Fcnos_template.html)", "properties": { "commandfile": { "type": "string", "description": "This specifies the path to the CNOS command file which needs to be applied. This usually comes from the commands folder. Generally this file is the output of the variables applied on a template file. So this command is preceded by a template module. Note The command file must contain the Ansible keyword {{ inventory_hostname }} in its filename to ensure that the command file is unique for each switch and condition. If this is omitted, the command file will be overwritten during iteration. For example, commandfile=./commands/clos_leaf_bgp_{{ inventory_hostname }}_commands.txt" } } }, "pulp_repo": { "required": [ "relative_url", "name" ], "type": "object", "description": "Add or remove Pulp repos from a remote host.", "properties": { "feed": { "type": "string", "description": "Upstream feed URL to receive updates from." }, "url_password": { "type": "string", "description": "The password for use in HTTP basic authentication to the pulp API. If the I(url_username) parameter is not specified, the I(url_password) parameter will not be used." }, "repo_type": { "type": "string", "description": "Default: rpm\n\nRepo plugin type to use (i.e. C(rpm), C(docker))." }, "pulp_host": { "type": "string", "description": "Default: http://127.0.0.1\n\nURL of the pulp server to connect to." }, "publish_distributor": { "type": "string", "description": "Distributor to use when state is C(publish). The default is to publish all distributors." }, "name": { "type": "string", "description": "Name of the repo to add or remove. This correlates to repo-id in Pulp." }, "relative_url": { "type": "string", "description": "Relative URL for the local repository." }, "proxy_host": { "type": "string", "description": "Proxy url setting for the pulp repository importer. This is in the format scheme://host." }, "force_basic_auth": { "type": "string", "description": "Default: no\n\nhttplib2, the library used by the M(uri) module only sends authentication information when a webservice responds to an initial request with a 401 status. Since some basic auth services do not properly send a 401, logins will fail. This option forces the sending of the Basic authentication header upon initial request." }, "importer_ssl_client_key": { "type": "string", "description": "Private key to the certificate specified in I(importer_ssl_client_cert), assuming it is not included in the certificate file itself. This can be the file content or the path to the file." }, "importer_ssl_client_cert": { "type": "string", "description": "Certificate used as the client certificate when synchronizing the repository. This is used to communicate authentication information to the feed source. The value to this option must be the full path to the certificate. The specified file may be the certificate itself or a single file containing both the certificate and private key. This can be the file content or the path to the file." }, "proxy_port": { "type": "string", "description": "Proxy port setting for the pulp repository importer." }, "state": { "type": "string", "description": "Default: present\n\nThe repo state. A state of C(sync) will queue a sync of the repo. This is asynchronous but not delayed like a scheduled sync. A state of C(publish) will use the repository's distributor to publish the content." }, "serve_https": { "type": "string", "description": "Default: True\n\nMake the repo available over HTTPS." }, "serve_http": { "type": "string", "description": "Make the repo available over HTTP." }, "url_username": { "type": "string", "description": "The username for use in HTTP basic authentication to the pulp API." }, "wait_for_completion": { "type": "string", "description": "Default: no\n\nWait for asynchronous tasks to complete before returning." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "add_export_distributor": { "type": "string", "description": "Whether or not to add the export distributor to new C(rpm) repositories." }, "importer_ssl_ca_cert": { "type": "string", "description": "CA certificate string used to validate the feed source SSL certificate. This can be the file content or the path to the file." } } }, "ordnance_config": { "allOf": [ { "allOf": [ { "not": { "required": [ "lines", "commands" ], "type": "object" } } ] } ], "type": "object", "description": "Ordnance router configurations use a simple block indent file syntax for segmenting configuration into sections. This module provides an implementation for working with these configuration sections in a deterministic way.", "properties": { "multiline_delimiter": { "type": "string", "description": "Default: @\n\nThis argument is used when pushing a multiline configuration element to the Ordnance router. It specifies the character to use as the delimiting character. This only applies to the configuration action" }, "src": { "type": "string", "description": "Specifies the source path to the file that contains the configuration or configuration template to load. The path to the source file can either be the full path on the Ansible control host or a relative path from the playbook or role root directory. This argument is mutually exclusive with I(lines), I(parents)." }, "commands": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "config": { "type": "string", "description": "The C(config) argument allows the playbook designer to supply the base configuration to be used to validate configuration changes necessary. If this argument is provided, the module will not download the running-config from the remote node." }, "after": { "type": "string", "description": "The ordered set of commands to append to the end of the command stack if a change needs to be made. Just like with I(before) this allows the playbook designer to append a set of commands to be executed after the command set." }, "lines": { "type": "string", "description": "The ordered set of commands that should be configured in the section. The commands must be the exact same commands as found in the device running-config. Be sure to note the configuration command syntax as some commands are automatically modified by the device config parser." }, "replace": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the configuration on the device. If the replace argument is set to I(line) then the modified lines are pushed to the device in configuration mode. If the replace argument is set to I(block) then the entire command block is pushed to the device in configuration mode if any line is not correct." }, "parents": { "type": "string", "description": "The ordered set of parents that uniquely identify the section or hierarchy the commands should be checked against. If the parents argument is omitted, the commands are checked against the set of top level or global commands." }, "defaults": { "type": "string", "description": "This argument specifies whether or not to collect all defaults when getting the remote device running config. When enabled, the module will get the current config by issuing the command C(show running-config all)." }, "save": { "type": "string", "description": "The C(save) argument instructs the module to save the running- config to the startup-config at the conclusion of the module running. If check mode is specified, this argument is ignored." }, "backup": { "type": "string", "description": "This argument will cause the module to create a full backup of the current C(running-config) from the remote device before any changes are made. The backup file is written to the C(backup) folder in the playbook root directory. If the directory does not exist, it is created." }, "match": { "type": "string", "description": "Default: line\n\nInstructs the module on the way to perform the matching of the set of commands against the current device config. If match is set to I(line), commands are matched line by line. If match is set to I(strict), command lines are matched with respect to position. If match is set to I(exact), command lines must be an equal match. Finally, if match is set to I(none), the module will not attempt to compare the source configuration with the running configuration on the remote device." }, "before": { "type": "string", "description": "The ordered set of commands to push on to the command stack if a change needs to be made. This allows the playbook designer the opportunity to perform configuration commands prior to pushing any changes without affecting how the set of commands are matched against the system." } } }, "twilio": { "required": [ "from_number", "msg", "auth_token", "to_number", "account_sid" ], "type": "object", "description": "Sends a text message to a phone number through the Twilio messaging API.", "properties": { "auth_token": { "type": "string", "description": "user's Twilio authentication token" }, "to_number": { "type": "string", "description": "one or more phone numbers to send the text message to, format +15551112222" }, "account_sid": { "type": "string", "description": "user's Twilio account token found on the account page" }, "from_number": { "type": "string", "description": "the Twilio number to send the text message from, format +15551112222" }, "msg": { "type": "string", "description": "the body of the text message" }, "media_url": { "type": "string", "description": "a URL with a picture, video or sound clip to send with an MMS (multimedia message) instead of a plain SMS" } } }, "ce_stp": { "type": "object", "description": "Manages STP configurations on HUAWEI CloudEngine switches.", "properties": { "tc_protection_interval": { "type": "string", "description": "Set the time the MSTP device takes to handle the maximum number of TC BPDUs and immediately refresh forwarding entries. The value is an integer ranging from 1 to 600, in seconds." }, "loop_protection": { "type": "string", "description": "Enable loop protection on the current port." }, "tc_protection_threshold": { "type": "string", "description": "Set the maximum number of TC BPDUs that the MSTP can handle. The value is an integer ranging from 1 to 255. The default value is 1 on the switch." }, "stp_converge": { "type": "string", "description": "STP convergence mode. Fast means set STP aging mode to Fast. Normal means set STP aging mode to Normal." }, "stp_mode": { "type": "string", "description": "Set an operation mode for the current MSTP process. The mode can be STP, RSTP, or MSTP." }, "bpdu_protection": { "type": "string", "description": "Configure BPDU protection on an edge port. This function prevents network flapping caused by attack packets." }, "root_protection": { "type": "string", "description": "Enable root protection on the current port." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "bpdu_filter": { "type": "string", "description": "Specify a port as a BPDU filter port." }, "stp_enable": { "type": "string", "description": "Enable or disable STP on a switch." }, "interface": { "type": "string", "description": "Interface name. If the value is C(all), will apply configuration to all interfaces. if the value is a special name, only support input the full name." }, "tc_protection": { "type": "string", "description": "Configure the TC BPDU protection function for an MSTP process." }, "edged_port": { "type": "string", "description": "Set the current port as an edge port." }, "cost": { "type": "string", "description": "Set the path cost of the current port. The default instance is 0." } } }, "os_server_action": { "required": [ "server" ], "type": "object", "description": "Perform server actions on an existing compute instance from OpenStack. This module does not return any data other than changed true/false. When I(action) is 'rebuild', then I(image) parameter is required.", "properties": { "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "image": { "type": "string", "description": "Image the server should be rebuilt with" }, "server": { "type": "string", "description": "Name or ID of the instance" }, "timeout": { "type": "string", "description": "Default: 180\n\nThe amount of time the module should wait for the instance to perform the requested action." }, "action": { "type": "string", "description": "Default: present\n\nPerform the given action. The lock and unlock actions always return changed as the servers API does not provide lock status." }, "wait": { "type": "string", "description": "Default: yes\n\nIf the module should wait for the instance action to be performed." } } }, "pagerduty": { "allOf": [ { "allOf": [ { "not": { "required": [ "service", "services" ], "type": "object" } } ] } ], "type": "object", "description": "This module will let you create PagerDuty maintenance windows", "properties": { "name": { "type": "string", "description": "PagerDuty unique subdomain." }, "service": { "type": "string", "description": "A comma separated list of PagerDuty service IDs." }, "passwd": { "type": "string", "description": "PagerDuty user password." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "token": { "type": "string", "description": "A pagerduty token, generated on the pagerduty site. Can be used instead of user/passwd combination." }, "hours": { "type": "string", "description": "Default: 1\n\nLength of maintenance window in hours." }, "state": { "type": "string", "description": "Create a maintenance window or get a list of ongoing windows." }, "user": { "type": "string", "description": "PagerDuty user ID." }, "services": { "type": "string", "description": "A comma separated list of PagerDuty service IDs." }, "requester_id": { "type": "string", "description": "ID of user making the request. Only needed when using a token and creating a maintenance_window." }, "minutes": { "type": "string", "description": "Maintenance window in minutes (this is added to the hours)." }, "desc": { "type": "string", "description": "Default: Created by Ansible\n\nShort description of maintenance window." } } }, "pkgng": { "required": [ "name" ], "type": "object", "description": "Manage binary packages for FreeBSD using 'pkgng' which is available in versions after 9.0.", "properties": { "chroot": { "type": "string", "description": "Pkg will chroot in the specified environment.\nCan not be used together with I(rootdir) or I(jail) options." }, "name": { "type": "string", "description": "Name or list of names of packages to install/remove." }, "cached": { "type": "string", "description": "Use local package base instead of fetching an updated one." }, "pkgsite": { "type": "string", "description": "For pkgng versions before 1.1.4, specify packagesite to use for downloading packages. If not specified, use settings from C(/usr/local/etc/pkg.conf).\nFor newer pkgng versions, specify a the name of a repository configured in C(/usr/local/etc/pkg/repos)." }, "rootdir": { "type": "string", "description": "For pkgng versions 1.5 and later, pkg will install all packages within the specified root directory.\nCan not be used together with I(chroot) or I(jail) options." }, "state": { "type": "string", "description": "Default: present\n\nState of the package." }, "autoremove": { "type": "string", "description": "Remove automatically installed packages which are no longer needed." }, "jail": { "type": "string", "description": "Pkg will execute in the given jail name or id.\nCan not be used together with I(chroot) or I(rootdir) options." }, "annotation": { "type": "string", "description": "A comma-separated list of keyvalue-pairs of the form C(<+/-/:>[=]). A C(+) denotes adding an annotation, a C(-) denotes removing an annotation, and C(:) denotes modifying an annotation. If setting or modifying annotations, a value must be provided." } } }, "letsencrypt": { "required": [ "dest", "account_key", "csr" ], "type": "object", "description": "Create and renew SSL certificates with Let's Encrypt. Let’s Encrypt is a free, automated, and open certificate authority (CA), run for the public’s benefit. For details see U(https://letsencrypt.org). The current implementation supports the http-01, tls-sni-02 and dns-01 challenges.\nTo use this module, it has to be executed at least twice. Either as two different tasks in the same run or during multiple runs.\nBetween these two tasks you have to fulfill the required steps for the choosen challenge by whatever means necessary. For http-01 that means creating the necessary challenge file on the destination webserver. For dns-01 the necessary dns record has to be created. tls-sni-02 requires you to create a SSL certificate with the appropriate subjectAlternativeNames. It is I(not) the responsibility of this module to perform these steps.\nFor details on how to fulfill these challenges, you might have to read through U(https://tools.ietf.org/html/draft-ietf-acme-acme-02#section-7)\nAlthough the defaults are choosen so that the module can be used with the Let's Encrypt CA, the module can be used with any service using the ACME protocol.", "properties": { "acme_directory": { "type": "string", "description": "Default: https://acme-staging.api.letsencrypt.org/directory\n\nThe ACME directory to use. This is the entry point URL to access CA server API.\nFor safety reasons the default is set to the Let's Encrypt staging server. This will create technically correct, but untrusted certificates." }, "account_email": { "type": "string", "description": "The email address associated with this account.\nIt will be used for certificate expiration warnings." }, "dest": { "type": "string", "description": "The destination file for the certificate." }, "remaining_days": { "type": "string", "description": "Default: 10\n\nThe number of days the certificate must have left being valid before it will be renewed." }, "challenge": { "type": "string", "description": "Default: http-01\n\nThe challenge to be performed." }, "agreement": { "type": "string", "description": "Default: https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf\n\nURI to a terms of service document you agree to when using the ACME service at C(acme_directory)." }, "account_key": { "type": "string", "description": "File containing the the Let's Encrypt account RSA key.\nCan be created with C(openssl rsa ...)." }, "data": { "type": "string", "description": "The data to validate ongoing challenges.\nThe value that must be used here will be provided by a previous use of this module." }, "csr": { "type": "string", "description": "File containing the CSR for the new certificate.\nCan be created with C(openssl csr ...).\nThe CSR may contain multiple Subject Alternate Names, but each one will lead to an individual challenge that must be fulfilled for the CSR to be signed." } } }, "nexmo": { "required": [ "src", "dest", "api_secret", "api_key", "msg" ], "type": "object", "description": "Send a SMS message via nexmo", "properties": { "src": { "type": "string", "description": "Nexmo Number to send from" }, "dest": { "type": "string", "description": "Phone number(s) to send SMS message to" }, "api_secret": { "type": "string", "description": "Nexmo API Secret" }, "msg": { "type": "string", "description": "Message to text to send. Messages longer than 160 characters will be split into multiple messages" }, "api_key": { "type": "string", "description": "Nexmo API Key" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." } } }, "dimensiondata_network": { "required": [ "name" ], "type": "object", "description": "Create, update, and delete MCP 1.0 & 2.0 networks", "properties": { "service_plan": { "type": "string", "description": "Default: ESSENTIALS\n\nThe service plan, either \"ESSENTIALS\" or \"ADVANCED\".\nMCP 2.0 Only." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "name": { "type": "string", "description": "The name of the network domain to create." }, "description": { "type": "string", "description": "Additional description of the network domain." } } }, "debconf": { "allOf": [ { "allOf": [ { "not": { "required": [ "value", "answer" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "question", "setting", "selection" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "pkg" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "pkg" ], "type": "object" } ] } ] } ], "type": "object", "description": "Configure a .deb package using debconf-set-selections. Or just query existing selections.", "properties": { "selection": { "type": "string", "description": "A debconf configuration setting" }, "name": { "type": "string", "description": "Name of package to configure." }, "question": { "type": "string", "description": "A debconf configuration setting" }, "value": { "type": "string", "description": "Value to set the configuration to" }, "vtype": { "type": "string", "description": "The type of the value supplied.\nC(seen) was added in 2.2." }, "pkg": { "type": "string", "description": "Name of package to configure." }, "unseen": { "type": "string", "description": "Do not set 'seen' flag when pre-seeding" }, "answer": { "type": "string", "description": "Value to set the configuration to" }, "setting": { "type": "string", "description": "A debconf configuration setting" } } }, "panos_pg": { "required": [ "pg_name", "password", "ip_address" ], "type": "object", "description": "Create a security profile group", "properties": { "username": { "type": "string", "description": "Default: admin\n\nusername for authentication" }, "wildfire": { "type": "string", "description": "Default: None\n\nname of the wildfire analysis profile" }, "data_filtering": { "type": "string", "description": "Default: None\n\nname of the data filtering profile" }, "url_filtering": { "type": "string", "description": "Default: None\n\nname of the url filtering profile" }, "pg_name": { "type": "string", "description": "name of the security profile group" }, "vulnerability": { "type": "string", "description": "Default: None\n\nname of the vulnerability profile" }, "spyware": { "type": "string", "description": "Default: None\n\nname of the spyware profile" }, "file_blocking": { "type": "string", "description": "Default: None\n\nname of the file blocking profile" }, "virus": { "type": "string", "description": "Default: None\n\nname of the anti-virus profile" }, "commit": { "type": "string", "description": "Default: True\n\ncommit if changed" }, "password": { "type": "string", "description": "password for authentication" }, "ip_address": { "type": "string", "description": "IP address (or hostname) of PAN-OS device" } } }, "ovirt_networks_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV networks.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search network starting with string vlan1 use: name=vlan1*" } } }, "cl_bond": { "required": [ "name", "slaves" ], "type": "object", "description": "Configures a bond interface on Cumulus Linux To configure a bridge port use the cl_bridge module. To configure any other type of interface use the cl_interface module. Follow the guidelines for bonding found in the Cumulus User Guide at U(http://docs.cumulusnetworks.com).", "properties": { "clag_id": { "type": "string", "description": "Specify a unique clag_id for every dual connected bond on each peer switch. The value must be between 1 and 65535 and must be the same on both peer switches in order for the bond to be considered dual-connected." }, "lacp_rate": { "type": "string", "description": "Default: 1\n\nThe lacp rate." }, "xmit_hash_policy": { "type": "string", "description": "Default: layer3+4\n\nTransmit load balancing algorithm. As of Cumulus Linux 2.5 only I(layer3+4) policy is supported." }, "mstpctl_portadminedge": { "type": "string", "description": "Enables admin edge port." }, "min_links": { "type": "string", "description": "Default: 1\n\nMinimum number of links." }, "alias_name": { "type": "string", "description": "Description of the port." }, "mstpctl_bpduguard": { "type": "string", "description": "Enables BPDU Guard on a port in vlan-aware mode." }, "ipv4": { "type": "array", "description": "List of IPv4 addresses to configure on the interface. In the form I(X.X.X.X/YY)." }, "ipv6": { "type": "array", "description": "List of IPv6 addresses to configure on the interface. In the form I(X:X:X::X/YYY)." }, "vids": { "type": "string", "description": "In vlan-aware mode, lists VLANs defined under the interface." }, "mstpctl_portnetwork": { "type": "string", "description": "Enables bridge assurance in vlan-aware mode." }, "location": { "type": "string", "description": "Default: ['/etc/network/interfaces.d']\n\nInterface directory location." }, "miimon": { "type": "string", "description": "Default: 100\n\nThe mii link monitoring interval." }, "virtual_mac": { "type": "string", "description": "Define Ethernet mac associated with Cumulus Linux VRR feature." }, "lacp_bypass_all_active": { "type": "string", "description": "Activate all interfaces for bypass. It is recommended to configure all_active instead of using bypass_priority." }, "lacp_bypass_period": { "type": "string", "description": "Period for enabling LACP bypass. Max value is 900." }, "lacp_bypass_allow": { "type": "string", "description": "Enable LACP bypass." }, "lacp_bypass_priority": { "type": "array", "description": "List of ports and priorities. Example I(\"swp1=10, swp2=20\")." }, "addr_method": { "type": "string", "description": "Configures the port to use DHCP. To enable this feature use the option I(dhcp)." }, "name": { "type": "string", "description": "Name of the interface." }, "virtual_ip": { "type": "string", "description": "Define IPv4 virtual IP used by the Cumulus Linux VRR feature." }, "mtu": { "type": "string", "description": "Set MTU. Configure Jumbo Frame by setting MTU to I(9000)." }, "pvid": { "type": "string", "description": "In vlan-aware mode, defines vlan that is the untagged vlan." }, "mode": { "type": "string", "description": "Default: 802.3ad\n\nThe bond mode, as of Cumulus Linux 2.5 only LACP bond mode is supported." }, "slaves": { "type": "string", "description": "Bond members." } } }, "tower_job_template": { "required": [ "job_type", "playbook", "name", "project" ], "type": "object", "description": "Create, update, or destroy Ansible Tower job templates. See U(https://www.ansible.com/tower) for an overview.", "properties": { "network_credential": { "type": "string", "description": "The network_credential to use for the job_template." }, "job_type": { "type": "string", "description": "The job_type to use for the job_template." }, "ask_job_type": { "type": "string", "description": "Prompt user for job type on launch." }, "skip_tags": { "type": "string", "description": "The skip_tags to use for the job_template." }, "playbook": { "type": "string", "description": "Playbook to use for the job_template." }, "job_tags": { "type": "string", "description": "The job_tags to use for the job_template." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "inventory": { "type": "string", "description": "Inventory to use for the job_template." }, "limit": { "type": "string", "description": "A host pattern to further constrain the list of hosts managed or affected by the playbook" }, "forks": { "type": "string", "description": "The number of parallel or simultaneous processes to use while executing the playbook." }, "cloud_credential": { "type": "string", "description": "Cloud_credential to use for the job_template." }, "become_enabled": { "type": "string", "description": "Should become_enabled." }, "description": { "type": "string", "description": "Description to use for the job_template." }, "ask_inventory": { "type": "string", "description": "Propmt user for inventory on launch." }, "host_config_key": { "type": "string", "description": "Allow provisioning callbacks using this host config key." }, "machine_credential": { "type": "string", "description": "Machine_credential to use for the job_template." }, "ask_credential": { "type": "string", "description": "Prompt user for credential on launch." }, "name": { "type": "string", "description": "Name to use for the job_template." }, "verbosity": { "type": "string", "description": "Control the output level Ansible produces as the playbook runs." }, "project": { "type": "string", "description": "Project to use for the job_template." }, "ask_extra_vars": { "type": "string", "description": "Prompt user for extra_vars on launch." }, "extra_vars_path": { "type": "string", "description": "Path to the extra_vars yaml file." }, "ask_tags": { "type": "string", "description": "Prompt user for job tags on launch." } } }, "tower_label": { "required": [ "organization", "name" ], "type": "object", "description": "Create, update, or destroy Ansible Tower labels. See U(https://www.ansible.com/tower) for an overview.", "properties": { "organization": { "type": "string", "description": "Organization the label should be applied to." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource." }, "name": { "type": "string", "description": "Name to use for the label." } } }, "vmware_host_firewall_manager": { "type": "object", "description": "This module can be used to manage firewall configurations about an ESXi host when ESXi hostname or Cluster name is given.", "properties": { "cluster_name": { "type": "string", "description": "Name of the cluster.\nFirewall settings are applied to every ESXi host system in given cluster.\nIf C(esxi_hostname) is not given, this parameter is required." }, "rules": { "type": "string", "description": "A list of Rule set which needs to be managed.\nEach member of list is rule set name and state to be set the rule.\nBoth rule name and rule state are required parameters.\nPlease see examples for more information." }, "esxi_hostname": { "type": "string", "description": "ESXi hostname.\nFirewall settings are applied to this ESXi host system.\nIf C(cluster_name) is not given, this parameter is required." } } }, "win_wait_for": { "type": "object", "description": "You can wait for a set amount of time C(timeout), this is the default if nothing is specified.\nWaiting for a port to become available is useful for when services are not immediately available after their init scripts return which is true of certain Java application servers.\nYou can wait for a file to exist or not exist on the filesystem.\nThis module can also be used to wait for a regex match string to be present in a file.\nYou can wait for active connections to be closed before continuing on a local port.", "properties": { "state": { "type": "string", "description": "Default: started\n\nWhen checking a port, C(started) will ensure the port is open, C(stopped) will check that is it closed and C(drained) will check for active connections.\nWhen checking for a file or a search string C(present) or C(started) will ensure that the file or string is present, C(absent) will check that the file or search string is absent or removed." }, "connect_timeout": { "type": "string", "description": "Default: 5\n\nThe maximum number of seconds to wait for a connection to happen before closing and retrying." }, "delay": { "type": "string", "description": "The number of seconds to wait before starting to poll." }, "host": { "type": "string", "description": "Default: 127.0.0.1\n\nA resolvable hostname or IP address to wait for.\nIf C(state=drained) then it will only check for connections on the IP specified, you can use '0.0.0.0' to use all host IPs." }, "sleep": { "type": "string", "description": "Default: 1\n\nNumber of seconds to sleep between checks." }, "timeout": { "type": "string", "description": "Default: 300\n\nThe maximum number of seconds to wait for." }, "exclude_hosts": { "type": "string", "description": "The list of hosts or IPs to ignore when looking for active TCP connections when C(state=drained)." }, "search_regex": { "type": "string", "description": "Can be used to match a string in a file.\nIf C(state) is present or started then it will wait until the regex matches.\nIf C(state) is absent then it will wait until the regex does not match.\nDefaults to a multiline regex." }, "path": { "type": "string", "description": "The path to a file on the filesystem to check.\nIf C(state) is present or started then it will wait until the file exists.\nIf C(state) is absent then it will wait until the file does not exist." }, "port": { "type": "string", "description": "The port number to poll on C(host)." } } }, "na_cdot_user": { "required": [ "vserver", "application", "state", "name", "authentication_method" ], "type": "object", "description": "Create or destroy users.", "properties": { "name": { "type": "string", "description": "The name of the user to manage." }, "authentication_method": { "type": "string", "description": "Authentication method for the application.\nNot all authentication methods are valid for an application.\nValid authentication methods for each application are as denoted in I(authentication_choices_description).\npassword for console application\npassword, domain, nsswitch, cert for http application.\npassword, domain, nsswitch, cert for ontapi application.\ncommunity for snmp application (when creating SNMPv1 and SNMPv2 users).\nusm and community for snmp application (when creating SNMPv3 users).\npassword for sp application.\npassword for rsh application.\npassword for telnet application.\npassword, publickey, domain, nsswitch for ssh application." }, "vserver": { "type": "string", "description": "The name of the vserver to use." }, "application": { "type": "string", "description": "Applications to grant access to." }, "state": { "type": "string", "description": "Whether the specified user should exist or not." }, "role_name": { "type": "string", "description": "The name of the role. Required when C(state=present)" }, "set_password": { "type": "string", "description": "Default: None\n\nPassword for the user account.\nIt is ignored for creating snmp users, but is required for creating non-snmp users.\nFor an existing user, this value will be used as the new password." } } }, "ce_switchport": { "required": [ "interface" ], "type": "object", "description": "Manages Layer 2 switchport interfaces on HUAWEI CloudEngine switches.", "properties": { "native_vlan": { "type": "string", "description": "If C(mode=trunk), used as the trunk native VLAN ID, in the range from 1 to 4094." }, "access_vlan": { "type": "string", "description": "If C(mode=access), used as the access VLAN ID, in the range from 1 to 4094." }, "trunk_vlans": { "type": "string", "description": "If C(mode=trunk), used as the VLAN range to ADD or REMOVE from the trunk, such as 2-10 or 2,5,10-15, etc." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "mode": { "type": "string", "description": "The link type of an interface." }, "interface": { "type": "string", "description": "Full name of the interface, i.e. 40GE1/0/22." } } }, "atomic_host": { "allOf": [ { "allOf": [ { "not": { "required": [ "revision", "version" ], "type": "object" } } ] } ], "type": "object", "description": "Manage the atomic host platform\nRebooting of Atomic host platform should be done outside this module", "properties": { "version": { "type": "string", "description": "Default: latest\n\nThe version number of the atomic host to be deployed. Providing ```latest``` will upgrade to the latest available version." }, "revision": { "type": "string", "description": "Default: latest\n\nThe version number of the atomic host to be deployed. Providing ```latest``` will upgrade to the latest available version." } } }, "zabbix_group": { "allOf": [ { "allOf": [ { "not": { "required": [ "server_url", "url" ], "type": "object" } }, { "oneOf": [ { "required": [ "server_url" ], "type": "object" }, { "required": [ "url" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "host_groups", "host_group" ], "type": "object" } }, { "oneOf": [ { "required": [ "host_groups" ], "type": "object" }, { "required": [ "host_group" ], "type": "object" } ] } ] } ], "type": "object", "description": "Create host groups if they do not exist.\nDelete existing host groups if they exist.", "properties": { "http_login_password": { "type": "string", "description": "Default: None\n\nBasic Auth password" }, "host_groups": { "type": "array", "description": "List of host groups to create or delete." }, "url": { "type": "string", "description": "Url of Zabbix server, with protocol (http or https). C(url) is an alias for C(server_url)." }, "login_user": { "type": "string", "description": "Zabbix user name." }, "http_login_user": { "type": "string", "description": "Default: None\n\nBasic Auth login" }, "server_url": { "type": "string", "description": "Url of Zabbix server, with protocol (http or https). C(url) is an alias for C(server_url)." }, "host_group": { "type": "array", "description": "List of host groups to create or delete." }, "state": { "type": "string", "description": "Default: present\n\nCreate or delete host group." }, "timeout": { "type": "string", "description": "Default: 10\n\nThe timeout of API request(seconds)." }, "login_password": { "type": "string", "description": "Zabbix user password." } } }, "ios_lldp": { "type": "object", "description": "This module provides declarative management of LLDP service on Cisco IOS network devices.", "properties": { "state": { "type": "string", "description": "Default: present\n\nState of the LLDP configuration. If value is I(present) lldp will be enabled else if it is I(absent) it will be disabled." } } }, "win_user": { "required": [ "name" ], "type": "object", "description": "Manages local Windows user accounts\nFor non-Windows targets, use the M(user) module instead.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nC(always) will update passwords if they differ. C(on_create) will only set the password for newly created users." }, "password_never_expires": { "type": "string", "description": "C(yes) will set the password to never expire. C(no) will allow the password to expire." }, "name": { "type": "string", "description": "Name of the user to create, remove or modify." }, "groups_action": { "type": "string", "description": "Default: replace\n\nIf C(replace), the user is added as a member of each group in I(groups) and removed from any other groups. If C(add), the user is added to each group in I(groups) where not already a member. If C(remove), the user is removed from each group in I(groups)." }, "password_expired": { "type": "string", "description": "C(yes) will require the user to change their password at next login. C(no) will clear the expired password flag." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), creates or updates the user account. When C(absent), removes the user account if it exists. When C(query) (new in 1.9), retrieves the user account details without making any changes." }, "groups": { "type": "string", "description": "Adds or removes the user from this comma-separated lis of groups, depending on the value of I(groups_action). When I(groups_action) is C(replace) and I(groups) is set to the empty string ('groups='), the user is removed from all groups." }, "account_disabled": { "type": "string", "description": "C(yes) will disable the user account. C(no) will clear the disabled flag." }, "fullname": { "type": "string", "description": "Full name of the user" }, "password": { "type": "string", "description": "Optionally set the user's password to this (plain text) value." }, "account_locked": { "type": "string", "description": "C(no) will unlock the user account if locked." }, "user_cannot_change_password": { "type": "string", "description": "C(yes) will prevent the user from changing their password. C(no) will allow the user to change their password." }, "description": { "type": "string", "description": "Description of the user" } } }, "ops_command": { "allOf": [ { "allOf": [ { "not": { "required": [ "wait_for", "waitfor" ], "type": "object" } } ] } ], "type": "object", "description": "Sends arbitrary commands to an OpenSwitch node and returns the results read from the device. This module includes an argument that will cause the module to wait for a specific condition before returning or timing out if the condition is not met.", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nSpecifies the number of retries a command should by tried before it is considered failed. The command is run on the target device every retry and evaluated against the I(wait_for) conditions." }, "commands": { "type": "array", "description": "List of commands to send to the remote ops device over the configured provider. The resulting output from the command is returned. If the I(wait_for) argument is provided, the module is not returned until the condition is satisfied or the number of retires as expired." }, "waitfor": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "interval": { "type": "string", "description": "Default: 1\n\nConfigures the interval in seconds to wait between I(retries) of the command. If the command does not pass the specified conditions, the interval indicates how long to wait before trying the command again." }, "wait_for": { "type": "array", "description": "List of conditions to evaluate against the output of the command. The task will wait for each condition to be true before moving forward. If the conditional is not true within the configured number of retries, the task fails. See examples." }, "match": { "type": "string", "description": "Default: all\n\nThe I(match) argument is used in conjunction with the I(wait_for) argument to specify the match policy. Valid values are C(all) or C(any). If the value is set to C(all) then all conditionals in the I(wait_for) must be satisfied. If the value is set to C(any) then only one of the values must be satisfied." } } }, "gcp_dns_managed_zone": { "required": [ "state", "name" ], "type": "object", "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", "properties": { "dns_name": { "type": "string", "description": "The DNS name of this managed zone, for instance \"example.com.\"." }, "state": { "type": "string", "description": "Default: present\n\nWhether the given object should exist in GCP" }, "name_server_set": { "type": "string", "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset." }, "description": { "type": "string", "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function." }, "name": { "type": "string", "description": "User assigned name for this resource. Must be unique within the project." } } }, "ipa_hbacrule": { "allOf": [ { "allOf": [ { "not": { "required": [ "cn", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "cn" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add, modify or delete an IPA HBAC rule using IPA API.", "properties": { "servicecategory": { "type": "string", "description": "Service category" }, "sourcehostcategory": { "type": "string", "description": "Source host category" }, "description": { "type": "string", "description": "Description" }, "service": { "type": "array", "description": "List of service names to assign.\nIf an empty list is passed all services will be removed from the rule.\nIf option is omitted services will not be checked or changed." }, "sourcehost": { "type": "array", "description": "List of source host names to assign.\nIf an empty list if passed all assigned source hosts will be removed from the rule.\nIf option is omitted source hosts will not be checked or changed." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure" }, "hostgroup": { "type": "array", "description": "List of hostgroup names to assign.\nIf an empty list is passed all hostgroups will be removed. from the rule\nIf option is omitted hostgroups will not be checked or changed." }, "name": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." }, "usercategory": { "type": "string", "description": "User category" }, "hostcategory": { "type": "string", "description": "Host category" }, "user": { "type": "array", "description": "List of user names to assign.\nIf an empty list if passed all assigned users will be removed from the rule.\nIf option is omitted users will not be checked or changed." }, "usergroup": { "type": "array", "description": "List of user group names to assign.\nIf an empty list if passed all assigned user groups will be removed from the rule.\nIf option is omitted user groups will not be checked or changed." }, "host": { "type": "array", "description": "List of host names to assign.\nIf an empty list is passed all hosts will be removed from the rule.\nIf option is omitted hosts will not be checked or changed." }, "servicegroup": { "type": "array", "description": "List of service group names to assign.\nIf an empty list is passed all assigned service groups will be removed from the rule.\nIf option is omitted service groups will not be checked or changed." }, "sourcehostgroup": { "type": "array", "description": "List of source host group names to assign.\nIf an empty list if passed all assigned source host groups will be removed from the rule.\nIf option is omitted source host groups will not be checked or changed." }, "cn": { "type": "string", "description": "Canonical name.\nCan not be changed as it is the unique identifier." } } }, "homebrew": { "allOf": [ { "allOf": [ { "not": { "required": [ "install_options", "options" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "pkg", "package", "formula" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "update_homebrew", "update-brew" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "upgrade_all", "upgrade" ], "type": "object" } } ] } ], "type": "object", "description": "Manages Homebrew packages", "properties": { "install_options": { "type": "string", "description": "options flags to install a package" }, "upgrade": { "type": "string", "description": "upgrade all homebrew packages" }, "name": { "type": "string", "description": "Default: None\n\nname of package to install/remove" }, "package": { "type": "string", "description": "Default: None\n\nname of package to install/remove" }, "update_homebrew": { "type": "string", "description": "update homebrew itself first" }, "upgrade_all": { "type": "string", "description": "upgrade all homebrew packages" }, "state": { "type": "string", "description": "Default: present\n\nstate of the package" }, "update-brew": { "type": "string", "description": "update homebrew itself first" }, "pkg": { "type": "string", "description": "Default: None\n\nname of package to install/remove" }, "path": { "type": "string", "description": "Default: /usr/local/bin\n\n':' separated list of paths to search for 'brew' executable. Since A package (I(formula) in homebrew parlance) location is prefixed relative to the actual path of I(brew) command, providing an alternative I(brew) path enables managing different set of packages in an alternative location in the system." }, "formula": { "type": "string", "description": "Default: None\n\nname of package to install/remove" }, "options": { "type": "string", "description": "options flags to install a package" } } }, "modprobe": { "required": [ "name" ], "type": "object", "description": "Load or unload kernel modules.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether the module should be present or absent." }, "params": { "type": "string", "description": "Modules parameters." }, "name": { "type": "string", "description": "Name of kernel module to manage." } } }, "rax_facts": { "type": "object", "description": "Gather facts for Rackspace Cloud Servers.", "properties": { "id": { "type": "string", "description": "Server ID to retrieve facts for" }, "name": { "type": "string", "description": "Server name to retrieve facts for" }, "address": { "type": "string", "description": "Server IP address to retrieve facts for, will match any IP assigned to the server" } } }, "bigip_monitor_https": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM https monitors.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/https\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(https) parent on the C(Common) partition." }, "receive": { "type": "string", "description": "The receive string for the monitor call." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "send": { "type": "string", "description": "The send string for the monitor call. When creating a new monitor, if this value is not provided, the default C(GET /\\\\r\\\\n) will be used." }, "target_username": { "type": "string", "description": "Specifies the user name, if the monitored target requires authentication." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." }, "target_password": { "type": "string", "description": "Specifies the password, if the monitored target requires authentication." }, "port": { "type": "string", "description": "Port address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'. Note that if specifying an IP address, a value between 1 and 65535 must be specified" }, "receive_disable": { "type": "string", "description": "This setting works like C(receive), except that the system marks the node or pool member disabled when its response matches the C(receive_disable) string but not C(receive). To use this setting, you must specify both C(receive_disable) and C(receive)." } } }, "grafana_plugin": { "required": [ "name" ], "type": "object", "description": "Install and remove Grafana plugins.", "properties": { "grafana_repo": { "type": "string", "description": "Grafana repository. If not set, gafana-cli will use the default value C(https://grafana.net/api/plugins)." }, "name": { "type": "string", "description": "Name of the plugin." }, "grafana_plugin_url": { "type": "string", "description": "Custom Grafana plugin URL.\nRequires grafana 4.6.x or later." }, "grafana_plugins_dir": { "type": "string", "description": "Directory where Grafana plugin will be installed." }, "state": { "type": "string", "description": "Default: present\n\nStatus of the Grafana plugin.\nIf latest is set, the version parameter will be ignored." }, "version": { "type": "string", "description": "Version of the plugin to install.\nDefault to latest." } } }, "tempfile": { "type": "object", "description": "The C(tempfile) module creates temporary files and directories. C(mktemp) command takes different parameters on various systems, this module helps to avoid troubles related to that. Files/directories created by module are accessible only by creator. In case you need to make them world-accessible you need to use M(file) module.\nFor Windows targets, use the M(win_tempfile) module instead.", "properties": { "path": { "type": "string", "description": "Location where temporary file or directory should be created. If path is not specified default system temporary directory will be used." }, "state": { "type": "string", "description": "Default: file\n\nWhether to create file or directory." }, "prefix": { "type": "string", "description": "Default: ansible.\n\nPrefix of file/directory name created by module." }, "suffix": { "type": "string", "description": "Suffix of file/directory name created by module." } } }, "ec2_vpc_peering_facts": { "type": "object", "description": "Gets various details related to AWS VPC Peers", "properties": { "peer_connection_ids": { "type": "string", "description": "Default: None\n\nGet details of specific vpc peer IDs" }, "filters": { "type": "string", "description": "Default: None\n\nA dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcPeeringConnections.html) for possible filters." } } }, "rax_dns": { "type": "object", "description": "Manage domains on Rackspace Cloud DNS", "properties": { "comment": { "type": "string", "description": "Brief description of the domain. Maximum length of 160 characters" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "ttl": { "type": "string", "description": "Default: 3600\n\nTime to live of domain in seconds" }, "email": { "type": "string", "description": "Email address of the domain administrator" }, "name": { "type": "string", "description": "Domain name to create" } } }, "aci_interface_policy_port_channel": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "port_channel", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "port_channel" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage port channel interface policies on Cisco ACI fabrics.", "properties": { "graceful_convergence": { "description": "Default: yes\n\nDetermines if Graceful Convergence is enabled.\nThis makes up the LACP Policy Control Policy; if one setting is defined, then all other Control Properties left undefined or set to false will not exist after the task is ran.\nThe APIC defaults new LACP Policies to C(yes).", "$ref": "#/definitions/ansible_truth" }, "description": { "type": "string", "description": "The description for the port channel." }, "descr": { "type": "string", "description": "The description for the port channel." }, "load_defer": { "description": "Default: no\n\nDetermines if Load Defer is enabled.\nThis makes up the LACP Policy Control Policy; if one setting is defined, then all other Control Properties left undefined or set to false will not exist after the task is ran.\nThe APIC defaults new LACP Policies to C(no).", "$ref": "#/definitions/ansible_truth" }, "symmetric_hash": { "description": "Default: no\n\nDetermines if Symmetric Hashing is enabled.\nThis makes up the LACP Policy Control Policy; if one setting is defined, then all other Control Properties left undefined or set to false will not exist after the task is ran.\nThe APIC defaults new LACP Policies to C(no).", "$ref": "#/definitions/ansible_truth" }, "suspend_individual": { "description": "Default: yes\n\nDetermines if Suspend Individual is enabled.\nThis makes up the LACP Policy Control Policy; if one setting is defined, then all other Control Properties left undefined or set to false will not exist after the task is ran.\nThe APIC defaults new LACP Policies to C(yes).", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "mode": { "type": "string", "description": "Default: off\n\nPort channel interface policy mode.\nDetermines the LACP method to use for forming port-channels.\nThe APIC defaults new Port Channel Polices to C(off)." }, "min_links": { "type": "string", "description": "Default: 1\n\nMinimum links (range 1-16).\nThe APIC defaults new Port Channel Policies to C(1)." }, "port_channel": { "type": "string", "description": "Name of the port channel." }, "fast_select": { "description": "Default: yes\n\nDetermines if Fast Select is enabled for Hot Standby Ports.\nThis makes up the LACP Policy Control Policy; if one setting is defined, then all other Control Properties left undefined or set to false will not exist after the task is ran.\nThe APIC defaults new LACP Policies to C(yes).", "$ref": "#/definitions/ansible_truth" }, "max_links": { "type": "string", "description": "Default: 16\n\nMaximum links (range 1-16).\nThe APIC defaults new Port Channel Policies to C(16)." }, "name": { "type": "string", "description": "Name of the port channel." } } }, "onyx_bgp": { "required": [ "as_number" ], "type": "object", "description": "This module provides declarative management of BGP router and neighbors on Mellanox ONYX network devices.", "properties": { "router_id": { "type": "string", "description": "Router IP address. Required if I(state=present)." }, "as_number": { "type": "string", "description": "Local AS number." }, "state": { "type": "string", "description": "Default: present\n\nBGP state." }, "networks": { "type": "array", "description": "List of advertised networks." }, "neighbors": { "type": "array", "description": "List of neighbors. Required if I(state=present)." } } }, "ce_bgp_neighbor_af": { "required": [ "af_type", "remote_address", "vrf_name" ], "type": "object", "description": "Manages BGP neighbor Address-family configurations on HUAWEI CloudEngine switches.", "properties": { "import_pref_filt_name": { "type": "string", "description": "Specify the IPv4 filtering policy applied to the routes received from a specified peer. The value is a string of 1 to 169 characters." }, "advertise_irb": { "type": "string", "description": "Default: no_use\n\nIf the value is true, advertised IRB routes are distinguished. If the value is false, advertised IRB routes are not distinguished." }, "substitute_as_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the function to replace a specified peer's AS number in the AS-Path attribute with the local AS number is enabled. If the value is false, the function to replace a specified peer's AS number in the AS-Path attribute with the local AS number is disabled." }, "preferred_value": { "type": "string", "description": "Assign a preferred value for the routes learned from a specified peer. The value is an integer ranging from 0 to 65535." }, "advertise_ext_community": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the extended community attribute is advertised to peers. If the value is false, the extended community attribute is not advertised to peers." }, "advertise_remote_nexthop": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the remote next-hop attribute is advertised to peers. If the value is false, the remote next-hop attribute is not advertised to any peers." }, "default_rt_match_mode": { "type": "string", "description": "null, Null. matchall, Advertise the default route if all matching conditions are met. matchany, Advertise the default route if any matching condition is met." }, "soostring": { "type": "string", "description": "Configure the Site-of-Origin (SoO) extended community attribute. The value is a string of 3 to 21 characters." }, "advertise_arp": { "type": "string", "description": "Default: no_use\n\nIf the value is true, advertised ARP routes are distinguished. If the value is false, advertised ARP routes are not distinguished." }, "import_as_path_filter": { "type": "string", "description": "Apply an AS_Path-based filtering policy to the routes received from a specified peer. The value is an integer ranging from 1 to 256." }, "public_as_only_force": { "type": "string", "description": "Default: no_use\n\nIf the value is true, sent BGP update messages carry only the public AS number but do not carry private AS numbers. If the value is false, sent BGP update messages can carry private AS numbers." }, "vpls_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, vpls enable. If the value is false, vpls disable." }, "allow_as_loop_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, repetitive local AS numbers are allowed. If the value is false, repetitive local AS numbers are not allowed." }, "route_limit": { "type": "string", "description": "Configure the maximum number of routes that can be accepted from a peer. The value is an integer ranging from 1 to 4294967295." }, "import_as_path_name_or_num": { "type": "string", "description": "A routing strategy based on the AS path list for routing received by a designated peer." }, "af_type": { "type": "string", "description": "Address family type of a BGP instance." }, "nexthop_configure": { "type": "string", "description": "null, The next hop is not changed. local, The next hop is changed to the local IP address. invariable, Prevent the device from changing the next hop of each imported IGP route when advertising it to its BGP peers." }, "discard_ext_community": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the extended community attribute in the peer route information is discarded. If the value is false, the extended community attribute in the peer route information is not discarded." }, "is_nonstd_ipprefix_mod": { "type": "string", "description": "Default: no_use\n\nIf the value is true, Non-standard capability codes are used during capability negotiation. If the value is false, RFC-defined standard ORF capability codes are used during capability negotiation." }, "keep_all_routes": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the system stores all route update messages received from all peers (groups) after BGP connection setup. If the value is false, the system stores only BGP update messages that are received from peers and pass the configured import policy." }, "orftype": { "type": "string", "description": "ORF Type. The value is an integer ranging from 0 to 65535." }, "advertise_community": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the community attribute is advertised to peers. If the value is false, the community attribute is not advertised to peers." }, "default_rt_adv_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the function to advertise default routes to peers is enabled. If the value is false, the function to advertise default routes to peers is disabled." }, "export_as_path_name_or_num": { "type": "string", "description": "Application of a AS path list based filtering policy to the routing of a specified peer." }, "adv_add_path_num": { "type": "string", "description": "The number of addPath advertise route. The value is an integer ranging from 2 to 64." }, "ipprefix_orf_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the address prefix-based Outbound Route Filter (ORF) capability is enabled for peers. If the value is false, the address prefix-based Outbound Route Filter (ORF) capability is disabled for peers." }, "remote_address": { "type": "string", "description": "IPv4 or IPv6 peer connection address." }, "public_as_only_skip_peer_as": { "type": "string", "description": "Default: no_use\n\nPublic as only skip peer as." }, "origin_as_valid": { "type": "string", "description": "Default: no_use\n\nIf the value is true, Application results of route announcement. If the value is false, Routing application results are not notified." }, "route_limit_idle_timeout": { "type": "string", "description": "Specify the value of the idle-timeout timer to automatically reestablish the connections after they are cut off when the number of routes exceeds the set threshold. The value is an integer ranging from 1 to 1200." }, "reflect_client": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the local device functions as the route reflector and a peer functions as a client of the route reflector. If the value is false, the route reflector and client functions are not configured." }, "import_rt_policy_name": { "type": "string", "description": "Specify the filtering policy applied to the routes learned from a peer. The value is a string of 1 to 40 characters." }, "route_limit_percent": { "type": "string", "description": "Specify the percentage of routes when a router starts to generate an alarm. The value is an integer ranging from 1 to 100." }, "export_rt_policy_name": { "type": "string", "description": "Specify the filtering policy applied to the routes to be advertised to a peer. The value is a string of 1 to 40 characters." }, "public_as_only": { "type": "string", "description": "Default: no_use\n\nIf the value is true, sent BGP update messages carry only the public AS number but do not carry private AS numbers. If the value is false, sent BGP update messages can carry private AS numbers." }, "redirect_ip_vaildation": { "type": "string", "description": "Default: no_use\n\nRedirect ip vaildation." }, "import_acl_name_or_num": { "type": "string", "description": "Apply an IPv4 ACL-based filtering policy to the routes received from a specified peer. The value is a string of 1 to 32 characters." }, "allow_as_loop_limit": { "type": "string", "description": "Set the maximum number of repetitive local AS number. The value is an integer ranging from 1 to 10." }, "add_path_mode": { "type": "string", "description": "null, Null. receive, Support receiving Add-Path routes. send, Support sending Add-Path routes. both, Support receiving and sending Add-Path routes." }, "export_as_path_filter": { "type": "string", "description": "Apply an AS_Path-based filtering policy to the routes to be advertised to a specified peer. The value is an integer ranging from 1 to 256." }, "vpls_ad_disable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, enable vpls-ad. If the value is false, disable vpls-ad." }, "public_as_only_replace": { "type": "string", "description": "Default: no_use\n\nPrivate as replaced by public as number." }, "route_limit_type": { "type": "string", "description": "Noparameter, After the number of received routes exceeds the threshold and the timeout timer expires,no action. AlertOnly, An alarm is generated and no additional routes will be accepted if the maximum number of routes allowed have been received. IdleForever, The connection that is interrupted is not automatically re-established if the maximum number of routes allowed have been received. IdleTimeout, After the number of received routes exceeds the threshold and the timeout timer expires, the connection that is interrupted is automatically re-established." }, "export_acl_name_or_num": { "type": "string", "description": "Apply an IPv4 ACL-based filtering policy to the routes to be advertised to a specified peer. The value is a string of 1 to 32 characters." }, "redirect_ip": { "type": "string", "description": "Default: no_use\n\nRedirect ip." }, "update_pkt_standard_compatible": { "type": "string", "description": "Default: no_use\n\nIf the value is true, When the vpnv4 multicast neighbor receives and updates the message, the message has no label. If the value is false, When the vpnv4 multicast neighbor receives and updates the message, the message has label." }, "orf_mode": { "type": "string", "description": "ORF mode. null, Default value. receive, ORF for incoming packets. send, ORF for outgoing packets. both, ORF for incoming and outgoing packets." }, "vrf_name": { "type": "string", "description": "Name of a BGP instance. The name is a case-sensitive string of characters. The BGP instance can be used only after the corresponding VPN instance is created." }, "default_rt_adv_policy": { "type": "string", "description": "Specify the name of a used policy. The value is a string. The value is a string of 1 to 40 characters." }, "export_pref_filt_name": { "type": "string", "description": "Specify the IPv4 filtering policy applied to the routes to be advertised to a specified peer. The value is a string of 1 to 169 characters." }, "public_as_only_limited": { "type": "string", "description": "Default: no_use\n\nLimited use public as number." }, "rt_updt_interval": { "type": "string", "description": "Specify the minimum interval at which Update packets are sent. The value is an integer, in seconds. The value is an integer ranging from 0 to 600." } } }, "ce_evpn_bgp_rr": { "required": [ "as_number" ], "type": "object", "description": "Configure an RR in BGP-EVPN address family view on HUAWEI CloudEngine switches.", "properties": { "as_number": { "type": "string", "description": "Specifies the number of the AS, in integer format. The value is an integer that ranges from 1 to 4294967295." }, "bgp_evpn_enable": { "type": "string", "description": "Default: enable\n\nEnable or disable the BGP-EVPN address family." }, "policy_vpn_target": { "type": "string", "description": "Enable or disable the VPN-Target filtering." }, "reflect_client": { "type": "string", "description": "Configure the local device as the route reflector and the peer or peer group as the client of the route reflector." }, "bgp_instance": { "type": "string", "description": "Specifies the name of a BGP instance. The value of instance-name can be an integer 1 or a string of 1 to 31." }, "peer": { "type": "string", "description": "Specifies the IPv4 address or the group name of a peer." }, "peer_type": { "type": "string", "description": "Specify the peer type." } } }, "ovirt_users": { "allOf": [ { "allOf": [ { "not": { "required": [ "authz_name", "domain" ], "type": "object" } }, { "oneOf": [ { "required": [ "authz_name" ], "type": "object" }, { "required": [ "domain" ], "type": "object" } ] } ] } ], "type": "object", "description": "Module to manage users in oVirt/RHV.", "properties": { "state": { "type": "string", "description": "Default: present\n\nShould the user be present/absent." }, "authz_name": { "type": "string", "description": "Authorization provider of the user. In previous versions of oVirt/RHV known as domain." }, "domain": { "type": "string", "description": "Authorization provider of the user. In previous versions of oVirt/RHV known as domain." }, "name": { "type": "string", "description": "Name of the user to manage. In most LDAPs it's I(uid) of the user, but in Active Directory you must specify I(UPN) of the user." } } }, "proxysql_manage_config": { "required": [ "action", "config_layer", "direction", "config_settings" ], "type": "object", "description": "The M(proxysql_global_variables) module writes the proxysql configuration settings between layers. Currently this module will always report a changed state, so should typically be used with WHEN however this will change in a future version when the CHECKSUM table commands are available for all tables in proxysql.", "properties": { "action": { "type": "string", "description": "The supplied I(action) combines with the supplied I(direction) to provide the semantics of how we want to move the I(config_settings) between the I(config_layers)." }, "config_layer": { "type": "string", "description": "RUNTIME - represents the in-memory data structures of ProxySQL used by the threads that are handling the requests. MEMORY - (sometimes also referred as main) represents the in-memory SQLite3 database. DISK - represents the on-disk SQLite3 database. CONFIG - is the classical config file. You can only LOAD FROM the config file." }, "direction": { "type": "string", "description": "FROM - denotes we're reading values FROM the supplied I(config_layer) and writing to the next layer. TO - denotes we're reading from the previous layer and writing TO the supplied I(config_layer).\"" }, "config_settings": { "type": "string", "description": "The I(config_settings) specifies which configuration we're writing." } } }, "ce_bfd_view": { "required": [ "session_name" ], "type": "object", "description": "Manages BFD session view configuration on HUAWEI CloudEngine devices.", "properties": { "local_discr": { "type": "string", "description": "Specifies the local discriminator of a BFD session. The value is an integer that ranges from 1 to 16384." }, "wtr_interval": { "type": "string", "description": "Specifies the WTR time of a BFD session. The value is an integer that ranges from 1 to 60, in minutes. The default value is 0." }, "remote_discr": { "type": "string", "description": "Specifies the remote discriminator of a BFD session. The value is an integer that ranges from 1 to 4294967295." }, "description": { "type": "string", "description": "Specifies the description of a BFD session. The value is a string of 1 to 51 case-sensitive characters with spaces." }, "admin_down": { "type": "string", "description": "Enables the BFD session to enter the AdminDown state. By default, a BFD session is enabled. The default value is bool type." }, "tos_exp": { "type": "string", "description": "Specifies a priority for BFD control packets. The value is an integer ranging from 0 to 7. The default value is 7, which is the highest priority." }, "min_tx_interval": { "type": "string", "description": "Specifies the minimum interval for receiving BFD packets. The value is an integer that ranges from 50 to 1000, in milliseconds." }, "min_rx_interval": { "type": "string", "description": "Specifies the minimum interval for sending BFD packets. The value is an integer that ranges from 50 to 1000, in milliseconds." }, "state": { "type": "string", "description": "Default: present\n\nDetermines whether the config should be present or not on the device." }, "session_name": { "type": "string", "description": "Specifies the name of a BFD session. The value is a string of 1 to 15 case-sensitive characters without spaces." }, "detect_multi": { "type": "string", "description": "Specifies the local detection multiplier of a BFD session. The value is an integer that ranges from 3 to 50." } } }, "digital_ocean": { "type": "object", "description": "Create/delete a droplet in DigitalOcean and optionally wait for it to be 'running', or deploy an SSH key.", "properties": { "unique_name": { "type": "string", "description": "Default: no\n\nBool, require unique hostnames. By default, DigitalOcean allows multiple hosts with the same name. Setting this to \"yes\" allows only one host per name. Useful for idempotence." }, "virtio": { "type": "string", "description": "Default: yes\n\nBool, turn on virtio driver in droplet for improved network and storage I/O." }, "region_id": { "type": "string", "description": "This is the slug of the region you would like your server to be created in." }, "size_id": { "type": "string", "description": "This is the slug of the size you would like the droplet created with." }, "ipv6": { "type": "string", "description": "Default: no\n\nOptional, Boolean, enable IPv6 for your droplet." }, "backups_enabled": { "type": "string", "description": "Default: no\n\nOptional, Boolean, enables backups for your droplet." }, "user_data": { "type": "string", "description": "Default: None\n\nopaque blob of data which is made available to the droplet" }, "name": { "type": "string", "description": "String, this is the name of the droplet - must be formatted by hostname rules, or the name of a SSH key." }, "image_id": { "type": "string", "description": "This is the slug of the image you would like the droplet created with." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long before wait gives up, in seconds." }, "command": { "type": "string", "description": "Default: droplet\n\nWhich target you want to operate on." }, "ssh_key_ids": { "type": "string", "description": "Optional, array of of SSH key (numeric) ID that you would like to be added to the server." }, "api_token": { "type": "string", "description": "DigitalOcean api token." }, "id": { "type": "string", "description": "Numeric, the droplet id you want to operate on." }, "private_networking": { "type": "string", "description": "Default: no\n\nBool, add an additional, private network interface to droplet for inter-droplet communication." }, "ssh_pub_key": { "type": "string", "description": "The public SSH key you want to add to your account." }, "wait": { "type": "string", "description": "Default: yes\n\nWait for the droplet to be in state 'running' before returning. If wait is \"no\" an ip_address may not be returned." } } }, "rabbitmq_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "user", "username", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "user" ], "type": "object" }, { "required": [ "username" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Add or remove users to RabbitMQ and assign permissions", "properties": { "node": { "type": "string", "description": "Default: rabbit\n\nerlang node name of the rabbit we wish to configure" }, "username": { "type": "string", "description": "Name of user to add" }, "force": { "type": "string", "description": "Default: no\n\nDeletes and recreates the user." }, "name": { "type": "string", "description": "Name of user to add" }, "write_priv": { "type": "string", "description": "Default: ^$\n\nRegular expression to restrict configure actions on a resource for the specified vhost.\nBy default all actions are restricted.\nThis option will be ignored when permissions option is used." }, "tags": { "type": "string", "description": "User tags specified as comma delimited" }, "read_priv": { "type": "string", "description": "Default: ^$\n\nRegular expression to restrict configure actions on a resource for the specified vhost.\nBy default all actions are restricted.\nThis option will be ignored when permissions option is used." }, "state": { "type": "string", "description": "Default: present\n\nSpecify if user is to be added or removed" }, "user": { "type": "string", "description": "Name of user to add" }, "configure_priv": { "type": "string", "description": "Default: ^$\n\nRegular expression to restrict configure actions on a resource for the specified vhost.\nBy default all actions are restricted.\nThis option will be ignored when permissions option is used." }, "vhost": { "type": "string", "description": "Default: /\n\nvhost to apply access privileges.\nThis option will be ignored when permissions option is used." }, "password": { "type": "string", "description": "Password of user to add.\nTo change the password of an existing user, you must also specify C(force=yes)." }, "permissions": { "type": "string", "description": "a list of dicts, each dict contains vhost, configure_priv, write_priv, and read_priv, and represents a permission rule for that vhost.\nThis option should be preferable when you care about all permissions of the user.\nYou should use vhost, configure_priv, write_priv, and read_priv options instead if you care about permissions for just some vhosts." } } }, "os_port_facts": { "type": "object", "description": "Retrieve facts about ports from OpenStack.", "properties": { "port": { "type": "string", "description": "Unique name or ID of a port." }, "filters": { "type": "object", "description": "A dictionary of meta data to use for further filtering. Elements of this dictionary will be matched against the returned port dictionaries. Matching is currently limited to strings within the port dictionary, or strings within nested dictionaries." } } }, "sensu_subscription": { "required": [ "name" ], "type": "object", "description": "Manage which I(sensu channels) a machine should subscribe to", "properties": { "path": { "type": "string", "description": "Default: /etc/sensu/conf.d/subscriptions.json\n\nPath to the subscriptions json file" }, "state": { "type": "string", "description": "Default: present\n\nWhether the machine should subscribe or unsubscribe from the channel" }, "backup": { "type": "string", "description": "Create a backup file (if yes), including the timestamp information so you\ncan get the original file back if you somehow clobbered it incorrectly." }, "name": { "type": "string", "description": "The name of the channel" } } }, "nxos_static_route": { "allOf": [ { "allOf": [ { "not": { "required": [ "prefix", "address" ], "type": "object" } }, { "oneOf": [ { "required": [ "prefix" ], "type": "object" }, { "required": [ "address" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "pref", "admin_distance" ], "type": "object" } } ] } ], "type": "object", "description": "Manages static route configuration", "properties": { "next_hop": { "type": "string", "description": "Next hop address or interface of static route. If interface, it must be the fully-qualified interface name." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "pref": { "type": "string", "description": "Preference or administrative difference of route (range 1-255) or keyword 'default'." }, "route_name": { "type": "string", "description": "Name of the route or keyword 'default'. Used with the name parameter on the CLI." }, "admin_distance": { "type": "string", "description": "Preference or administrative difference of route (range 1-255) or keyword 'default'." }, "prefix": { "type": "string", "description": "Destination prefix of static route." }, "tag": { "type": "string", "description": "Route tag value (numeric) or keyword 'default'." }, "vrf": { "type": "string", "description": "Default: default\n\nVRF for static route." }, "address": { "type": "string", "description": "Destination prefix of static route." }, "aggregate": { "type": "array", "description": "List of static route definitions" } } }, "assert": { "required": [ "that" ], "type": "object", "description": "This module asserts that given expressions are true with an optional custom message.\nThis module is also supported for Windows targets.", "properties": { "msg": { "type": "string", "description": "The customized message used for a failing assertion" }, "that": { "type": "string", "description": "A string expression of the same form that can be passed to the 'when' statement\nAlternatively, a list of string expressions" } } }, "ce_evpn_bd_vni": { "required": [ "vpn_target_import", "bridge_domain_id" ], "type": "object", "description": "Manages Ethernet Virtual Private Network (EVPN) VXLAN Network Identifier (VNI) configurations on HUAWEI CloudEngine switches.", "properties": { "vpn_target_both": { "type": "string", "description": "Add VPN targets to both the import and export VPN target lists of a BD EVPN instance. The format is the same as route_distinguisher." }, "vpn_target_import": { "type": "string", "description": "Add VPN targets to the import VPN target list of a BD EVPN instance. The format is the same as route_distinguisher." }, "bridge_domain_id": { "type": "string", "description": "Specify an existed bridge domain (BD).The value is an integer ranging from 1 to 16777215." }, "vpn_target_export": { "type": "string", "description": "Add VPN targets to the export VPN target list of a BD EVPN instance. The format is the same as route_distinguisher." }, "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "route_distinguisher": { "type": "string", "description": "Configures a route distinguisher (RD) for a BD EVPN instance. The format of an RD can be as follows\n1) 2-byte AS number:4-byte user-defined number, for example, 1:3. An AS number is an integer ranging from 0 to 65535, and a user-defined number is an integer ranging from 0 to 4294967295. The AS and user-defined numbers cannot be both 0s. This means that an RD cannot be 0:0.\n2) Integral 4-byte AS number:2-byte user-defined number, for example, 65537:3. An AS number is an integer ranging from 65536 to 4294967295, and a user-defined number is an integer ranging from 0 to 65535.\n3) 4-byte AS number in dotted notation:2-byte user-defined number, for example, 0.0:3 or 0.1:0. A 4-byte AS number in dotted notation is in the format of x.y, where x and y are integers ranging from 0 to 65535.\n4) A user-defined number is an integer ranging from 0 to 65535. The AS and user-defined numbers cannot be both 0s. This means that an RD cannot be 0.0:0.\n5) 32-bit IP address:2-byte user-defined number. For example, 192.168.122.15:1. An IP address ranges from 0.0.0.0 to 255.255.255.255, and a user-defined number is an integer ranging from 0 to 65535.\n6) 'auto' specifies the RD that is automatically generated." }, "evpn": { "type": "string", "description": "Default: enable\n\nCreate or delete an EVPN instance for a VXLAN in BD view." } } }, "rhsm_repository": { "required": [ "state", "name" ], "type": "object", "description": "Manage(Enable/Disable) RHSM repositories to the Red Hat Subscription Management entitlement platform using the C(subscription-manager) command.", "properties": { "state": { "type": "string", "description": "Default: present\n\nIf state is equal to present or disabled, indicates the desired repository state." }, "name": { "type": "string", "description": "The ID of repositories to enable.\nTo operate on several repositories this can accept a comma separated list or a YAML list." } } }, "junos_interface": { "required": [ "name" ], "type": "object", "description": "This module provides declarative management of Interfaces on Juniper JUNOS network devices.", "properties": { "neighbors": { "type": "string", "description": "Check the operational state of given interface C(name) for LLDP neighbor.\nThe following suboptions are available." }, "delay": { "type": "string", "description": "Default: 10\n\nTime in seconds to wait before checking for the operational state on remote device. This wait is applicable for operational state argument which are I(state) with values C(up)/C(down), I(tx_rate) and I(rx_rate)." }, "name": { "type": "string", "description": "Name of the Interface." }, "duplex": { "type": "string", "description": "Default: auto\n\nInterface link status." }, "enabled": { "type": "string", "description": "Configure interface link status." }, "mtu": { "type": "string", "description": "Maximum size of transmit packet." }, "rx_rate": { "type": "string", "description": "Receiver rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the Interface configuration, C(up) idicates present and operationally up and C(down) indicates present and operationally C(down)" }, "aggregate": { "type": "array", "description": "List of Interfaces definitions." }, "speed": { "type": "string", "description": "Interface link speed." }, "tx_rate": { "type": "string", "description": "Transmit rate in bits per second (bps).\nThis is state check parameter only.\nSupports conditionals, see L(Conditionals in Networking Modules,../network/user_guide/network_working_with_command_output.html)" }, "description": { "type": "string", "description": "Description of Interface." } } }, "ovirt_storage_domains": { "allOf": [ { "allOf": [ { "not": { "required": [ "domain_function", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Module to manage storage domains in oVirt/RHV", "properties": { "comment": { "type": "string", "description": "Comment of the storage domain." }, "warning_low_space": { "type": "string", "description": "Inidcates the minimum percentage of a free space in a storage domain to present a warning." }, "glusterfs": { "type": "object", "description": "Dictionary with values for GlusterFS storage type:\nC(address) - Address of the Gluster server. E.g.: myserver.mydomain.com\nC(path) - Path of the mount point. E.g.: /path/to/my/data\nC(mount_options) - Option which will be passed when mounting storage.\nNote that these parameters are not idempotent." }, "localfs": { "type": "object", "description": "Dictionary with values for localfs storage type:\nC(path) - Path of the mount point. E.g.: /path/to/my/data\nNote that these parameters are not idempotent." }, "data_center": { "type": "string", "description": "Data center name where storage domain should be attached.\nThis parameter isn't idempotent, it's not possible to change data center of storage domain." }, "id": { "type": "string", "description": "Id of the storage domain to be imported." }, "iscsi": { "type": "object", "description": "Dictionary with values for iSCSI storage type:\nC(address) - Address of the iSCSI storage server.\nC(port) - Port of the iSCSI storage server.\nC(target) - The target IQN for the storage device.\nC(lun_id) - LUN id(s).\nC(username) - A CHAP user name for logging into a target.\nC(password) - A CHAP password for logging into a target.\nC(override_luns) - If I(True) ISCSI storage domain luns will be overridden before adding.\nC(target_lun_map) - List of dictionary containing targets and LUNs.\"\nNote that these parameters are not idempotent.\nParameter C(target_lun_map) is supported since Ansible 2.5." }, "state": { "type": "string", "description": "Default: present\n\nShould the storage domain be present/absent/maintenance/unattached/imported/update_ovf_store\nI(imported) is supported since version 2.4.\nI(update_ovf_store) is supported since version 2.5, currently if C(wait) is (true), we don't wait for update." }, "wipe_after_delete": { "type": "string", "description": "Boolean flag which indicates whether the storage domain should wipe the data after delete." }, "destroy": { "type": "string", "description": "Logical remove of the storage domain. If I(true) retains the storage domain's data for import.\nThis parameter is relevant only when C(state) is I(absent)." }, "type": { "type": "string", "description": "Default: data\n\nFunction of the storage domain.\nThis parameter isn't idempotent, it's not possible to change domain function of storage domain." }, "fcp": { "type": "object", "description": "Dictionary with values for fibre channel storage type:\nC(address) - Address of the fibre channel storage server.\nC(port) - Port of the fibre channel storage server.\nC(lun_id) - LUN id.\nC(override_luns) - If I(True) FCP storage domain luns will be overridden before adding.\nNote that these parameters are not idempotent." }, "description": { "type": "string", "description": "Description of the storage domain." }, "format": { "type": "string", "description": "If I(True) storage domain will be formatted after removing it from oVirt/RHV.\nThis parameter is relevant only when C(state) is I(absent)." }, "host": { "type": "string", "description": "Host to be used to mount storage." }, "discard_after_delete": { "type": "string", "description": "If I(True) storage domain blocks will be discarded upon deletion. Enabled by default.\nThis parameter is relevant only for block based storage domains." }, "domain_function": { "type": "string", "description": "Default: data\n\nFunction of the storage domain.\nThis parameter isn't idempotent, it's not possible to change domain function of storage domain." }, "name": { "type": "string", "description": "Name of the storage domain to manage. (Not required when state is I(imported))" }, "critical_space_action_blocker": { "type": "string", "description": "Inidcates the minimal free space the storage domain should contain in percentages." }, "posixfs": { "type": "object", "description": "Dictionary with values for PosixFS storage type:\nC(path) - Path of the mount point. E.g.: /path/to/my/data\nC(vfs_type) - Virtual File System type.\nC(mount_options) - Option which will be passed when mounting storage.\nNote that these parameters are not idempotent." }, "nfs": { "type": "object", "description": "Dictionary with values for NFS storage type:\nC(address) - Address of the NFS server. E.g.: myserver.mydomain.com\nC(path) - Path of the mount point. E.g.: /path/to/my/data\nC(version) - NFS version. One of: I(auto), I(v3), I(v4) or I(v4_1).\nC(timeout) - The time in tenths of a second to wait for a response before retrying NFS requests. Range 0 to 65535.\nC(retrans) - The number of times to retry a request before attempting further recovery actions. Range 0 to 65535.\nC(mount_options) - Option which will be passed when mounting storage.\nNote that these parameters are not idempotent." }, "backup": { "type": "string", "description": "Boolean flag which indicates whether the storage domain is configured as backup or not." } } }, "aws_direct_connect_connection": { "type": "object", "description": "Create, update, or delete a Direct Connect connection between a network and a specific AWS Direct Connect location. Upon creation the connection may be added to a link aggregation group or established as a standalone connection. The connection may later be associated or disassociated with a link aggregation group.", "properties": { "forced_update": { "type": "string", "description": "To modify bandwidth or location the connection will need to be deleted and recreated. By default this will not happen - this option must be set to True." }, "name": { "type": "string", "description": "The name of the Direct Connect connection. This is required to create a new connection. To recreate or delete a connection I(name) or I(connection_id) is required." }, "state": { "type": "string", "description": "The state of the Direct Connect connection." }, "connection_id": { "type": "string", "description": "The ID of the Direct Connect connection. I(name) or I(connection_id) is required to recreate or delete a connection. Modifying attributes of a connection with I(forced_update) will result in a new Direct Connect connection ID." }, "bandwidth": { "type": "string", "description": "The bandwidth of the Direct Connect connection. Required when I(state=present)." }, "link_aggregation_group": { "type": "string", "description": "The ID of the link aggregation group you want to associate with the connection. This is optional in case a stand-alone connection is desired." }, "location": { "type": "string", "description": "Where the Direct Connect connection is located. Required when I(state=present)." } } }, "vmware_resource_pool": { "required": [ "resource_pool", "datacenter", "cluster" ], "type": "object", "description": "This module can be used to add/remove a resource pool to/from vCenter", "properties": { "resource_pool": { "type": "string", "description": "Resource pool name to manage." }, "datacenter": { "type": "string", "description": "Name of the datacenter to add the host." }, "cpu_reservation": { "type": "string", "description": "Amount of resource that is guaranteed available to the virtual machine or resource pool." }, "mem_expandable_reservations": { "description": "Default: True\n\nIn a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value.", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nAdd or remove the resource pool" }, "cluster": { "type": "string", "description": "Name of the cluster to add the host." }, "cpu_expandable_reservations": { "description": "Default: True\n\nIn a resource pool with an expandable reservation, the reservation on a resource pool can grow beyond the specified value.", "$ref": "#/definitions/ansible_truth" }, "cpu_limit": { "type": "string", "description": "Default: -1\n\nThe utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources.\nThe default value -1 indicates no limit." }, "mem_shares": { "type": "string", "description": "Default: normal\n\nMemory shares are used in case of resource contention." }, "mem_limit": { "type": "string", "description": "Default: -1\n\nThe utilization of a virtual machine/resource pool will not exceed this limit, even if there are available resources.\nThe default value -1 indicates no limit." }, "mem_reservation": { "type": "string", "description": "Amount of resource that is guaranteed available to the virtual machine or resource pool." }, "cpu_shares": { "type": "string", "description": "Default: normal\n\nMemory shares are used in case of resource contention." } } }, "apache2_mod_proxy": { "required": [ "balancer_vhost" ], "type": "object", "description": "Set and/or get members' attributes of an Apache httpd 2.4 mod_proxy balancer pool, using HTTP POST and GET requests. The httpd mod_proxy balancer-member status page has to be enabled and accessible, as this module relies on parsing this page. This module supports ansible check_mode, and requires BeautifulSoup python module.", "properties": { "tls": { "type": "string", "description": "Use https to access balancer management page." }, "balancer_vhost": { "type": "string", "description": "Default: None\n\n(ipv4|ipv6|fqdn):port of the Apache httpd 2.4 mod_proxy balancer pool." }, "balancer_url_suffix": { "type": "string", "description": "Default: /balancer-manager/\n\nSuffix of the balancer pool url required to access the balancer pool status page (e.g. balancer_vhost[:port]/balancer_url_suffix)." }, "member_host": { "type": "string", "description": "Default: None\n\n(ipv4|ipv6|fqdn) of the balancer member to get or to set attributes to. Port number is autodetected and should not be specified here. If undefined, apache2_mod_proxy module will return a members list of dictionaries of all the current balancer pool members' attributes." }, "state": { "type": "string", "description": "Default: None\n\nDesired state of the member host. (absent|disabled),drained,hot_standby,ignore_errors can be simultaneously invoked by separating them with a comma (e.g. state=drained,ignore_errors)." }, "validate_certs": { "type": "string", "description": "Default: True\n\nValidate ssl/tls certificates." } } }, "cloudscale_floating_ip": { "allOf": [ { "allOf": [ { "not": { "required": [ "ip", "network" ], "type": "object" } } ] } ], "type": "object", "description": "Create, assign and delete floating IPs on the cloudscale.ch IaaS service.\nAll operations are performed using the cloudscale.ch public API v1.\nFor details consult the full API documentation: U(https://www.cloudscale.ch/en/api/v1).\nA valid API token is required for all operations. You can create as many tokens as you like using the cloudscale.ch control panel at U(https://control.cloudscale.ch).", "properties": { "network": { "type": "string", "description": "Floating IP address to change.\nRequired to assign the IP to a different server or if I(state) is absent." }, "ip": { "type": "string", "description": "Floating IP address to change.\nRequired to assign the IP to a different server or if I(state) is absent." }, "api_timeout": { "type": "string", "description": "Default: 30\n\nTimeout in seconds for calls to the cloudscale.ch API." }, "server": { "type": "string", "description": "UUID of the server assigned to this floating IP.\nRequired unless I(state) is absent." }, "state": { "type": "string", "description": "Default: present\n\nState of the floating IP." }, "reverse_ptr": { "type": "string", "description": "Reverse PTR entry for this address.\nYou cannot set a reverse PTR entry for IPv6 floating networks. Reverse PTR entries are only allowed for single addresses." }, "api_token": { "type": "string", "description": "cloudscale.ch API token.\nThis can also be passed in the CLOUDSCALE_API_TOKEN environment variable." }, "ip_version": { "type": "string", "description": "IP protocol version of the floating IP." }, "prefix_length": { "type": "string", "description": "Only valid if I(ip_version) is 6.\nPrefix length for the IPv6 network. Currently only a prefix of /56 can be requested. If no I(prefix_length) is present, a single address is created." } } }, "iosxr_system": { "type": "object", "description": "This module provides declarative management of node system attributes on Cisco IOS XR devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "lookup_source": { "type": "string", "description": "The C(lookup_source) argument provides one or more source interfaces to use for performing DNS lookups. The interface provided in C(lookup_source) must be a valid interface configured on the device." }, "domain_search": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "domain_name": { "type": "string", "description": "Configure the IP domain name on the remote device to the provided value. Value should be in the dotted name form and will be appended to the C(hostname) to create a fully-qualified domain name." }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "vrf": { "type": "string", "description": "VRF name for domain services" }, "name_servers": { "type": "string", "description": "The C(name_serves) argument accepts a list of DNS name servers by way of either FQDN or IP address to use to perform name resolution lookups. This argument accepts wither a list of DNS servers See examples." }, "lookup_enabled": { "description": "Provides administrative control for enabling or disabling DNS lookups. When this argument is set to True, lookups are performed and when it is set to False, lookups are not performed.", "$ref": "#/definitions/ansible_truth" } } }, "authorized_key": { "required": [ "user", "key" ], "type": "object", "description": "Adds or removes SSH authorized keys for particular user accounts", "properties": { "comment": { "type": "string", "description": "Default: None\n\nChange the comment on the public key. Rewriting the comment is useful in cases such as fetching it from GitHub or GitLab.\nIf no comment is specified, the existing comment will be kept." }, "exclusive": { "type": "string", "description": "Default: no\n\nWhether to remove all other non-specified keys from the authorized_keys file. Multiple keys can be specified in a single C(key) string value by separating them by newlines.\nThis option is not loop aware, so if you use C(with_) , it will be exclusive per iteration of the loop, if you want multiple keys in the file you need to pass them all to C(key) in a single batch as mentioned above." }, "key_options": { "type": "string", "description": "A string of ssh key options to be prepended to the key in the authorized_keys file" }, "state": { "type": "string", "description": "Default: present\n\nWhether the given key (with the given key_options) should or should not be in the file" }, "user": { "type": "string", "description": "The username on the remote host whose authorized_keys file will be modified" }, "key": { "type": "string", "description": "The SSH public key(s), as a string or (since 1.9) url (https://github.com/username.keys)" }, "path": { "type": "string", "description": "Default: (homedir)+/.ssh/authorized_keys\n\nAlternate path to the authorized_keys file" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nThis only applies if using a https url as the source of the keys. If set to C(no), the SSL certificates will not be validated.\nThis should only set to C(no) used on personally controlled sites using self-signed certificates as it avoids verifying the source site.\nPrior to 2.1 the code worked as if this was set to C(yes)." }, "manage_dir": { "type": "string", "description": "Default: yes\n\nWhether this module should manage the directory of the authorized key file. If set, the module will create the directory, as well as set the owner and permissions of an existing directory. Be sure to set C(manage_dir=no) if you are using an alternate directory for authorized_keys, as set with C(path), since you could lock yourself out of SSH access. See the example below." } } }, "vmware_dns_config": { "required": [ "change_hostname_to", "dns_servers", "domainname" ], "type": "object", "description": "Manage VMware ESXi DNS Configuration", "properties": { "change_hostname_to": { "type": "string", "description": "The hostname that an ESXi host should be changed to." }, "dns_servers": { "type": "string", "description": "The DNS servers that the host should be configured to use." }, "domainname": { "type": "string", "description": "The domain the ESXi host should be apart of." } } }, "flowdock": { "required": [ "type", "token", "msg" ], "type": "object", "description": "Send a message to a flowdock team inbox or chat using the push API (see https://www.flowdock.com/api/team-inbox and https://www.flowdock.com/api/chat)", "properties": { "from_name": { "type": "string", "description": "(inbox only) Name of the message sender" }, "from_address": { "type": "string", "description": "(inbox only - required) Email address of the message sender" }, "tags": { "type": "string", "description": "tags of the message, separated by commas" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "external_user_name": { "type": "string", "description": "(chat only - required) Name of the \"user\" sending the message" }, "project": { "type": "string", "description": "(inbox only) Human readable identifier for more detailed message categorization" }, "source": { "type": "string", "description": "(inbox only - required) Human readable identifier of the application that uses the Flowdock API" }, "token": { "type": "string", "description": "API token." }, "link": { "type": "string", "description": "(inbox only) Link associated with the message. This will be used to link the message subject in Team Inbox." }, "msg": { "type": "string", "description": "Content of the message" }, "reply_to": { "type": "string", "description": "(inbox only) Email address for replies" }, "type": { "type": "string", "description": "Whether to post to 'inbox' or 'chat'" }, "subject": { "type": "string", "description": "(inbox only - required) Subject line of the message" } } }, "bigip_routedomain": { "required": [ "id" ], "type": "object", "description": "Manage route domains on a BIG-IP", "properties": { "flow_eviction_policy": { "type": "string", "description": "The eviction policy to use with this route domain. Apply an eviction policy to provide customized responses to flow overflows and slow flows on the route domain." }, "service_policy": { "type": "string", "description": "Service policy to associate with the route domain." }, "description": { "type": "string", "description": "Specifies descriptive text that identifies the route domain." }, "parent": { "type": "string", "description": "Specifies the route domain the system searches when it cannot\nfind a route in the configured domain.\n" }, "connection_limit": { "type": "string", "description": "The maximum number of concurrent connections allowed for the route domain. Setting this to C(0) turns off connection limits." }, "strict": { "type": "string", "description": "Specifies whether the system enforces cross-routing restrictions or not." }, "state": { "type": "string", "description": "Default: present\n\nWhether the route domain should exist or not." }, "routing_protocol": { "type": "string", "description": "Dynamic routing protocols for the system to use in the route domain." }, "bwc_policy": { "type": "string", "description": "The bandwidth controller for the route domain." }, "vlans": { "type": "string", "description": "VLANs for the system to use in the route domain" }, "id": { "type": "string", "description": "The unique identifying integer representing the route domain." } } }, "win_msi": { "required": [ "path" ], "type": "object", "description": "Installs or uninstalls a Windows MSI file that is already located on the target server", "properties": { "extra_args": { "type": "string", "description": "Additional arguments to pass to the msiexec.exe command" }, "path": { "type": "string", "description": "File system path to the MSI file to install" }, "state": { "type": "string", "description": "Default: present\n\nWhether the MSI file should be installed or uninstalled" }, "creates": { "type": "string", "description": "Path to a file created by installing the MSI to prevent from attempting to reinstall the package on every run" }, "wait": { "type": "string", "description": "Specify whether to wait for install or uninstall to complete before continuing." } } }, "edgeos_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running EdgeOS. This module prepends all of the base network fact keys with U(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, default, config, and neighbors. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "win_msg": { "type": "object", "description": "Wraps the msg.exe command in order to send messages to Windows hosts.", "properties": { "msg": { "type": "string", "description": "Default: Hello world!\n\nThe text of the message to be displayed.\nThe message must be less than 256 characters." }, "to": { "type": "string", "description": "Default: *\n\nWho to send the message to. Can be a username, sessionname or sessionid." }, "wait": { "description": "Default: no\n\nWhether to wait for users to respond. Module will only wait for the number of seconds specified in display_seconds or 10 seconds if not specified. However, if I(wait) is true, the message is sent to each logged on user in turn, waiting for the user to either press 'ok' or for the timeout to elapse before moving on to the next user.", "$ref": "#/definitions/ansible_truth" }, "display_seconds": { "type": "string", "description": "Default: 10\n\nHow long to wait for receiver to acknowledge message, in seconds." } } }, "aci_epg_monitoring_policy": { "allOf": [ { "allOf": [ { "not": { "required": [ "monitoring_policy", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "monitoring_policy" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "tenant" ], "type": "object" }, { "required": [ "tenant_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "Manage monitoring policies on Cisco ACI fabrics.", "properties": { "name": { "type": "string", "description": "The name of the monitoring policy." }, "descr": { "type": "string", "description": "Description for the monitoring policy." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "monitoring_policy": { "type": "string", "description": "The name of the monitoring policy." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "description": { "type": "string", "description": "Description for the monitoring policy." } } }, "pip": { "type": "object", "description": "Manage Python library dependencies. To use this module, one of the following keys is required: C(name) or C(requirements).", "properties": { "virtualenv": { "type": "string", "description": "An optional path to a I(virtualenv) directory to install into. It cannot be specified together with the 'executable' parameter (added in 2.1). If the virtualenv does not exist, it will be created before installing packages. The optional virtualenv_site_packages, virtualenv_command, and virtualenv_python options affect the creation of the virtualenv." }, "extra_args": { "type": "string", "description": "Extra arguments passed to pip." }, "virtualenv_command": { "type": "string", "description": "Default: virtualenv\n\nThe command or a pathname to the command to create the virtual environment with. For example C(pyvenv), C(virtualenv), C(virtualenv2), C(~/bin/virtualenv), C(/usr/local/bin/virtualenv)." }, "chdir": { "type": "string", "description": "cd into this directory before running the command" }, "requirements": { "type": "string", "description": "The path to a pip requirements file, which should be local to the remote system. File can be specified as a relative path if using the chdir option." }, "name": { "type": "string", "description": "The name of a Python library to install or the url of the remote package.\nAs of 2.2 you can supply a list of names." }, "virtualenv_python": { "type": "string", "description": "The Python executable used for creating the virtual environment. For example C(python3.5), C(python2.7). When not specified, the Python version used to run the ansible module is used." }, "umask": { "type": "string", "description": "The system umask to apply before installing the pip package. This is useful, for example, when installing on systems that have a very restrictive umask by default (e.g., 0077) and you want to pip install packages which are to be used by all users. Note that this requires you to specify desired umask mode in octal, with a leading 0 (e.g., 0077)." }, "editable": { "type": "string", "description": "Default: True\n\nPass the editable flag for versioning URLs." }, "executable": { "type": "string", "description": "The explicit executable or a pathname to the executable to be used to run pip for a specific version of Python installed in the system. For example C(pip-3.3), if there are both Python 2.7 and 3.3 installations in the system and you want to run pip for the Python 3.3 installation. It cannot be specified together with the 'virtualenv' parameter (added in 2.1). By default, it will take the appropriate version for the python interpreter use by ansible, e.g. pip3 on python 3, and pip2 or pip on python 2." }, "virtualenv_site_packages": { "type": "string", "description": "Default: no\n\nWhether the virtual environment will inherit packages from the global site-packages directory. Note that if this setting is changed on an already existing virtual environment it will not have any effect, the environment must be deleted and newly created." }, "state": { "type": "string", "description": "Default: present\n\nThe state of module\nThe 'forcereinstall' option is only available in Ansible 2.1 and above." }, "version": { "type": "string", "description": "The version number to install of the Python library specified in the I(name) parameter" } } }, "bigip_device_trust": { "required": [ "peer_server" ], "type": "object", "description": "Manage the trust relationships between BIG-IPs. Devices, once peered, cannot be updated. If updating is needed, the peer must first be removed before it can be re-added to the trust.", "properties": { "peer_user": { "type": "string", "description": "The API username of the remote peer device that you are trusting. Note that the CLI user cannot be used unless it too has an API account. If this value is not specified, then the value of C(user), or the environment variable C(F5_USER) will be used." }, "peer_password": { "type": "string", "description": "The password of the API username of the remote peer device that you are trusting. If this value is not specified, then the value of C(password), or the environment variable C(F5_PASSWORD) will be used." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures the specified devices are trusted.\nWhen C(absent), removes the device trusts." }, "peer_server": { "type": "string", "description": "The peer address to connect to and trust for synchronizing configuration. This is typically the management address of the remote device, but may also be a Self IP." }, "type": { "type": "string", "description": "Default: peer\n\nSpecifies whether the device you are adding is a Peer or a Subordinate. The default is C(peer).\nThe difference between the two is a matter of mitigating risk of compromise.\nA subordinate device cannot sign a certificate for another device.\nIn the case where the security of an authority device in a trust domain is compromised, the risk of compromise is minimized for any subordinate device.\nDesignating devices as subordinate devices is recommended for device groups with a large number of member devices, where the risk of compromise is high." }, "peer_hostname": { "type": "string", "description": "The hostname that you want to associate with the device. This value will be used to easily distinguish this device in BIG-IP configuration. If not specified, the value of C(peer_server) will be used as a default." } } }, "avi_seproperties": { "type": "object", "description": "This module is used to configure SeProperties object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "se_agent_properties": { "type": "string", "description": "Seagentproperties settings for seproperties." }, "uuid": { "type": "string", "description": "Unique object identifier of the object.\nDefault value when not specified in API or module is interpreted by Avi Controller as default." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "se_runtime_properties": { "type": "string", "description": "Seruntimeproperties settings for seproperties." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "se_bootup_properties": { "type": "string", "description": "Sebootupproperties settings for seproperties." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." } } }, "cs_vpc": { "allOf": [ { "allOf": [ { "not": { "required": [ "tags", "tag" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and delete VPCs.", "properties": { "display_text": { "type": "string", "description": "Display text of the VPC.\nIf not set, C(name) will be used for creating." }, "vpc_offering": { "type": "string", "description": "Name of the VPC offering.\nIf not set, default VPC offering is used." }, "poll_async": { "type": "string", "description": "Default: True\n\nPoll async jobs until job has finished." }, "name": { "type": "string", "description": "Name of the VPC." }, "zone": { "type": "string", "description": "Name of the zone.\nIf not set, default zone is used." }, "tags": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nFor deleting all tags, set an empty list e.g. C(tags: [])." }, "clean_up": { "type": "string", "description": "Whether to redeploy a VPC router or not when C(state=restarted)" }, "project": { "type": "string", "description": "Name of the project the VPC is related to." }, "state": { "type": "string", "description": "Default: present\n\nState of the VPC." }, "tag": { "type": "array", "description": "List of tags. Tags are a list of dictionaries having keys C(key) and C(value).\nFor deleting all tags, set an empty list e.g. C(tags: [])." }, "domain": { "type": "string", "description": "Domain the VPC is related to." }, "account": { "type": "string", "description": "Account the VPC is related to." }, "cidr": { "type": "string", "description": "CIDR of the VPC, e.g. 10.1.0.0/16\nAll VPC guest networks' CIDRs must be within this CIDR.\nRequired on C(state=present)." }, "network_domain": { "type": "string", "description": "Network domain for the VPC.\nAll networks inside the VPC will belong to this domain.\nOnly considered while creating the VPC, can not be changed." } } }, "mongodb_parameter": { "required": [ "database", "param", "value" ], "type": "object", "description": "Change an administrative parameter on a MongoDB server.", "properties": { "login_port": { "type": "string", "description": "Default: 27017\n\nThe port to connect to" }, "database": { "type": "string", "description": "The name of the database to add/remove the user from" }, "login_user": { "type": "string", "description": "The username used to authenticate with" }, "login_host": { "type": "string", "description": "Default: localhost\n\nThe host running the database" }, "login_password": { "type": "string", "description": "The password used to authenticate with" }, "param": { "type": "string", "description": "MongoDB administrative parameter to modify" }, "ssl": { "type": "string", "description": "Whether to use an SSL connection when connecting to the database" }, "param_type": { "type": "string", "description": "Default: str\n\nDefine the parameter value (str, int)" }, "value": { "type": "string", "description": "MongoDB administrative parameter value to set" }, "login_database": { "type": "string", "description": "The database where login credentials are stored" }, "replica_set": { "type": "string", "description": "Replica set to connect to (automatically connects to primary for writes)" } } }, "rollbar_deployment": { "required": [ "environment", "token", "revision" ], "type": "object", "description": "Notify Rollbar about app deployments (see https://rollbar.com/docs/deploys_other/)", "properties": { "comment": { "type": "string", "description": "Deploy comment (e.g. what is being deployed)." }, "rollbar_user": { "type": "string", "description": "Rollbar username of the user who deployed." }, "url": { "type": "string", "description": "Default: https://api.rollbar.com/api/1/deploy/\n\nOptional URL to submit the notification to." }, "environment": { "type": "string", "description": "Name of the environment being deployed, e.g. 'production'." }, "token": { "type": "string", "description": "Your project access token." }, "user": { "type": "string", "description": "User who deployed." }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "revision": { "type": "string", "description": "Revision number/sha being deployed." } } }, "influxdb_query": { "required": [ "query", "database_name" ], "type": "object", "description": "Query data points from InfluxDB.", "properties": { "query": { "type": "string", "description": "Query to be executed." }, "database_name": { "type": "string", "description": "Name of the database." } } }, "linode": { "allOf": [ { "allOf": [ { "not": { "required": [ "linode_id", "lid" ], "type": "object" } } ] } ], "type": "object", "description": "creates / deletes a Linode Public Cloud instance and optionally waits for it to be 'running'.", "properties": { "lid": { "type": "string", "description": "Unique ID of a linode server" }, "datacenter": { "type": "string", "description": "datacenter to create an instance in (Linode Datacenter)" }, "password": { "type": "string", "description": "root password to apply to a new server (auto generated if missing)" }, "name": { "type": "string", "description": "Name to give the instance (alphanumeric, dashes, underscore)\nTo keep sanity on the Linode Web Console, name is prepended with LinodeID_" }, "payment_term": { "type": "string", "description": "Default: 1\n\npayment term to use for the instance (payment term in months)" }, "linode_id": { "type": "string", "description": "Unique ID of a linode server" }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the resource" }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nhow long before wait gives up, in seconds" }, "swap": { "type": "string", "description": "Default: 512\n\nswap size in MB" }, "wait": { "type": "string", "description": "Default: no\n\nwait for the instance to be in state 'running' before returning" }, "distribution": { "type": "string", "description": "distribution to use for the instance (Linode Distribution)" }, "api_key": { "type": "string", "description": "Linode API key" }, "ssh_pub_key": { "type": "string", "description": "SSH public key applied to root user" }, "plan": { "type": "string", "description": "plan to use for the instance (Linode plan)" } } }, "nxos_pim_interface": { "required": [ "jp_policy_out", "interface" ], "type": "object", "description": "Manages PIM interface configuration settings.", "properties": { "jp_policy_in": { "type": "string", "description": "Policy for join-prune messages (inbound)." }, "dr_prio": { "type": "string", "description": "Configures priority for PIM DR election on interface." }, "sparse": { "type": "string", "description": "Enable/disable sparse-mode on the interface." }, "jp_type_in": { "type": "string", "description": "Type of policy mapped to C(jp_policy_in)." }, "jp_policy_out": { "type": "string", "description": "Policy for join-prune messages (outbound)." }, "neighbor_type": { "type": "string", "description": "Type of policy mapped to neighbor_policy." }, "state": { "type": "string", "description": "Default: present\n\nManages desired state of the resource." }, "neighbor_policy": { "type": "string", "description": "Configures a neighbor policy for filtering adjacencies." }, "hello_interval": { "type": "string", "description": "Hello interval in milliseconds for this interface." }, "interface": { "type": "string", "description": "Full name of the interface such as Ethernet1/33." }, "hello_auth_key": { "type": "string", "description": "Authentication for hellos on this interface." }, "border": { "type": "string", "description": "Configures interface to be a boundary of a PIM domain." }, "jp_type_out": { "type": "string", "description": "Type of policy mapped to C(jp_policy_out)." } } }, "nclu": { "type": "object", "description": "Interface to the Network Command Line Utility, developed to make it easier to configure operating systems running ifupdown2 and Quagga, such as Cumulus Linux. Command documentation is available at U(https://docs.cumulusnetworks.com/display/DOCS/Network+Command+Line+Utility)", "properties": { "commands": { "type": "string", "description": "A list of strings containing the net commands to run. Mutually exclusive with I(template)." }, "description": { "type": "string", "description": "Default: Ansible-originated commit\n\nCommit description that will be recorded to the commit log if I(commit) or I(atomic) are true." }, "abort": { "type": "string", "description": "Boolean. When true, perform a 'net abort' before the block. This cleans out any uncommitted changes in the buffer. Mutually exclusive with I(atomic)." }, "atomic": { "type": "string", "description": "When true, equivalent to both I(commit) and I(abort) being true. Mutually exclusive with I(commit) and I(atomic)." }, "template": { "type": "string", "description": "A single, multi-line string with jinja2 formatting. This string will be broken by lines, and each line will be run through net. Mutually exclusive with I(commands)." }, "commit": { "type": "string", "description": "When true, performs a 'net commit' at the end of the block. Mutually exclusive with I(atomic)." } } }, "os_keystone_endpoint": { "required": [ "interface", "service", "url" ], "type": "object", "description": "Create, update, or delete OpenStack Identity service endpoints. If a service with the same combination of I(service), I(interface) and I(region) exist, the I(url) and I(state) (C(present) or C(absent)) will be updated.", "properties": { "service": { "type": "string", "description": "Name or id of the service." }, "url": { "type": "string", "description": "URL of the service." }, "region": { "type": "string", "description": "Region that the service belongs to. Note that I(region_name) is used for authentication." }, "enabled": { "type": "string", "description": "Default: True\n\nIs the service enabled." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be C(present) or C(absent)." }, "interface": { "type": "string", "description": "Interface of the service." } } }, "ucs_lan_connectivity": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] } ], "type": "object", "description": "Configures LAN Connectivity Policies on Cisco UCS Manager.\nExamples can be used with the UCS Platform Emulator U(https://communities.cisco.com/ucspe).", "properties": { "name": { "type": "string", "description": "The name of the LAN Connectivity Policy.\nThis name can be between 1 and 16 alphanumeric characters.\nYou cannot use spaces or any special characters other than - (hyphen), \"_\" (underscore), : (colon), and . (period).\nYou cannot change this name after the policy is created." }, "descr": { "type": "string", "description": "A description of the LAN Connectivity Policy.\nCisco recommends including information about where and when to use the policy.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." }, "org_dn": { "type": "string", "description": "Default: org-root\n\nOrg dn (distinguished name)" }, "vnic_list": { "type": "array", "description": "List of vNICs used by the LAN Connectivity Policy.\nvNICs used by the LAN Connectivity Policy must be created from a vNIC template.\nEach list element has the following suboptions:\n= name\n The name of the vNIC (required).\n= vnic_template\n The name of the vNIC template (required).\n- adapter_policy\n The name of the Ethernet adapter policy.\n A user defined policy can be used, or one of the system defined policies.\n- order\n String specifying the vNIC assignment order (e.g., '1', '2').\n [Default: unspecified]" }, "state": { "type": "string", "description": "Default: present\n\nIf C(present), will verify LAN Connectivity Policies are present and will create if needed.\nIf C(absent), will verify LAN Connectivity Policies are absent and will delete if needed." }, "description": { "type": "string", "description": "A description of the LAN Connectivity Policy.\nCisco recommends including information about where and when to use the policy.\nEnter up to 256 characters.\nYou can use any characters or spaces except the following:\n` (accent mark), (backslash), ^ (carat), \" (double quote), = (equal sign), > (greater than), < (less than), or ' (single quote)." } } }, "clc_group": { "required": [ "name" ], "type": "object", "description": "Create or delete Server Groups at Centurylink Centurylink Cloud", "properties": { "description": { "type": "string", "description": "A description of the Server Group" }, "parent": { "type": "string", "description": "The parent group of the server group. If parent is not provided, it creates the group at top level." }, "state": { "type": "string", "description": "Default: present\n\nWhether to create or delete the group" }, "location": { "type": "string", "description": "Datacenter to create the group in. If location is not provided, the group gets created in the default datacenter associated with the account" }, "wait": { "type": "string", "description": "Default: True\n\nWhether to wait for the tasks to finish before returning." }, "name": { "type": "string", "description": "The name of the Server Group" } } }, "infinity": { "required": [ "username", "server_ip", "action", "password" ], "type": "object", "description": "Manage Infinity IPAM using REST API", "properties": { "username": { "type": "string", "description": "Username to access Infinity\nThe user must have Rest API privileges" }, "network_size": { "type": "string", "description": "Network bitmask (e.g. 255.255.255.220) or CIDR format (e.g., /26)" }, "network_location": { "type": "string", "description": "Default: -1\n\nthe parent network id for a given network" }, "network_family": { "type": "string", "description": "Default: 4\n\nNetwork family defined by Infinity, e.g. IPv4, IPv6 and Dual stack" }, "network_id": { "type": "string", "description": "Network ID" }, "network_name": { "type": "string", "description": "The name of a network" }, "network_address": { "type": "string", "description": "Network address with CIDR format (e.g., 192.168.310.0)" }, "server_ip": { "type": "string", "description": "Infinity server_ip with IP address" }, "action": { "type": "string", "description": "Action to perform" }, "password": { "type": "string", "description": "Infinity password" }, "ip_address": { "type": "string", "description": "IP Address for a reservation or a release" }, "network_type": { "type": "string", "description": "Default: lan\n\nNetwork type defined by Infinity" } } }, "ohai": { "type": "object", "description": "Similar to the M(facter) module, this runs the I(Ohai) discovery program (U(http://wiki.opscode.com/display/chef/Ohai)) on the remote host and returns JSON inventory data. I(Ohai) data is a bit more verbose and nested than I(facter).", "properties": {} }, "vmware_guest_find": { "type": "object", "description": "Find the folder path(s) for a virtual machine by name or UUID", "properties": { "datacenter": { "type": "string", "description": "Destination datacenter for the find operation.\nDeprecated in 2.5, will be removed in 2.9 release." }, "name": { "type": "string", "description": "Name of the VM to work with.\nThis is required if C(uuid) parameter is not supplied." }, "uuid": { "type": "string", "description": "UUID of the instance to manage if known, this is VMware's BIOS UUID.\nThis is required if C(name) parameter is not supplied." } } }, "ce_bgp_neighbor": { "required": [ "remote_as", "vrf_name", "peer_addr" ], "type": "object", "description": "Manages BGP peer configurations on HUAWEI CloudEngine switches.", "properties": { "prepend_global_as": { "type": "string", "description": "Default: no_use\n\nAdd the global AS number to the Update packets to be advertised." }, "ebgp_max_hop": { "type": "string", "description": "Maximum number of hops in an indirect EBGP connection. The value is an ranging from 1 to 255." }, "is_ignore": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the session with a specified peer is torn down and all related routing entries are cleared. If the value is false, the session with a specified peer is retained." }, "prepend_fake_as": { "type": "string", "description": "Default: no_use\n\nAdd the Fake AS number to received Update packets." }, "fake_as": { "type": "string", "description": "Fake AS number that is specified for a local peer. The value is a string of 1 to 11 characters." }, "is_single_hop": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the system is enabled to preferentially use the single-hop mode for BFD session setup between IBGP peers. If the value is false, the system is disabled from preferentially using the single-hop mode for BFD session setup between IBGP peers." }, "conventional": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the router has all extended capabilities. If the value is false, the router does not have all extended capabilities." }, "remote_as": { "type": "string", "description": "AS number of a peer. The value is a string of 1 to 11 characters." }, "valid_ttl_hops": { "type": "string", "description": "Enable GTSM on a peer or peer group. The valid-TTL-Value parameter is used to specify the number of TTL hops to be detected. The value is an integer ranging from 1 to 255." }, "tx_interval": { "type": "string", "description": "Specify the minimum interval at which BFD packets are sent. The value is an integer ranging from 50 to 1000, in milliseconds." }, "pswd_cipher_text": { "type": "string", "description": "The character string in a password identifies the contents of the password, spaces not supported. The value is a string of 1 to 255 characters." }, "local_if_name": { "type": "string", "description": "Name of a source interface that sends BGP packets. The value is a string of 1 to 63 characters." }, "rx_interval": { "type": "string", "description": "Specify the minimum interval at which BFD packets are received. The value is an integer ranging from 50 to 1000, in milliseconds." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "pswd_type": { "type": "string", "description": "Enable BGP peers to establish a TCP connection and perform the Message Digest 5 (MD5) authentication for BGP messages." }, "dual_as": { "type": "string", "description": "Default: no_use\n\nIf the value is true, the EBGP peer can use either a fake AS number or the actual AS number. If the value is false, the EBGP peer can only use a fake AS number." }, "connect_mode": { "type": "string", "description": "The value can be Connect-only, Listen-only, or Both." }, "description": { "type": "string", "description": "Description of a peer, which can be letters or digits. The value is a string of 1 to 80 characters." }, "is_log_change": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP is enabled to record peer session status and event information. If the value is false, BGP is disabled from recording peer session status and event information." }, "keep_alive_time": { "type": "string", "description": "Specify the Keepalive time of a peer or peer group. The value is an integer ranging from 0 to 21845. The default value is 60." }, "key_chain_name": { "type": "string", "description": "Specify the Keychain authentication name used when BGP peers establish a TCP connection. The value is a string of 1 to 47 case-insensitive characters." }, "conn_retry_time": { "type": "string", "description": "ConnectRetry interval. The value is an integer ranging from 1 to 65535." }, "min_hold_time": { "type": "string", "description": "Specify the Min hold time of a peer or peer group." }, "multiplier": { "type": "string", "description": "Specify the detection multiplier. The default value is 3. The value is an integer ranging from 3 to 50." }, "hold_time": { "type": "string", "description": "Specify the Hold time of a peer or peer group. The value is 0 or an integer ranging from 3 to 65535." }, "is_bfd_block": { "type": "string", "description": "Default: no_use\n\nIf the value is true, peers are enabled to inherit the BFD function from the peer group. If the value is false, peers are disabled to inherit the BFD function from the peer group." }, "tcp_MSS": { "type": "string", "description": "Maximum TCP MSS value used for TCP connection establishment for a peer. The value is an integer ranging from 176 to 4096." }, "is_bfd_enable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BFD is enabled. If the value is false, BFD is disabled." }, "route_refresh": { "type": "string", "description": "Default: no_use\n\nIf the value is true, BGP is enabled to advertise REFRESH packets. If the value is false, the route refresh function is enabled." }, "peer_addr": { "type": "string", "description": "Connection address of a peer, which can be an IPv4 or IPv6 address." }, "vrf_name": { "type": "string", "description": "Name of a BGP instance. The name is a case-sensitive string of characters. The BGP instance can be used only after the corresponding VPN instance is created." }, "mpls_local_ifnet_disable": { "type": "string", "description": "Default: no_use\n\nIf the value is true, peer create MPLS Local IFNET disable. If the value is false, peer create MPLS Local IFNET enable." } } }, "azure_rm_securitygroup_facts": { "required": [ "resource_group" ], "type": "object", "description": "Get facts for a specific security group or all security groups within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific security group." }, "resource_group": { "type": "string", "description": "Name of the resource group to use." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "lambda_alias": { "allOf": [ { "allOf": [ { "not": { "required": [ "version", "function_version" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "name", "alias_name" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "alias_name" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module allows the management of AWS Lambda functions aliases via the Ansible framework. It is idempotent and supports \"Check\" mode. Use module M(lambda) to manage the lambda function itself and M(lambda_event) to manage event source mappings.", "properties": { "description": { "type": "string", "description": "A short, user-defined function alias description." }, "state": { "type": "string", "description": "Default: present\n\nDescribes the desired state." }, "version": { "type": "string", "description": "Version associated with the Lambda function alias. A value of 0 (or omitted parameter) sets the alias to the $LATEST version." }, "function_name": { "type": "string", "description": "The name of the function alias." }, "alias_name": { "type": "string", "description": "Name of the function alias." }, "function_version": { "type": "string", "description": "Version associated with the Lambda function alias. A value of 0 (or omitted parameter) sets the alias to the $LATEST version." }, "name": { "type": "string", "description": "Name of the function alias." } } }, "bigip_monitor_snmp_dca": { "required": [ "name" ], "type": "object", "description": "The BIG-IP has an SNMP data collecting agent (DCA) that can query remote SNMP agents of various types, including the UC Davis agent (UCD) and the Windows 2000 Server agent (WIN2000).", "properties": { "timeout": { "type": "string", "description": "Specifies the number of seconds the target has in which to respond to the monitor request. When creating a new monitor, the default is C(30) seconds. If the target responds within the set time period, it is considered 'up'. If the target does not respond within the set time period, it is considered 'down'. When this value is set to 0 (zero), the system uses the interval from the parent monitor. Note that C(timeout) and C(time_until_up) combine to control when a resource is set to up." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "disk_threshold": { "type": "string", "description": "Specifies the maximum acceptable disk usage on the target server. When creating a new monitor, the default is C(90) percent." }, "parent": { "type": "string", "description": "Default: /Common/snmp_dca\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(snmp_dca) parent on the C(Common) partition." }, "cpu_coefficient": { "type": "string", "description": "Specifies the coefficient that the system uses to calculate the weight of the CPU threshold in the dynamic ratio load balancing algorithm. When creating a new monitor, the default is C(1.5)." }, "time_until_up": { "type": "string", "description": "Specifies the number of seconds to wait after a resource first responds correctly to the monitor before setting the resource to 'up'. During the interval, all responses from the resource must be correct. When the interval expires, the resource is marked 'up'. A value of 0, means that the resource is marked up immediately upon receipt of the first correct response. When creating a new monitor, the default is C(0)." }, "interval": { "type": "string", "description": "Specifies, in seconds, the frequency at which the system issues the monitor check when either the resource is down or the status of the resource is unknown. When creating a new monitor, the default is C(10)." }, "memory_threshold": { "type": "string", "description": "Specifies the maximum acceptable memory usage on the target server. When creating a new monitor, the default is C(70) percent." }, "community": { "type": "string", "description": "Specifies the community name that the system must use to authenticate with the host server through SNMP. When creating a new monitor, the default value is C(public). Note that this value is case sensitive." }, "name": { "type": "string", "description": "Monitor name." }, "disk_coefficient": { "type": "string", "description": "Specifies the coefficient that the system uses to calculate the weight of the disk threshold in the dynamic ratio load balancing algorithm. When creating a new monitor, the default is C(2.0)." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "cpu_threshold": { "type": "string", "description": "Specifies the maximum acceptable CPU usage on the target server. When creating a new monitor, the default is C(80) percent." }, "agent_type": { "type": "string", "description": "Specifies the SNMP agent running on the monitored server. When creating a new monitor, the default is C(UCD) (UC-Davis)." }, "memory_coefficient": { "type": "string", "description": "Specifies the coefficient that the system uses to calculate the weight of the memory threshold in the dynamic ratio load balancing algorithm. When creating a new monitor, the default is C(1.0)." }, "version": { "type": "string", "description": "Specifies the version of SNMP that the host server uses. When creating a new monitor, the default is C(v1). When C(v1), specifies that the host server uses SNMP version 1. When C(v2c), specifies that the host server uses SNMP version 2c." }, "description": { "type": "string", "description": "Specifies descriptive text that identifies the monitor." } } }, "pkg5": { "allOf": [ { "allOf": [ { "not": { "required": [ "accept_licenses", "accept_licences", "accept" ], "type": "object" } } ] } ], "type": "object", "description": "IPS packages are the native packages in Solaris 11 and higher.", "properties": { "accept_licenses": { "type": "string", "description": "Accept any licences." }, "accept_licences": { "type": "string", "description": "Accept any licences." }, "state": { "type": "string", "description": "Default: present\n\nWhether to install (I(present), I(latest)), or remove (I(absent)) a package." }, "name": { "type": "string", "description": "An FRMI of the package(s) to be installed/removed/updated.\nMultiple packages may be specified, separated by C(,)." }, "accept": { "type": "string", "description": "Accept any licences." } } }, "slackpkg": { "required": [ "name" ], "type": "object", "description": "Manage binary packages for Slackware using 'slackpkg' which is available in versions after 12.2.", "properties": { "state": { "type": "string", "description": "Default: present\n\nstate of the package, you can use \"installed\" as an alias for C(present) and removed as one for C(absent)." }, "update_cache": { "type": "string", "description": "update the package database first" }, "name": { "type": "string", "description": "name of package to install/remove" } } }, "filesystem": { "required": [ "dev", "fstype" ], "type": "object", "description": "This module creates file system.", "properties": { "resizefs": { "type": "string", "description": "Default: no\n\nIf yes, if the block device and filessytem size differ, grow the filesystem into the space. Note, XFS Will only grow if mounted." }, "force": { "type": "string", "description": "Default: no\n\nIf yes, allows to create new filesystem on devices that already has filesystem." }, "opts": { "type": "array", "description": "List of options to be passed to mkfs command." }, "dev": { "type": "string", "description": "Target block device." }, "fstype": { "type": "string", "description": "File System type to be created.\nreiserfs support was added in 2.2." } } }, "azure_rm_sqlserver": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete instance of SQL Server", "properties": { "name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "admin_username": { "type": "string", "description": "Administrator username for the server. Once created it cannot be changed." }, "version": { "type": "string", "description": "The version of the server. For example '12.0'." }, "location": { "type": "string", "description": "Resource location." }, "identity": { "type": "string", "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resour ce. Possible values include: 'SystemAssigned'" }, "admin_password": { "type": "string", "description": "The administrator login password (required for server creation)." } } }, "quantum_floating_ip_associate": { "required": [ "instance_name", "login_tenant_name", "login_password", "login_username", "ip_address" ], "type": "object", "description": "Associates or disassociates a specific floating IP with a particular instance", "properties": { "region_name": { "type": "string", "description": "Default: None\n\nname of the region" }, "instance_name": { "type": "string", "description": "Default: None\n\nname of the instance to which the public IP should be assigned" }, "login_tenant_name": { "type": "string", "description": "Default: True\n\nthe tenant name of the login user" }, "state": { "type": "string", "description": "Default: present\n\nindicates the desired state of the resource" }, "auth_url": { "type": "string", "description": "Default: http://127.0.0.1:35357/v2.0/\n\nthe keystone url for authentication" }, "login_password": { "type": "string", "description": "Default: yes\n\npassword of login user" }, "login_username": { "type": "string", "description": "Default: admin\n\nlogin username to authenticate to keystone" }, "ip_address": { "type": "string", "description": "Default: None\n\nfloating ip that should be assigned to the instance" } } }, "django_manage": { "required": [ "app_path", "command" ], "type": "object", "description": "Manages a Django application using the I(manage.py) application frontend to I(django-admin). With the I(virtualenv) parameter, all management commands will be executed by the given I(virtualenv) installation.", "properties": { "virtualenv": { "type": "string", "description": "An optional path to a I(virtualenv) installation to use while running the manage application." }, "app_path": { "type": "string", "description": "The path to the root of the Django application where B(manage.py) lives." }, "database": { "type": "string", "description": "The database to target. Used by the 'createcachetable', 'flush', 'loaddata', and 'syncdb' commands." }, "pythonpath": { "type": "string", "description": "A directory to add to the Python path. Typically used to include the settings module if it is located external to the application directory." }, "settings": { "type": "string", "description": "The Python path to the application's settings module, such as 'myapp.settings'." }, "apps": { "type": "string", "description": "A list of space-delimited apps to target. Used by the 'test' command." }, "cache_table": { "type": "string", "description": "The name of the table used for database-backed caching. Used by the 'createcachetable' command." }, "merge": { "type": "string", "description": "Will run out-of-order or missing migrations as they are not rollback migrations, you can only use this parameter with 'migrate' command" }, "command": { "type": "string", "description": "The name of the Django management command to run. Built in commands are cleanup, collectstatic, flush, loaddata, migrate, runfcgi, syncdb, test, and validate.\nOther commands can be entered, but will fail if they're unknown to Django. Other commands that may prompt for user input should be run with the I(--noinput) flag." }, "skip": { "type": "string", "description": "Will skip over out-of-order missing migrations, you can only use this parameter with I(migrate)" }, "link": { "type": "string", "description": "Will create links to the files instead of copying them, you can only use this parameter with 'collectstatic' command" }, "fixtures": { "type": "string", "description": "A space-delimited list of fixture file names to load in the database. B(Required) by the 'loaddata' command." }, "failfast": { "type": "string", "description": "Default: no\n\nFail the command immediately if a test fails. Used by the 'test' command." } } }, "pn_vrouter": { "required": [ "pn_name", "state" ], "type": "object", "description": "Execute vrouter-create, vrouter-delete, vrouter-modify command.\nEach fabric, cluster, standalone switch, or virtual network (VNET) can provide its tenants with a virtual router (vRouter) service that forwards traffic between networks and implements Layer 3 protocols.\nC(vrouter-create) creates a new vRouter service.\nC(vrouter-delete) deletes a vRouter service.\nC(vrouter-modify) modifies a vRouter service.", "properties": { "pn_ospf_redistribute": { "type": "string", "description": "Specify how OSPF routes are redistributed." }, "pn_name": { "type": "string", "description": "Specify the name of the vRouter." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to create vrouter, 'absent' to delete vrouter and 'update' to modify vrouter." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_bgp_redistribute": { "type": "string", "description": "Specify how BGP routes are redistributed." }, "pn_router_type": { "type": "string", "description": "Specify if the vRouter uses software or hardware.\nNote that if you specify hardware as router type, you cannot assign IP addresses using DHCP. You must specify a static IP address." }, "pn_hw_vrrp_id": { "type": "string", "description": "Specifies the VRRP ID for a hardware vrouter." }, "pn_vnet": { "type": "string", "description": "Specify the name of the VNET.\nRequired for vrouter-create." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_rip_redistribute": { "type": "string", "description": "Specify how RIP routes are redistributed." }, "pn_bgp_options": { "type": "string", "description": "Specify other BGP options as a whitespaces separated string within single quotes ''." }, "pn_router_id": { "type": "string", "description": "Specify the vRouter IP address." }, "pn_bgp_max_paths": { "type": "string", "description": "Specify the maximum number of paths for BGP. This is a number between 1 and 255 or 0 to unset." }, "pn_service_state": { "type": "string", "description": "Specify to enable or disable vRouter service." }, "pn_service_type": { "type": "string", "description": "Specify if the vRouter is a dedicated or shared VNET service." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the CLI on." }, "pn_ospf_options": { "type": "string", "description": "Specify other OSPF options as a whitespaces separated string within single quotes ''." }, "pn_bgp_as": { "type": "string", "description": "Specify the Autonomous System Number(ASN) if the vRouter runs Border Gateway Protocol(BGP)." } } }, "bigip_iapp_template": { "type": "object", "description": "Manages TCL iApp templates on a BIG-IP. This module will allow you to deploy iApp templates to the BIG-IP and manage their lifecycle. The conventional way to use this module is to import new iApps as needed or by extracting the contents of the iApp archive that is provided at downloads.f5.com and then importing all the iApps with this module. This module can also update existing iApps provided that the source of the iApp changed while the name stayed the same. Note however that this module will not reconfigure any services that may have been created using the C(bigip_iapp_service) module. iApps are normally not updated in production. Instead, new versions are deployed and then existing services are changed to consume that new template. As such, the ability to update templates in-place requires the C(force) option to be used.", "properties": { "content": { "type": "string", "description": "Sets the contents of an iApp template directly to the specified value. This is for simple values, but can be used with lookup plugins for anything complex or with formatting. C(content) must be provided when creating new templates." }, "state": { "type": "string", "description": "Default: present\n\nWhether the iApp template should exist or not." }, "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "force": { "description": "Specifies whether or not to force the uploading of an iApp. When C(yes), will force update the iApp even if there are iApp services using it. This will not update the running service though. Use C(bigip_iapp_service) to do that. When C(no), will update the iApp only if there are no iApp services using the template.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "The name of the iApp template that you want to delete. This option is only available when specifying a C(state) of C(absent) and is provided as a way to delete templates that you may no longer have the source of." } } }, "route53": { "required": [ "zone", "record", "command", "type" ], "type": "object", "description": "Creates and deletes DNS records in Amazons Route53 service", "properties": { "health_check": { "type": "string", "description": "Health check to associate with this record" }, "alias_hosted_zone_id": { "type": "string", "description": "The hosted zone identifier." }, "weight": { "type": "string", "description": "Weighted resource record sets only. Among resource record sets that have the same combination of DNS name and type, a value that determines what portion of traffic for the current resource record set is routed to the associated location." }, "alias": { "type": "string", "description": "Indicates if this is an alias record." }, "region": { "type": "string", "description": "Latency-based resource record sets only Among resource record sets that have the same combination of DNS name and type, a value that determines which region this should be associated with for the latency-based routing" }, "retry_interval": { "type": "string", "description": "Default: 500\n\nIn the case that route53 is still servicing a prior request, this module will wait and try again after this many seconds. If you have many domain names, the default of 500 seconds may be too long." }, "value": { "type": "string", "description": "The new value when creating a DNS record. Multiple comma-spaced values are allowed for non-alias records. When deleting a record all values for the record must be specified or Route53 will not delete it." }, "hosted_zone_id": { "type": "string", "description": "The Hosted Zone ID of the DNS zone to modify" }, "record": { "type": "string", "description": "The full DNS record to create or delete" }, "private_zone": { "type": "string", "description": "If set to true, the private zone matching the requested name within the domain will be used if there are both public and private zones. The default is to use the public zone." }, "wait_timeout": { "type": "string", "description": "Default: 300\n\nHow long to wait for the changes to be replicated, in seconds." }, "command": { "type": "string", "description": "Specifies the action to take." }, "alias_evaluate_target_health": { "type": "string", "description": "Whether or not to evaluate an alias target health. Useful for aliases to Elastic Load Balancers." }, "ttl": { "type": "string", "description": "Default: 3600 (one hour)\n\nThe TTL to give the new record" }, "identifier": { "type": "string", "description": "Have to be specified for Weighted, latency-based and failover resource record sets only. An identifier that differentiates among multiple resource record sets that have the same combination of DNS name and type." }, "vpc_id": { "type": "string", "description": "When used in conjunction with private_zone: true, this will only modify records in the private hosted zone attached to this VPC.\nThis allows you to have multiple private hosted zones, all with the same name, attached to different VPCs." }, "zone": { "type": "string", "description": "The DNS zone to modify" }, "type": { "type": "string", "description": "The type of DNS record to create" }, "failover": { "type": "string", "description": "Failover resource record sets only. Whether this is the primary or secondary resource record set. Allowed values are PRIMARY and SECONDARY" }, "overwrite": { "type": "string", "description": "Whether an existing record should be overwritten on create if values do not match" }, "wait": { "type": "string", "description": "Wait until the changes have been replicated to all Amazon Route 53 DNS servers." } } }, "profitbricks_volume": { "required": [ "image", "datacenter", "name" ], "type": "object", "description": "Allows you to create or remove a volume from a ProfitBricks datacenter. This module has a dependency on profitbricks >= 1.0.0", "properties": { "count": { "type": "string", "description": "Default: 1\n\nThe number of volumes you wish to create." }, "datacenter": { "type": "string", "description": "The datacenter in which to create the volumes." }, "name": { "type": "string", "description": "The name of the volumes. You can enumerate the names using auto_increment." }, "subscription_user": { "type": "string", "description": "The ProfitBricks username. Overrides the PB_SUBSCRIPTION_ID environment variable." }, "image_password": { "type": "string", "description": "Password set for the administrative user." }, "licence_type": { "type": "string", "description": "Default: UNKNOWN\n\nThe licence type for the volume. This is used when the image is non-standard." }, "bus": { "type": "string", "description": "Default: VIRTIO\n\nThe bus type." }, "image": { "type": "string", "description": "The system image ID for the volume, e.g. a3eae284-a2fe-11e4-b187-5f1f641608c8. This can also be a snapshot image ID." }, "size": { "type": "string", "description": "Default: 10\n\nThe size of the volume." }, "instance_ids": { "type": "array", "description": "list of instance ids, currently only used when state='absent' to remove instances." }, "subscription_password": { "type": "string", "description": "THe ProfitBricks password. Overrides the PB_PASSWORD environment variable." }, "state": { "type": "string", "description": "Default: present\n\ncreate or terminate datacenters" }, "wait_timeout": { "type": "string", "description": "Default: 600\n\nhow long before wait gives up, in seconds" }, "auto_increment": { "type": "string", "description": "Default: True\n\nWhether or not to increment a single number in the name for created virtual machines." }, "disk_type": { "type": "string", "description": "Default: HDD\n\nThe disk type of the volume." }, "ssh_keys": { "type": "string", "description": "Public SSH keys allowing access to the virtual machine." }, "wait": { "type": "string", "description": "Default: yes\n\nwait for the datacenter to be created before returning" } } }, "gconftool2": { "required": [ "state", "key" ], "type": "object", "description": "This module allows for the manipulation of GNOME 2 Configuration via gconftool-2. Please see the gconftool-2(1) man pages for more details.", "properties": { "direct": { "description": "Default: no\n\nAccess the config database directly, bypassing server. If direct is specified then the config_source must be specified as well. See man gconftool-2(1)", "$ref": "#/definitions/ansible_truth" }, "value": { "type": "string", "description": "Preference keys typically have simple values such as strings, integers, or lists of strings and integers. This is ignored if the state is \"get\". See man gconftool-2(1)" }, "config_source": { "type": "string", "description": "Specify a configuration source to use rather than the default path. See man gconftool-2(1)" }, "state": { "type": "string", "description": "The action to take upon the key/value." }, "value_type": { "type": "string", "description": "The type of value being set. This is ignored if the state is \"get\"." }, "key": { "type": "string", "description": "A GConf preference key is an element in the GConf repository that corresponds to an application preference. See man gconftool-2(1)" } } }, "elb_target_group_facts": { "type": "object", "description": "Gather facts about ELB target groups in AWS", "properties": { "target_group_arns": { "type": "string", "description": "The Amazon Resource Names (ARN) of the target groups." }, "load_balancer_arn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the load balancer." }, "names": { "type": "string", "description": "The names of the target groups." } } }, "capabilities": { "allOf": [ { "allOf": [ { "not": { "required": [ "capability", "cap" ], "type": "object" } }, { "oneOf": [ { "required": [ "capability" ], "type": "object" }, { "required": [ "cap" ], "type": "object" } ] } ] } ], "type": "object", "description": "This module manipulates files privileges using the Linux capabilities(7) system.", "properties": { "capability": { "type": "string", "description": "Desired capability to set (with operator and flags, if state is C(present)) or remove (if state is C(absent))" }, "path": { "type": "string", "description": "Specifies the path to the file to be managed." }, "state": { "type": "string", "description": "Default: present\n\nWhether the entry should be present or absent in the file's capabilities." }, "cap": { "type": "string", "description": "Desired capability to set (with operator and flags, if state is C(present)) or remove (if state is C(absent))" } } }, "hall": { "required": [ "msg", "room_token", "title" ], "type": "object", "description": "The M(hall) module connects to the U(https://hall.com) messaging API and allows you to deliver notication messages to rooms.", "properties": { "msg": { "type": "string", "description": "The message you wish to deliver as a notifcation" }, "room_token": { "type": "string", "description": "Room token provided to you by setting up the Ansible room integation on U(https://hall.com)" }, "picture": { "type": "string", "description": "The full URL to the image you wish to use for the Icon of the message. Defaults to U(http://cdn2.hubspot.net/hub/330046/file-769078210-png/Official_Logos/ansible_logo_black_square_small.png?t=1421076128627)" }, "title": { "type": "string", "description": "The title of the message" } } }, "ec2_elb_facts": { "allOf": [ { "allOf": [ { "not": { "required": [ "names", "elb_ids", "ec2_elbs" ], "type": "object" } } ] } ], "type": "object", "description": "Gather facts about EC2 Elastic Load Balancers in AWS", "properties": { "elb_ids": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." }, "names": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." }, "ec2_elbs": { "type": "array", "description": "List of ELB names to gather facts about. Pass this option to gather facts about a set of ELBs, otherwise, all ELBs are returned." } } }, "vmware_datastore_facts": { "type": "object", "description": "Gather facts about datastores in VMWare", "properties": { "datacenter": { "type": "string", "description": "Datacenter to search for datastores\nThis is required if cluster is not supplied" }, "name": { "type": "string", "description": "Name of a datastore to match" }, "cluster": { "type": "string", "description": "Cluster to search for datastores\nThis is required if datacenter is not supplied" } } }, "win_environment": { "required": [ "name", "level" ], "type": "object", "description": "Uses .net Environment to set or remove environment variables and can set at User, Machine or Process level.\nUser level environment variables will be set, but not available until the user has logged off and on again.", "properties": { "state": { "type": "string", "description": "Default: present\n\npresent to ensure environment variable is set, or absent to ensure it is removed" }, "name": { "type": "string", "description": "Default: no default\n\nThe name of the environment variable" }, "value": { "type": "string", "description": "Default: no default\n\nThe value to store in the environment variable. Can be omitted for state=absent" }, "level": { "type": "string", "description": "Default: no default\n\nThe level at which to set the environment variable.\nUse 'machine' to set for all users.\nUse 'user' to set for the current user that ansible is connected as.\nUse 'process' to set for the current process. Probably not that useful." } } }, "mksysb": { "required": [ "name", "storage_path" ], "type": "object", "description": "This module manages a basic AIX mksysb (image) of rootvg.", "properties": { "storage_path": { "type": "string", "description": "Storage path where the mksysb will stored." }, "name": { "type": "string", "description": "Backup name" }, "software_packing": { "type": "string", "description": "Default: no\n\nExclude files from packing option listed in C(/etc/exclude_packing.rootvg)." }, "use_snapshot": { "type": "string", "description": "Default: no\n\nCreates backup using snapshots." }, "create_map_files": { "type": "string", "description": "Default: no\n\nCreates a new MAP files." }, "extended_attrs": { "type": "string", "description": "Default: yes\n\nBackup extended attributes." }, "backup_crypt_files": { "type": "string", "description": "Default: yes\n\nBackup encrypted files." }, "new_image_data": { "type": "string", "description": "Default: yes\n\nCreates a new file data." }, "exclude_wpar_files": { "type": "string", "description": "Default: no\n\nExcludes WPAR files." }, "backup_dmapi_fs": { "type": "string", "description": "Default: yes\n\nBack up DMAPI filesystem files." }, "exclude_files": { "type": "string", "description": "Default: no\n\nExcludes files using C(/etc/rootvg.exclude)." } } }, "ipa_subca": { "required": [ "subca_desc", "subca_name", "subca_subject" ], "type": "object", "description": "Add, modify, enable, disable and delete an IPA Lightweight Sub Certificate Authorities using IPA API.", "properties": { "subca_desc": { "type": "string", "description": "The Sub Certificate Authority's description." }, "subca_name": { "type": "string", "description": "The Sub Certificate Authority name which needs to be managed." }, "state": { "type": "string", "description": "Default: present\n\nState to ensure\nState 'disable' and 'enable' is available for FreeIPA 4.4.2 version and onwards" }, "subca_subject": { "type": "string", "description": "The Sub Certificate Authority's Subject. e.g., 'CN=SampleSubCA1,O=testrelm.test'" } } }, "edgeos_command": { "required": [ "commands" ], "type": "object", "description": "This command module allows running one or more commands on a remote device running EdgeOS, such as the Ubiquiti EdgeRouter.\nThis module does not support running commands in configuration mode.\nCertain C(show) commands in EdgeOS produce many lines of output and use a custom pager that can cause this module to hang. If the value of the environment variable C(ANSIBLE_EDGEOS_TERMINAL_LENGTH) is not set, the default number of 10000 is used.\nThis is a network module and requires C(connection: network_cli) in order to work properly.\nFor more information please see the L(Network Guide,../network/getting_started/index.html).", "properties": { "retries": { "type": "string", "description": "Default: 10\n\nNumber of times a command should be tried before it is considered failed. The command is run on the target device and evaluated against the C(wait_for) conditionals." }, "commands": { "type": "string", "description": "The commands or ordered set of commands that should be run against the remote device. The output of the command is returned to the playbook. If the C(wait_for) argument is provided, the module is not returned until the condition is met or the number of retries is exceeded." }, "wait_for": { "type": "string", "description": "Causes the task to wait for a specific condition to be met before moving forward. If the condition is not met before the specified number of retries is exceeded, the task will fail." }, "match": { "type": "string", "description": "Default: all\n\nUsed in conjunction with C(wait_for) to create match policy. If set to C(all), then all conditions in C(wait_for) must be met. If set to C(any), then only one condition must match." }, "interval": { "type": "string", "description": "Default: 1\n\nThe number of seconds to wait between C(retries) of the command." } } }, "nxos_snmp_contact": { "required": [ "state", "contact" ], "type": "object", "description": "Manages SNMP contact information.", "properties": { "state": { "type": "string", "description": "Default: present\n\nManage the state of the resource." }, "contact": { "type": "string", "description": "Contact information." } } }, "honeybadger_deployment": { "required": [ "environment", "token" ], "type": "object", "description": "Notify Honeybadger.io about app deployments (see http://docs.honeybadger.io/article/188-deployment-tracking)", "properties": { "environment": { "type": "string", "description": "The environment name, typically 'production', 'staging', etc." }, "url": { "type": "string", "description": "Default: https://api.honeybadger.io/v1/deploys\n\nOptional URL to submit the notification to." }, "repo": { "type": "string", "description": "Default: None\n\nURL of the project repository" }, "token": { "type": "string", "description": "API token." }, "user": { "type": "string", "description": "Default: None\n\nThe username of the person doing the deployment" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates for the target url will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "revision": { "type": "string", "description": "Default: None\n\nA hash, number, tag, or other identifier showing what revision was deployed" } } }, "onyx_mlag_vip": { "type": "object", "description": "This module provides declarative management of MLAG virtual IPs on Mellanox ONYX network devices.", "properties": { "delay": { "type": "string", "description": "Default: 12\n\nDelay interval, in seconds, waiting for the changes on mlag VIP to take effect." }, "state": { "type": "string", "description": "MLAG VIP state." }, "mac_address": { "type": "string", "description": "MLAG system MAC address. Required if I(state=present)." }, "ipaddress": { "type": "string", "description": "Virtual IP address of the MLAG. Required if I(state=present)." }, "group_name": { "type": "string", "description": "MLAG group name. Required if I(state=present)." } } }, "iosxr_logging": { "allOf": [ { "allOf": [ { "not": { "required": [ "level", "severity" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management configuration of system logging (syslog) on Cisco IOS XR devices.", "properties": { "severity": { "type": "string", "description": "Default: debugging\n\nSpecifies the severity level for the logging." }, "level": { "type": "string", "description": "Default: debugging\n\nSpecifies the severity level for the logging." }, "dest": { "type": "string", "description": "Destination for system logging (syslog) messages." }, "facility": { "type": "string", "description": "Default: local7\n\nTo configure the type of syslog facility in which system logging (syslog) messages are sent to syslog servers Optional config for C(dest) = C(host)" }, "hostnameprefix": { "type": "string", "description": "To append a hostname prefix to system logging (syslog) messages logged to syslog servers. Optional config for C(dest) = C(host)" }, "state": { "type": "string", "description": "Default: present\n\nExistential state of the logging configuration on the node." }, "vrf": { "type": "string", "description": "Default: default\n\nvrf name when syslog server is configured, C(dest) = C(host)" }, "aggregate": { "type": "array", "description": "List of syslog logging configuration definitions." }, "size": { "type": "string", "description": "Size of buffer when C(dest) = C(buffered). The acceptable value is in the range I(307200 to 125000000 bytes). Default 307200\nSize of file when C(dest) = C(file). The acceptable value is in the range I(1 to 2097152)KB. Default 2 GB" }, "name": { "type": "string", "description": "When C(dest) = I(file) name indicates file-name\nWhen C(dest) = I(host) name indicates the host-name or ip-address of syslog server." } } }, "dynamodb_ttl": { "required": [ "table_name", "attribute_name" ], "type": "object", "description": "Uses boto3 to set TTL.\nrequires botocore version 1.5.24 or higher.", "properties": { "attribute_name": { "type": "string", "description": "the name of the Time to Live attribute used to store the expiration time for items in the table\nthis appears to be required by the API even when disabling TTL." }, "state": { "type": "string", "description": "Default: enable\n\nstate to set DynamoDB table to" }, "table_name": { "type": "string", "description": "name of the DynamoDB table to work on" } } }, "bigip_static_route": { "required": [ "name" ], "type": "object", "description": "Manipulate static routes on a BIG-IP.", "properties": { "vlan": { "type": "string", "description": "Specifies the VLAN or Tunnel through which the system forwards packets to the destination. When C(gateway_address) is a link-local IPv6 address, this value is required" }, "gateway_address": { "type": "string", "description": "Specifies the router for the system to use when forwarding packets to the destination host or network. Also known as the next-hop router address. This can be either an IPv4 or IPv6 address. When it is an IPv6 address that starts with C(FE80:), the address will be treated as a link-local address. This requires that the C(vlan) parameter also be supplied." }, "name": { "type": "string", "description": "Name of the static route." }, "destination": { "type": "string", "description": "Specifies an IP address for the static entry in the routing table. When creating a new static route, this value is required.\nThis value cannot be changed once it is set." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the cloud connector exists. When C(absent), ensures that the cloud connector does not exist." }, "mtu": { "type": "string", "description": "Specifies a specific maximum transmission unit (MTU)." }, "route_domain": { "type": "string", "description": "The route domain id of the system. When creating a new static route, if this value is not specified, a default value of C(0) will be used.\nThis value cannot be changed once it is set." }, "reject": { "type": "string", "description": "Specifies that the system drops packets sent to the destination." }, "netmask": { "type": "string", "description": "The netmask for the static route. When creating a new static route, this value is required.\nThis value can be in either IP or CIDR format.\nThis value cannot be changed once it is set." }, "pool": { "type": "string", "description": "Specifies the pool through which the system forwards packets to the destination." }, "description": { "type": "string", "description": "Descriptive text that identifies the route." } } }, "os_user_role": { "required": [ "role" ], "type": "object", "description": "Grant and revoke roles in either project or domain context for OpenStack Identity Users.", "properties": { "domain": { "type": "string", "description": "ID of the domain to scope the role association to. Valid only with keystone version 3, and required if I(project) is not specified." }, "group": { "type": "string", "description": "Name or ID for the group. Valid only with keystone version 3. If I(group) is not specified, then I(user) is required. Both may not be specified." }, "project": { "type": "string", "description": "Name or ID of the project to scope the role assocation to. If you are using keystone version 2, then this value is required." }, "state": { "type": "string", "description": "Default: present\n\nShould the roles be present or absent on the user." }, "role": { "type": "string", "description": "Name or ID for the role." }, "user": { "type": "string", "description": "Name or ID for the user. If I(user) is not specified, then I(group) is required. Both may not be specified." } } }, "iam_cert": { "allOf": [ { "allOf": [ { "not": { "required": [ "aws_secret_key", "ec2_secret_key", "secret_key" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "aws_access_key", "ec2_access_key", "access_key" ], "type": "object" } } ] } ], "type": "object", "description": "Allows for the management of server certificates", "properties": { "new_name": { "type": "string", "description": "When present, this will update the name of the cert with the value passed here." }, "aws_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "dup_ok": { "type": "string", "description": "By default the module will not upload a certificate that is already uploaded into AWS. If set to True, it will upload the certificate as long as the name is unique." }, "new_path": { "type": "string", "description": "When present, this will update the path of the cert with the value passed here." }, "name": { "type": "string", "description": "Name of certificate to add, update or remove." }, "aws_access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "cert": { "type": "string", "description": "The path to the certificate body in PEM encoded format." }, "state": { "type": "string", "description": "Whether to create, delete certificate. When present is specified it will attempt to make an update if new_path or new_name is specified." }, "key": { "type": "string", "description": "The path to the private key of the certificate in PEM encoded format." }, "ec2_access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "access_key": { "type": "string", "description": "AWS access key. If not set then the value of the AWS_ACCESS_KEY environment variable is used." }, "path": { "type": "string", "description": "Default: /\n\nWhen creating or updating, specify the desired path of the certificate" }, "secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "ec2_secret_key": { "type": "string", "description": "AWS secret key. If not set then the value of the AWS_SECRET_KEY environment variable is used." }, "cert_chain": { "type": "string", "description": "The path to the CA certificate chain in PEM encoded format." } } }, "cs_service_offering": { "allOf": [ { "allOf": [ { "not": { "required": [ "host_tags", "host_tag" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "storage_tags", "storage_tag" ], "type": "object" } } ] } ], "type": "object", "description": "Create and delete service offerings for guest and system VMs.\nUpdate display_text of existing service offering.", "properties": { "offer_ha": { "type": "string", "description": "Whether HA is set for the service offering." }, "domain": { "type": "string", "description": "Domain the service offering is related to.\nPublic for all domains and subdomains if not set." }, "host_tags": { "type": "string", "description": "The host tagsfor this service offering." }, "is_system": { "type": "string", "description": "Whether it is a system VM offering or not." }, "storage_type": { "type": "string", "description": "The storage type of the service offering." }, "is_volatile": { "type": "string", "description": "Whether the virtual machine needs to be volatile or not.\nEvery reboot of VM the root disk is detached then destroyed and a fresh root disk is created and attached to VM." }, "network_rate": { "type": "string", "description": "Data transfer rate in Mb/s allowed.\nSupported only for non-system offering and system offerings having C(system_vm_type=domainrouter)." }, "cpu_speed": { "type": "string", "description": "The CPU speed of the service offering in MHz." }, "service_offering_details": { "type": "string", "description": "Details for planner, used to store specific parameters." }, "disk_iops_max": { "type": "string", "description": "Max. iops of the compute offering." }, "disk_iops_read_rate": { "type": "string", "description": "IO requests read rate of the disk offering." }, "bytes_read_rate": { "type": "string", "description": "Bytes read rate of the disk offering." }, "state": { "type": "string", "description": "Default: present\n\nState of the service offering." }, "disk_iops_min": { "type": "string", "description": "Min. iops of the compute offering." }, "disk_iops_write_rate": { "type": "string", "description": "IO requests write rate of the disk offering." }, "provisioning_type": { "type": "string", "description": "Provisioning type used to create volumes." }, "hypervisor_snapshot_reserve": { "type": "string", "description": "Hypervisor snapshot reserve space as a percent of a volume.\nOnly for managed storage using Xen or VMware." }, "display_text": { "type": "string", "description": "Display text of the service offering.\nIf not set, C(name) will be used as C(display_text) while creating." }, "system_vm_type": { "type": "string", "description": "The system VM type.\nRequired if C(is_system=true)." }, "limit_cpu_usage": { "type": "string", "description": "Restrict the CPU usage to committed service offering." }, "memory": { "type": "string", "description": "The total memory of the service offering in MB." }, "storage_tags": { "type": "string", "description": "The storage tags for this service offering." }, "host_tag": { "type": "string", "description": "The host tagsfor this service offering." }, "deployment_planner": { "type": "string", "description": "The deployment planner heuristics used to deploy a VM of this offering.\nIf not set, the value of global config C(vm.deployment.planner) is used." }, "cpu_number": { "type": "string", "description": "The number of CPUs of the service offering." }, "name": { "type": "string", "description": "Name of the service offering." }, "storage_tag": { "type": "string", "description": "The storage tags for this service offering." }, "disk_iops_customized": { "type": "string", "description": "Whether compute offering iops is custom or not." }, "bytes_write_rate": { "type": "string", "description": "Bytes write rate of the disk offering." } } }, "azure_rm_mysqldatabase": { "required": [ "server_name", "resource_group", "name" ], "type": "object", "description": "Create, update and delete instance of MySQL Database.", "properties": { "force_update": { "description": "Default: no\n\nWhen set to C(true), will delete and recreate the existing MySQL database if any of the properties don't match what is set.\nWhen set to C(false), no change will occur to the database even if any of the properties do not match.", "$ref": "#/definitions/ansible_truth" }, "server_name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "charset": { "type": "string", "description": "The charset of the database. Check MySQL documentation for possible values.\nThis is only set on creation, use I(force_update) to recreate a database if the values don't match." }, "collation": { "type": "string", "description": "The collation of the database. Check MySQL documentation for possible values.\nThis is only set on creation, use I(force_update) to recreate a database if the values don't match." }, "name": { "type": "string", "description": "The name of the database." } } }, "nso_action": { "required": [ "path" ], "type": "object", "description": "This module provices support for executing Cisco NSO actions and then verifying that the output is as expected.", "properties": { "path": { "type": "string", "description": "Path to NSO action." }, "output_required": { "type": "string", "description": "Required output parameters.\n" }, "output_invalid": { "type": "array", "description": "List of result parameter names that will cause the task to fail if they are present.\n" }, "validate_strict": { "type": "string", "description": "If set to true, the task will fail if any output parameters not in output_required is present in the output.\n" }, "input": { "type": "string", "description": "NSO action parameters.\n" } } }, "nso_config": { "required": [ "data" ], "type": "object", "description": "This module provides support for managing configuration in Cisco NSO and can also ensure services are in sync.", "properties": { "data": { "type": "string", "description": "NSO data in format as | display json converted to YAML. List entries can be annotated with a __state entry. Set to in-sync/deep-in-sync for services to verify service is in sync with the network. Set to absent in list entries to ensure they are deleted if they exist in NSO.\n" } } }, "aos_logical_device": { "required": [ "session" ], "type": "object", "description": "Apstra AOS Logical Device module let you manage your Logical Devices easily. You can create create and delete Logical Device by Name, ID or by using a JSON File. This module is idempotent and support the I(check) mode. It's using the AOS REST API.", "properties": { "content": { "type": "string", "description": "Datastructure of the Logical Device to create. The data can be in YAML / JSON or directly a variable. It's the same datastructure that is returned on success in I(value)." }, "state": { "type": "string", "description": "Default: present\n\nIndicate what is the expected state of the Logical Device (present or not)." }, "session": { "type": "string", "description": "An existing AOS session as obtained by M(aos_login) module." }, "name": { "type": "string", "description": "Name of the Logical Device to manage. Only one of I(name), I(id) or I(content) can be set." }, "id": { "type": "string", "description": "AOS Id of the Logical Device to manage (can't be used to create a new Logical Device), Only one of I(name), I(id) or I(content) can be set." } } }, "win_disk_facts": { "type": "object", "description": "With the module you can retrieve and output detailed information about the attached disks of the target and its volumes and partitions if existent.", "properties": {} }, "synchronize": { "required": [ "src", "dest" ], "type": "object", "description": "C(synchronize) is a wrapper around rsync to make common tasks in your playbooks quick and easy. It is run and originates on the local host where Ansible is being run. Of course, you could just use the C(command) action to call rsync yourself, but you also have to add a fair number of boilerplate options and host facts. C(synchronize) is not intended to provide access to the full power of rsync, but does make the most common invocations easier to implement. You `still` may need to call rsync directly via C(command) or C(shell) depending on your use case.", "properties": { "partial": { "description": "Default: no\n\nTells rsync to keep the partial file which should make a subsequent transfer of the rest of the file much faster.", "$ref": "#/definitions/ansible_truth" }, "links": { "description": "Default: the value of the archive option\n\nCopy symlinks as symlinks.", "$ref": "#/definitions/ansible_truth" }, "copy_links": { "description": "Default: no\n\nCopy symlinks as the item that they point to (the referent) is copied, rather than the symlink.", "$ref": "#/definitions/ansible_truth" }, "perms": { "description": "Default: the value of the archive option\n\nPreserve permissions.", "$ref": "#/definitions/ansible_truth" }, "link_dest": { "type": "string", "description": "add a destination to hard link against during the rsync." }, "owner": { "description": "Default: the value of the archive option\n\nPreserve owner (super user only)", "$ref": "#/definitions/ansible_truth" }, "archive": { "description": "Default: yes\n\nMirrors the rsync archive flag, enables recursive, links, perms, times, owner, group flags and -D.", "$ref": "#/definitions/ansible_truth" }, "dest_port": { "type": "string", "description": "Default: Value of ansible_ssh_port for this host, remote_port config setting, or the value from ssh client configuration if none of those are set\n\nPort number for ssh on the destination host. Prior to ansible 2.0, the ansible_ssh_port inventory var took precedence over this value." }, "group": { "description": "Default: the value of the archive option\n\nPreserve group", "$ref": "#/definitions/ansible_truth" }, "existing_only": { "description": "Default: no\n\nSkip creating new files on receiver.", "$ref": "#/definitions/ansible_truth" }, "rsync_path": { "type": "string", "description": "Specify the rsync command to run on the remote host. See C(--rsync-path) on the rsync man page." }, "verify_host": { "description": "Default: no\n\nVerify destination host key.", "$ref": "#/definitions/ansible_truth" }, "use_ssh_args": { "description": "Default: no\n\nUse the ssh_args specified in ansible.cfg", "$ref": "#/definitions/ansible_truth" }, "dirs": { "description": "Default: no\n\nTransfer directories without recursing", "$ref": "#/definitions/ansible_truth" }, "private_key": { "type": "string", "description": "Specify the private key to use for SSH-based rsync connections (e.g. C(~/.ssh/id_rsa))" }, "dest": { "type": "string", "description": "Path on the destination host that will be synchronized from the source; The path can be absolute or relative." }, "compress": { "description": "Default: yes\n\nCompress file data during the transfer. In most cases, leave this enabled unless it causes problems.", "$ref": "#/definitions/ansible_truth" }, "rsync_timeout": { "type": "string", "description": "Specify a --timeout for the rsync command in seconds." }, "rsync_opts": { "type": "string", "description": "Specify additional rsync options by passing in an array." }, "set_remote_user": { "type": "string", "description": "Default: True\n\nput user@ for the remote paths. If you have a custom ssh config to define the remote user for a host that does not match the inventory user, you should set this parameter to \"no\"." }, "recursive": { "description": "Default: the value of the archive option\n\nRecurse into directories.", "$ref": "#/definitions/ansible_truth" }, "src": { "type": "string", "description": "Path on the source host that will be synchronized to the destination; The path can be absolute or relative." }, "checksum": { "description": "Default: no\n\nSkip based on checksum, rather than mod-time & size; Note that that \"archive\" option is still enabled by default - the \"checksum\" option will not disable it.", "$ref": "#/definitions/ansible_truth" }, "times": { "description": "Default: the value of the archive option\n\nPreserve modification times", "$ref": "#/definitions/ansible_truth" }, "mode": { "type": "string", "description": "Default: push\n\nSpecify the direction of the synchronization. In push mode the localhost or delegate is the source; In pull mode the remote host in context is the source." }, "delete": { "description": "Default: no\n\nDelete files in C(dest) that don't exist (after transfer, not before) in the C(src) path. This option requires C(recursive=yes).", "$ref": "#/definitions/ansible_truth" } } }, "avi_backupconfiguration": { "required": [ "name" ], "type": "object", "description": "This module is used to configure BackupConfiguration object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "ssh_user_ref": { "type": "string", "description": "Access credentials for remote destination.\nIt is a reference to an object of type cloudconnectoruser." }, "uuid": { "type": "string", "description": "Unique object identifier of the object." }, "remote_directory": { "type": "string", "description": "Directory at remote destination with write permission for ssh user." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant." }, "remote_hostname": { "type": "string", "description": "Remote destination." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "backup_passphrase": { "type": "string", "description": "Passphrase of backup configuration." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "save_local": { "description": "Local backup.", "$ref": "#/definitions/ansible_truth" }, "maximum_backups_stored": { "type": "string", "description": "Rotate the backup files based on this count.\nAllowed values are 1-20.\nDefault value when not specified in API or module is interpreted by Avi Controller as 4." }, "upload_to_remote_host": { "description": "Remote backup.", "$ref": "#/definitions/ansible_truth" }, "backup_file_prefix": { "type": "string", "description": "Prefix of the exported configuration file.\nField introduced in 17.1.1." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "name": { "type": "string", "description": "Name of backup configuration." } } }, "aci_contract_subject": { "allOf": [ { "allOf": [ { "not": { "required": [ "description", "descr" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "dscp", "target" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "contract", "contract_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "tenant", "tenant_name" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "subject", "contract_subject", "name", "subject_name" ], "type": "object" } } ] } ], "type": "object", "description": "Manage initial Contract Subjects on Cisco ACI fabrics.", "properties": { "subject_name": { "type": "string", "description": "The contract subject name." }, "contract_name": { "type": "string", "description": "The name of the Contract." }, "description": { "type": "string", "description": "Description for the contract subject." }, "descr": { "type": "string", "description": "Description for the contract subject." }, "consumer_match": { "type": "string", "description": "Default: at_least_one\n\nThe match criteria across consumers.\nThe APIC defaults new Contract Subjects to C(at_least_one)." }, "tenant_name": { "type": "string", "description": "The name of the tenant." }, "subject": { "type": "string", "description": "The contract subject name." }, "dscp": { "type": "string", "description": "Default: unspecified\n\nThe target DSCP.\nThe APIC defaults new Contract Subjects to C(unspecified)." }, "name": { "type": "string", "description": "The contract subject name." }, "priority": { "type": "string", "description": "Default: unspecified\n\nThe QoS class.\nThe APIC defaults new Contract Subjects to C(unspecified)." }, "state": { "type": "string", "description": "Default: present\n\nUse C(present) or C(absent) for adding or removing.\nUse C(query) for listing an object or multiple objects." }, "contract": { "type": "string", "description": "The name of the Contract." }, "contract_subject": { "type": "string", "description": "The contract subject name." }, "reverse_filter": { "description": "Default: yes\n\nDetermines if the APIC should reverse the src and dst ports to allow the return traffic back, since ACI is stateless filter.\nThe APIC defaults new Contract Subjects to C(yes).", "$ref": "#/definitions/ansible_truth" }, "provider_match": { "type": "string", "description": "Default: at_least_one\n\nThe match criteria across providers.\nThe APIC defaults new Contract Subjects to C(at_least_one)." }, "tenant": { "type": "string", "description": "The name of the tenant." }, "target": { "type": "string", "description": "Default: unspecified\n\nThe target DSCP.\nThe APIC defaults new Contract Subjects to C(unspecified)." } } }, "avi_api_version": { "type": "object", "description": "This module can be used to obtain the version of the Avi REST API. U(https://avinetworks.com/)", "properties": {} }, "campfire": { "required": [ "msg", "token", "subscription", "room" ], "type": "object", "description": "Send a message to Campfire.\nMessages with newlines will result in a \"Paste\" message being sent.", "properties": { "msg": { "type": "string", "description": "The message body." }, "token": { "type": "string", "description": "API token." }, "room": { "type": "string", "description": "Room number to which the message should be sent." }, "notify": { "type": "string", "description": "Send a notification sound before the message." }, "subscription": { "type": "string", "description": "The subscription name to use." } } }, "ovirt_affinity_label": { "required": [ "name" ], "type": "object", "description": "This module manage affinity labels in oVirt/RHV. It can also manage assignments of those labels to hosts and VMs.", "properties": { "cluster": { "type": "string", "description": "Name of the cluster where vms and hosts resides." }, "state": { "type": "string", "description": "Default: present\n\nShould the affinity label be present or absent." }, "hosts": { "type": "array", "description": "List of the hosts names, which should have assigned this affinity label." }, "name": { "type": "string", "description": "Name of the affinity label to manage." }, "vms": { "type": "array", "description": "List of the VMs names, which should have assigned this affinity label." } } }, "manageiq_alerts": { "type": "object", "description": "The manageiq_alerts module supports adding, updating and deleting alerts in ManageIQ.", "properties": { "description": { "type": "string", "description": "The unique alert description in ManageIQ.\nRequired when state is \"absent\" or \"present\"." }, "expression_type": { "type": "string", "description": "Default: hash\n\nExpression type." }, "enabled": { "description": "Enable or disable the alert. Required if state is \"present\".", "$ref": "#/definitions/ansible_truth" }, "state": { "type": "string", "description": "Default: present\n\nabsent - alert should not exist,\npresent - alert should exist," }, "expression": { "type": "string", "description": "The alert expression for ManageIQ.\nCan either be in the \"Miq Expression\" format or the \"Hash Expression format\".\nRequired if state is \"present\"." }, "options": { "type": "string", "description": "Additional alert options, such as notification type and frequency" }, "resource_type": { "type": "string", "description": "The entity type for the alert in ManageIQ. Required when state is \"present\"." } } }, "nxos_file_copy": { "required": [ "local_file" ], "type": "object", "description": "Copy a file to the flash (or bootflash) remote network device on NXOS devices.", "properties": { "remote_file": { "type": "string", "description": "Remote file path of the copy. Remote directories must exist. If omitted, the name of the local file will be used." }, "local_file": { "type": "string", "description": "Path to local file. Local directory must exist." }, "file_system": { "type": "string", "description": "The remote file system of the device. If omitted, devices that support a I(file_system) parameter will use their default values." }, "connect_ssh_port": { "type": "string", "description": "Default: 22\n\nSSH port to connect to server during transfer of file" } } }, "os_security_group_rule": { "required": [ "security_group" ], "type": "object", "description": "Add or Remove rule from an existing security group", "properties": { "direction": { "type": "string", "description": "Default: ingress\n\nThe direction in which the security group rule is applied. Not all providers support egress." }, "protocol": { "type": "string", "description": "Default: None\n\nIP protocols TCP UDP ICMP 112 (VRRP)" }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "remote_ip_prefix": { "type": "string", "description": "Source IP address(es) in CIDR notation (exclusive with remote_group)" }, "port_range_max": { "type": "string", "description": "Default: None\n\nEnding port" }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "port_range_min": { "type": "string", "description": "Default: None\n\nStarting port" }, "ethertype": { "type": "string", "description": "Default: IPv4\n\nMust be IPv4 or IPv6, and addresses represented in CIDR must match the ingress or egress rules. Not all providers support IPv6." }, "security_group": { "type": "string", "description": "Name or ID of the security group" }, "remote_group": { "type": "string", "description": "Name or ID of the Security group to link (exclusive with remote_ip_prefix)" } } }, "azure_rm_storageaccount_facts": { "type": "object", "description": "Get facts for one storage account or all storage accounts within a resource group.", "properties": { "name": { "type": "string", "description": "Only show results for a specific account." }, "resource_group": { "type": "string", "description": "Limit results to a resource group. Required when filtering by name." }, "tags": { "type": "string", "description": "Limit results by providing a list of tags. Format tags as 'key' or 'key:value'." } } }, "haproxy": { "required": [ "state", "host" ], "type": "object", "description": "Enable, disable, and set weights for HAProxy backend servers using socket commands.", "properties": { "socket": { "type": "string", "description": "Default: /var/run/haproxy.sock\n\nPath to the HAProxy socket file." }, "weight": { "type": "string", "description": "The value passed in argument. If the value ends with the `%` sign, then the new weight will be relative to the initially configured weight. Relative weights are only permitted between 0 and 100% and absolute weights are permitted between 0 and 256." }, "wait_interval": { "type": "string", "description": "Default: 5\n\nNumber of seconds to wait between retries." }, "host": { "type": "string", "description": "Name of the backend host to change." }, "wait": { "type": "string", "description": "Wait until the server reports a status of 'UP' when `state=enabled`, or status of 'MAINT' when `state=disabled`." }, "wait_retries": { "type": "string", "description": "Default: 25\n\nNumber of times to check for status after changing the state." }, "state": { "type": "string", "description": "Desired state of the provided backend host." }, "fail_on_not_found": { "type": "string", "description": "Fail whenever trying to enable/disable a backend host that does not exist" }, "shutdown_sessions": { "type": "string", "description": "When disabling a server, immediately terminate all the sessions attached to the specified server. This can be used to terminate long-running sessions after a server is put into maintenance mode." }, "backend": { "type": "string", "description": "Default: auto-detected\n\nName of the HAProxy backend pool." } } }, "nxos_rollback": { "type": "object", "description": "This module offers the ability to set a configuration checkpoint file or rollback to a configuration checkpoint file on Cisco NXOS switches.", "properties": { "checkpoint_file": { "type": "string", "description": "Name of checkpoint file to create. Mutually exclusive with rollback_to." }, "rollback_to": { "type": "string", "description": "Name of checkpoint file to rollback to. Mutually exclusive with checkpoint_file." } } }, "cs_facts": { "type": "object", "description": "This module fetches data from the metadata API in CloudStack. The module must be called from within the instance itself.", "properties": { "filter": { "type": "string", "description": "Filter for a specific fact." }, "meta_data_host": { "type": "string", "description": "Host or IP of the meta data API service.\nIf not set, determination by parsing the dhcp lease file." } } }, "ec2_metadata_facts": { "type": "object", "description": "This module fetches data from the instance metadata endpoint in ec2 as per http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html. The module must be called from within the EC2 instance itself.", "properties": {} }, "elb_application_lb": { "required": [ "state", "name" ], "type": "object", "description": "Manage an AWS Application Elastic Load Balancer. See U(https://aws.amazon.com/blogs/aws/new-aws-application-load-balancer/) for details.", "properties": { "subnets": { "type": "string", "description": "A list of the IDs of the subnets to attach to the load balancer. You can specify only one subnet per Availability Zone. You must specify subnets from at least two Availability Zones. Required if state=present." }, "access_logs_enabled": { "type": "string", "description": "Whether or not to enable access logs. When true, I(access_logs_s3_bucket) must be set." }, "tags": { "type": "object", "description": "A dictionary of one or more tags to assign to the load balancer." }, "purge_tags": { "type": "string", "description": "Default: True\n\nIf yes, existing tags will be purged from the resource to match exactly what is defined by I(tags) parameter. If the I(tags) parameter is not set then tags will not be modified." }, "access_logs_s3_bucket": { "type": "string", "description": "The name of the S3 bucket for the access logs. This attribute is required if access logs in Amazon S3 are enabled. The bucket must exist in the same region as the load balancer and have a bucket policy that grants Elastic Load Balancing permission to write to the bucket." }, "state": { "type": "string", "description": "Create or destroy the load balancer." }, "idle_timeout": { "type": "string", "description": "Default: 60\n\nThe number of seconds to wait before an idle connection is closed." }, "deletion_protection": { "type": "string", "description": "Indicates whether deletion protection for the ELB is enabled." }, "purge_listeners": { "type": "string", "description": "Default: True\n\nIf yes, existing listeners will be purged from the ELB to match exactly what is defined by I(listeners) parameter. If the I(listeners) parameter is not set then listeners will not be modified" }, "access_logs_s3_prefix": { "type": "string", "description": "The prefix for the location in the S3 bucket. If you don't specify a prefix, the access logs are stored in the root of the bucket." }, "scheme": { "type": "string", "description": "Default: internet-facing\n\nInternet-facing or internal load balancer. An ELB scheme can not be modified after creation." }, "listeners": { "type": "string", "description": "A list of dicts containing listeners to attach to the ELB. See examples for detail of the dict required. Note that listener keys are CamelCased." }, "security_groups": { "type": "string", "description": "A list of the names or IDs of the security groups to assign to the load balancer. Required if state=present." }, "name": { "type": "string", "description": "The name of the load balancer. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen." } } }, "gcp_backend_service": { "required": [ "backends", "healthchecks", "backend_service_name" ], "type": "object", "description": "Create or Destroy a Backend Service. See U(https://cloud.google.com/compute/docs/load-balancing/http/backend-service) for an overview. Full install/configuration instructions for the Google Cloud modules can be found in the comments of ansible/test/gce_tests.py.", "properties": { "protocol": { "type": "string", "description": "The protocol this Backend Service uses to communicate with backends. Possible values are HTTP, HTTPS, TCP, and SSL. The default is HTTP." }, "service_account_email": { "type": "string", "description": "Service account email" }, "backends": { "type": "array", "description": "List of backends that make up the backend service. A backend is made up of an instance group and optionally several other parameters. See U(https://cloud.google.com/compute/docs/reference/latest/backendServices) for details." }, "state": { "type": "string", "description": "Default: present\n\nDesired state of the resource" }, "enable_cdn": { "type": "string", "description": "If true, enable Cloud CDN for this Backend Service." }, "port_name": { "type": "string", "description": "Name of the port on the managed instance group (MIG) that backend services can forward data to. Required for external load balancing." }, "timeout": { "type": "string", "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds. Valid range is 1-86400." }, "credentials_file": { "type": "string", "description": "Path to the JSON file associated with the service account email." }, "healthchecks": { "type": "array", "description": "List of healthchecks. Only one healthcheck is supported." }, "backend_service_name": { "type": "string", "description": "Name of the Backend Service." }, "project_id": { "type": "string", "description": "GCE project ID." } } }, "win_eventlog_entry": { "required": [ "source", "log", "event_id", "message" ], "type": "object", "description": "Write log entries to a given event log from a specified source.", "properties": { "category": { "type": "string", "description": "A numeric task category associated with the category message file for the log source." }, "log": { "type": "string", "description": "Name of the event log to write an entry to." }, "event_id": { "type": "string", "description": "The numeric event identifier for the entry.\nValue must be between 0 and 65535." }, "entry_type": { "type": "string", "description": "Indicates the entry being written to the log is of a specific type." }, "source": { "type": "string", "description": "Name of the log source to indicate where the entry is from." }, "raw_data": { "type": "string", "description": "Binary data associated with the log entry.\nValue must be a comma-separated array of 8-bit unsigned integers (0 to 255)." }, "message": { "type": "string", "description": "The message for the given log entry." } } }, "os_server_volume": { "required": [ "volume", "server" ], "type": "object", "description": "Attach or Detach volumes from OpenStack VM's", "properties": { "volume": { "type": "string", "description": "Name or id of volume you want to attach to a server" }, "device": { "type": "string", "description": "Default: None\n\nDevice you want to attach. Defaults to auto finding a device name." }, "state": { "type": "string", "description": "Default: present\n\nShould the resource be present or absent." }, "availability_zone": { "type": "string", "description": "Ignored. Present for backwards compatibility" }, "server": { "type": "string", "description": "Name or ID of server you want to attach a volume to" } } }, "ec2_customer_gateway_facts": { "type": "object", "description": "Gather facts about customer gateways in AWS", "properties": { "customer_gateway_ids": { "type": "string", "description": "Default: None\n\nGet details of a specific customer gateways using customer gateway ID/IDs. This value should be provided as a list." }, "filters": { "type": "string", "description": "Default: None\n\nA dict of filters to apply. Each dict item consists of a filter key and a filter value. See U(http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeCustomerGateways.html) for possible filters." } } }, "win_regmerge": { "required": [ "path" ], "type": "object", "description": "Wraps the reg.exe command to import the contents of a registry file.\nSuitable for use with registry files created using M(win_template).\nWindows registry files have a specific format and must be constructed correctly with carriage return and line feed line endings otherwise they will not be merged.\nExported registry files often start with a Byte Order Mark which must be removed if the file is to templated using M(win_template).\nRegistry file format is described at U(https://support.microsoft.com/en-us/kb/310516)\nSee also M(win_template), M(win_regedit)", "properties": { "path": { "type": "string", "description": "Default: no default\n\nThe full path including file name to the registry file on the remote machine to be merged" }, "compare_key": { "type": "string", "description": "Default: no default\n\nThe parent key to use when comparing the contents of the registry to the contents of the file. Needs to be in HKLM or HKCU part of registry. Use a PS-Drive style path for example HKLM:\\SOFTWARE not HKEY_LOCAL_MACHINE\\SOFTWARE If not supplied, or the registry key is not found, no comparison will be made, and the module will report changed." } } }, "ce_acl_advance": { "required": [ "acl_name" ], "type": "object", "description": "Manages advanced ACL configurations on HUAWEI CloudEngine switches.", "properties": { "acl_step": { "type": "string", "description": "ACL step. The value is an integer ranging from 1 to 20. The default value is 5." }, "protocol": { "type": "string", "description": "Protocol type." }, "precedence": { "type": "string", "description": "Data packets can be filtered based on the priority field. The value is an integer ranging from 0 to 7." }, "dest_port_end": { "type": "string", "description": "End port number of the destination port. The value is an integer ranging from 0 to 65535." }, "log_flag": { "type": "string", "description": "Flag of logging matched data packets." }, "time_range": { "type": "string", "description": "Name of a time range in which an ACL rule takes effect." }, "src_port_begin": { "type": "string", "description": "Start port number of the source port. The value is an integer ranging from 0 to 65535." }, "frag_type": { "type": "string", "description": "Type of packet fragmentation." }, "dest_port_op": { "type": "string", "description": "Range type of the destination port." }, "dest_pool_name": { "type": "string", "description": "Name of a destination pool. The value is a string of 1 to 32 characters." }, "acl_description": { "type": "string", "description": "ACL description. The value is a string of 1 to 127 characters." }, "ttl_expired": { "type": "string", "description": "Whether TTL Expired is matched, with the TTL value of 1." }, "icmp_type": { "type": "string", "description": "ICMP type. This parameter is available only when the packet protocol is ICMP. The value is an integer ranging from 0 to 255." }, "src_mask": { "type": "string", "description": "Source IP address mask. The value is an integer ranging from 1 to 32." }, "icmp_name": { "type": "string", "description": "ICMP name." }, "established": { "type": "string", "description": "Match established connections." }, "igmp_type": { "type": "string", "description": "Internet Group Management Protocol." }, "tos": { "type": "string", "description": "ToS value on which data packet filtering is based. The value is an integer ranging from 0 to 15." }, "state": { "type": "string", "description": "Default: present\n\nSpecify desired state of the resource." }, "rule_action": { "type": "string", "description": "Matching mode of basic ACL rules." }, "acl_num": { "type": "string", "description": "ACL number. The value is an integer ranging from 3000 to 3999." }, "tcp_flag_mask": { "type": "string", "description": "TCP flag mask value. The value is an integer ranging from 0 to 63." }, "src_port_end": { "type": "string", "description": "End port number of the source port. The value is an integer ranging from 0 to 65535." }, "dest_ip": { "type": "string", "description": "Destination IP address. The value is a string of 0 to 255 characters.The default value is 0.0.0.0. The value is in dotted decimal notation." }, "icmp_code": { "type": "string", "description": "ICMP message code. Data packets can be filtered based on the ICMP message code. The value is an integer ranging from 0 to 255." }, "src_port_op": { "type": "string", "description": "Range type of the source port." }, "acl_name": { "type": "string", "description": "ACL number or name. For a numbered rule group, the value ranging from 3000 to 3999 indicates a advance ACL. For a named rule group, the value is a string of 1 to 32 case-sensitive characters starting with a letter, spaces not supported." }, "dscp": { "type": "string", "description": "Differentiated Services Code Point. The value is an integer ranging from 0 to 63." }, "rule_name": { "type": "string", "description": "Name of a basic ACL rule. The value is a string of 1 to 32 characters." }, "rule_description": { "type": "string", "description": "Description about an ACL rule." }, "dest_mask": { "type": "string", "description": "Destination IP address mask. The value is an integer ranging from 1 to 32." }, "src_port_pool_name": { "type": "string", "description": "Name of a source port pool. The value is a string of 1 to 32 characters." }, "source_ip": { "type": "string", "description": "Source IP address. The value is a string of 0 to 255 characters.The default value is 0.0.0.0. The value is in dotted decimal notation." }, "syn_flag": { "type": "string", "description": "TCP flag value. The value is an integer ranging from 0 to 63." }, "vrf_name": { "type": "string", "description": "VPN instance name. The value is a string of 1 to 31 characters.The default value is _public_." }, "src_pool_name": { "type": "string", "description": "Name of a source pool. The value is a string of 1 to 32 characters." }, "dest_port_begin": { "type": "string", "description": "Start port number of the destination port. The value is an integer ranging from 0 to 65535." }, "dest_port_pool_name": { "type": "string", "description": "Name of a destination port pool. The value is a string of 1 to 32 characters." }, "rule_id": { "type": "string", "description": "ID of a basic ACL rule in configuration mode. The value is an integer ranging from 0 to 4294967294." } } }, "spotinst_aws_elastigroup": { "required": [ "unit", "availability_zones", "monitoring", "name", "key_pair", "on_demand_instance_type", "product", "min_size", "image_id", "security_group_ids", "max_size", "availability_vs_cost", "target", "spot_instance_types" ], "type": "object", "description": "Can create, update, or delete Spotinst AWS Elastigroups Launch configuration is part of the elastigroup configuration, so no additional modules are necessary for handling the launch configuration. You will have to have a credentials file in this location - /.spotinst/credentials The credentials file must contain a row that looks like this token = Full documentation available at https://help.spotinst.com/hc/en-us/articles/115003530285-Ansible-", "properties": { "ebs_volume_pool": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of EBS devices to reattach to the elastigroup when available; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - volume_ids (List of Strings), device_name (String)" }, "opsworks": { "type": "string", "description": "(Object) The elastigroup OpsWorks integration configration.; Expects the following key - layer_id (String)" }, "ebs_optimized": { "type": "string", "description": "(Boolean) Enable EBS optimization for supported instances which are not enabled by default.; Note - additional charges will be applied." }, "roll_config": { "type": "string", "description": "(Object) Roll configuration.; If you would like the group to roll after updating, please use this feature. Accepts the following keys - batch_size_percentage(Integer, Required), grace_period - (Integer, Required), health_check_type(String, Optional)" }, "shutdown_script": { "type": "string", "description": "(String) The Base64-encoded shutdown script that executes prior to instance termination. Encode before setting." }, "up_scaling_policies": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of scaling policies to configure in the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - policy_name (String, required), namespace (String, required), metric_name (String, required), dimensions (List of Objects, Keys allowed are name (String, required) and value (String)), statistic (String, required) evaluation_periods (String, required), period (String, required), threshold (String, required), cooldown (String, required), unit (String, required), operator (String, required), action_type (String, required), adjustment (String), min_target_capacity (String), target (String), maximum (String), minimum (String)" }, "elastic_ips": { "type": "array", "description": "(List of Strings) List of ElasticIps Allocation Ids to associate to the group instances" }, "chef": { "type": "string", "description": "(Object) The Chef integration configuration.; Expects the following keys - chef_server (String), organization (String), user (String), pem_key (String), chef_version (String)" }, "iam_role_name": { "type": "string", "description": "(String) The instance profile iamRole name\nOnly use iam_role_arn, or iam_role_name" }, "spin_up_time": { "type": "string", "description": "(Integer) spin up time, in seconds, for the instance" }, "scheduled_tasks": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of scheduled tasks to configure in the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - adjustment (Integer), scale_target_capacity (Integer), scale_min_capacity (Integer), scale_max_capacity (Integer), adjustment_percentage (Integer), batch_size_percentage (Integer), cron_expression (String), frequency (String), grace_period (Integer), task_type (String, required), is_enabled (Boolean)" }, "availability_vs_cost": { "type": "string", "description": "(String) The strategy orientation." }, "id": { "type": "string", "description": "(String) The group id if it already exists and you want to update, or delete it. This will not work unless the uniqueness_by field is set to id. When this is set, and the uniqueness_by field is set, the group will either be updated or deleted, but not created." }, "unit": { "type": "string", "description": "(String) The capacity unit to launch instances by." }, "account_id": { "type": "string", "description": "(String) Optional parameter that allows to set an account-id inside the module configuration By default this is retrieved from the credentials path" }, "availability_zones": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of Availability Zones that are configured in the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are name (String), subnet_id (String), placement_group_name (String)," }, "monitoring": { "type": "string", "description": "(Boolean) Describes whether instance Enhanced Monitoring is enabled" }, "target_tracking_policies": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of target tracking policies to configure in the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - policy_name (String, required), namespace (String, required), source (String, required), metric_name (String, required), statistic (String, required), unit (String, required), cooldown (String, required), target (String, required)" }, "right_scale": { "type": "string", "description": "(Object) The Rightscale integration configuration.; Expects the following keys - account_id (String), refresh_token (String)" }, "health_check_grace_period": { "type": "string", "description": "Default: 300\n\n(Integer) The amount of time, in seconds, after the instance has launched to start and check its health." }, "draining_timeout": { "type": "string", "description": "(Integer) Time for instance to be drained from incoming requests and deregistered from ELB before termination." }, "target_group_arns": { "type": "array", "description": "(List of Strings) List of target group arns instances should be registered to" }, "state": { "type": "string", "description": "(String) create or delete the elastigroup" }, "signals": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of signals to configure in the elastigroup; keys allowed are - name (String, required), timeout (Integer)" }, "iam_role_arn": { "type": "string", "description": "(String) The instance profile iamRole arn\nOnly use iam_role_arn, or iam_role_name" }, "key_pair": { "type": "string", "description": "(String) Specify a Key Pair to attach to the instances" }, "down_scaling_policies": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of scaling policies to configure in the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - policy_name (String, required), namespace (String, required), metric_name (String, required), dimensions ((List of Objects), Keys allowed are name (String, required) and value (String)), statistic (String, required), evaluation_periods (String, required), period (String, required), threshold (String, required), cooldown (String, required), unit (String, required), operator (String, required), action_type (String, required), adjustment (String), max_target_capacity (String), target (String), maximum (String), minimum (String)" }, "health_check_unhealthy_duration_before_replacement": { "type": "string", "description": "(Integer) Minimal mount of time instance should be unhealthy for us to consider it unhealthy." }, "rancher": { "type": "string", "description": "(Object) The Rancher integration configuration.; Expects the following keys - access_key (String), secret_key (String), master_host (String)" }, "on_demand_count": { "type": "string", "description": "(Integer) Required if risk is not set\nNumber of on demand instances to launch. All other instances will be spot instances.; Either set this parameter or the risk parameter" }, "target": { "type": "string", "description": "(Integer) The number of instances to launch" }, "on_demand_instance_type": { "type": "string", "description": "(String) On-demand instance type that will be provisioned" }, "ignore_changes": { "type": "array", "description": "(List of Strings) list of fields on which changes should be ignored when updating" }, "product": { "type": "string", "description": "(String) Operation system type._" }, "risk": { "type": "string", "description": "(Integer) required if on demand is not set. The percentage of Spot instances to launch (0 - 100)." }, "kubernetes": { "type": "string", "description": "(Object) The Kubernetes integration configuration. Expects the following keys - api_server (String), token (String)" }, "tags": { "type": "array", "description": "(List of tagKey:tagValue paris) a list of tags to configure in the elastigroup. Please specify list of keys and values (key colon value);" }, "mesosphere": { "type": "string", "description": "(Object) The Mesosphere integration configuration. Expects the following key - api_server (String)" }, "min_size": { "type": "string", "description": "(Integer) The lower limit number of instances that you can scale down to" }, "image_id": { "type": "string", "description": "(String) The image Id used to launch the instance.; In case of conflict between Instance type and image type, an error will be returned" }, "tenancy": { "type": "string", "description": "(String) dedicated vs shared tenancy" }, "wait_timeout": { "type": "string", "description": "(Integer) How long the module should wait for instances before failing the action.; Only works if wait_for_instances is True." }, "ecs": { "type": "string", "description": "(Object) The ECS integration configuration.; Expects the following key - cluster_name (String)" }, "load_balancers": { "type": "array", "description": "(List of Strings) List of classic ELB names" }, "security_group_ids": { "type": "array", "description": "(List of Strings) One or more security group IDs. ; In case of update it will override the existing Security Group with the new given array" }, "max_size": { "type": "string", "description": "(Integer) The upper limit number of instances that you can scale up to" }, "block_device_mappings": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of Block Device Mappings for elastigroup instances; You can specify virtual devices and EBS volumes.; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are device_name (List of Strings), virtual_name (String), no_device (String), ebs (Object, expects the following keys- delete_on_termination(Boolean), encrypted(Boolean), iops (Integer), snapshot_id(Integer), volume_type(String), volume_size(Integer))" }, "terminate_at_end_of_billing_hour": { "type": "string", "description": "(Boolean) terminate at the end of billing hour" }, "credentials_path": { "type": "string", "description": "(String) Optional parameter that allows to set a non-default credentials path. Default is ~/.spotinst/credentials" }, "name": { "type": "string", "description": "(String) Unique name for elastigroup to be created, updated or deleted" }, "fallback_to_od": { "type": "string", "description": "(Boolean) In case of no spots available, Elastigroup will launch an On-demand instance instead" }, "network_interfaces": { "type": "array", "description": "(List of Objects) a list of hash/dictionaries of network interfaces to add to the elastigroup; '[{\"key\":\"value\", \"key\":\"value\"}]'; keys allowed are - description (String), device_index (Integer), secondary_private_ip_address_count (Integer), associate_public_ip_address (Boolean), delete_on_termination (Boolean), groups (List of Strings), network_interface_id (String), private_ip_address (String), subnet_id (String), associate_ipv6_address (Boolean), private_ip_addresses (List of Objects, Keys are privateIpAddress (String, required) and primary (Boolean))" }, "lifetime_period": { "type": "string", "description": "(String) lifetime period" }, "health_check_type": { "type": "string", "description": "(String) The service to use for the health check." }, "user_data": { "type": "string", "description": "(String) Base64-encoded MIME user data. Encode before setting the value." }, "persistence": { "type": "string", "description": "(Object) The Stateful elastigroup configration.; Accepts the following keys - should_persist_root_device (Boolean), should_persist_block_devices (Boolean), should_persist_private_ip (Boolean)" }, "utilize_reserved_instances": { "type": "string", "description": "(Boolean) In case of any available Reserved Instances, Elastigroup will utilize your reservations before purchasing Spot instances." }, "uniqueness_by": { "type": "string", "description": "(String) If your group names are not unique, you may use this feature to update or delete a specific group. Whenever this property is set, you must set a group_id in order to update or delete a group, otherwise a group will be created." }, "wait_for_instances": { "type": "string", "description": "(Boolean) Whether or not the elastigroup creation / update actions should wait for the instances to spin" }, "spot_instance_types": { "type": "array", "description": "(List of Strings) Spot instance type that will be provisioned." } } }, "wait_for_connection": { "type": "object", "description": "Waits for a total of C(timeout) seconds.\nRetries the transport connection after a timeout of C(connect_timeout).\nTests the transport connection every C(sleep) seconds.\nThis module makes use of internal ansible transport (and configuration) and the ping/win_ping module to guarantee correct end-to-end functioning.\nThis module is also supported for Windows targets.", "properties": { "delay": { "type": "string", "description": "Number of seconds to wait before starting to poll." }, "sleep": { "type": "string", "description": "Default: 1\n\nNumber of seconds to sleep between checks." }, "connect_timeout": { "type": "string", "description": "Default: 5\n\nMaximum number of seconds to wait for a connection to happen before closing and retrying." }, "timeout": { "type": "string", "description": "Default: 600\n\nMaximum number of seconds to wait for." } } }, "avi_wafpolicy": { "required": [ "waf_profile_ref", "name", "mode" ], "type": "object", "description": "This module is used to configure WafPolicy object\nmore examples at U(https://github.com/avinetworks/devops)", "properties": { "crs_groups": { "type": "string", "description": "Waf rules are categorized in to groups based on their characterization.\nThese groups are system created with crs groups.\nField introduced in 17.2.1." }, "uuid": { "type": "string", "description": "Field introduced in 17.2.1." }, "url": { "type": "string", "description": "Avi controller URL of the object." }, "pre_crs_groups": { "type": "string", "description": "Waf rules are categorized in to groups based on their characterization.\nThese groups are created by the user and will be enforced before the crs groups.\nField introduced in 17.2.1." }, "description": { "type": "string", "description": "Field introduced in 17.2.1." }, "post_crs_groups": { "type": "string", "description": "Waf rules are categorized in to groups based on their characterization.\nThese groups are created by the user and will be enforced after the crs groups.\nField introduced in 17.2.1." }, "tenant_ref": { "type": "string", "description": "It is a reference to an object of type tenant.\nField introduced in 17.2.1." }, "avi_api_patch_op": { "type": "string", "description": "Patch operation to use when using avi_api_update_method as patch." }, "created_by": { "type": "string", "description": "Creator name.\nField introduced in 17.2.4." }, "name": { "type": "string", "description": "Field introduced in 17.2.1." }, "state": { "type": "string", "description": "Default: present\n\nThe state that should be applied on the entity." }, "mode": { "type": "string", "description": "Waf policy mode.\nThis can be detection or enforcement.\nEnum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT.\nField introduced in 17.2.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as WAF_MODE_DETECTION_ONLY." }, "paranoia_level": { "type": "string", "description": "Waf ruleset paranoia mode.\nThis is used to select rules based on the paranoia-level tag.\nEnum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME.\nField introduced in 17.2.1.\nDefault value when not specified in API or module is interpreted by Avi Controller as WAF_PARANOIA_LEVEL_LOW." }, "avi_api_update_method": { "type": "string", "description": "Default: put\n\nDefault method for object update is HTTP PUT.\nSetting to patch will override that behavior to use HTTP PATCH." }, "waf_profile_ref": { "type": "string", "description": "Waf profile for waf policy.\nIt is a reference to an object of type wafprofile.\nField introduced in 17.2.1." } } }, "win_find": { "required": [ "paths" ], "type": "object", "description": "Return a list of files based on specified criteria.\nMultiple criteria are AND'd together.\nFor non-Windows targets, use the M(find) module instead.", "properties": { "paths": { "type": "array", "description": "List of paths of directories to search for files or folders in. This can be supplied as a single path or a list of paths." }, "file_type": { "type": "string", "description": "Default: file\n\nType of file to search for." }, "checksum_algorithm": { "type": "string", "description": "Default: sha1\n\nAlgorithm to determine the checksum of a file. Will throw an error if the host is unable to use specified algorithm." }, "age": { "type": "string", "description": "Select files or folders whose age is equal to or greater than the specified time. Use a negative age to find files equal to or less than the specified time. You can choose seconds, minutes, hours, days or weeks by specifying the first letter of an of those words (e.g., \"2s\", \"10d\", 1w\")." }, "recurse": { "description": "Default: no\n\nWill recursively descend into the directory looking for files or folders.", "$ref": "#/definitions/ansible_truth" }, "age_stamp": { "type": "string", "description": "Default: mtime\n\nChoose the file property against which we compare C(age). The default attribute we compare with is the last modification time." }, "patterns": { "type": "string", "description": "One or more (powershell or regex) patterns to compare filenames with. The type of pattern matching is controlled by C(use_regex) option. The patterns retrict the list of files or folders to be returned based on the filenames. For a file to be matched it only has to match with one pattern in a list provided." }, "get_checksum": { "description": "Default: yes\n\nWhether to return a checksum of the file in the return info (default sha1), use C(checksum_algorithm) to change from the default.", "$ref": "#/definitions/ansible_truth" }, "use_regex": { "description": "Default: no\n\nWill set patterns to run as a regex check if true.", "$ref": "#/definitions/ansible_truth" }, "follow": { "description": "Default: no\n\nSet this to true to follow symlinks in the path. This needs to be used in conjunction with C(recurse).", "$ref": "#/definitions/ansible_truth" }, "hidden": { "description": "Default: no\n\nSet this to include hidden files or folders.", "$ref": "#/definitions/ansible_truth" }, "size": { "type": "string", "description": "Select files or folders whose size is equal to or greater than the specified size. Use a negative value to find files equal to or less than the specified size. You can specify the size with a suffix of the byte type i.e. kilo = k, mega = m... Size is not evaluated for symbolic links." } } }, "vcenter_license": { "required": [ "license" ], "type": "object", "description": "Add and delete vCenter license keys.", "properties": { "state": { "type": "string", "description": "Default: present\n\nWhether to add (C(present)) or remove (C(absent)) the license key." }, "labels": { "type": "string", "description": "Default: {'source': 'ansible'}\n\nThe optional labels of the license key to manage in vSphere vCenter.\nThis is dictionary with key/value pair." }, "license": { "type": "string", "description": "The license key to manage in vSphere vCenter." } } }, "nxos_facts": { "type": "object", "description": "Collects facts from Cisco Nexus devices running the NX-OS operating system. Fact collection is supported over both Cli and Nxapi transports. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, legacy, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "vsphere_guest": { "required": [ "username", "vcenter_hostname", "password", "guest" ], "type": "object", "description": "Create/delete/reconfigure a guest VM through VMware vSphere. This module has a dependency on pysphere >= 1.7", "properties": { "username": { "type": "string", "description": "Username to connect to vcenter as." }, "resource_pool": { "type": "string", "description": "Default: None\n\nThe name of the resource_pool to create the VM in." }, "password": { "type": "string", "description": "Password of the user to connect to vcenter as." }, "force": { "description": "Default: no\n\nBoolean. Allows you to run commands which may alter the running state of a guest. Also used to reconfigure and destroy.", "$ref": "#/definitions/ansible_truth" }, "guest": { "type": "string", "description": "The virtual server name you wish to manage." }, "vm_disk": { "type": "string", "description": "A key, value list of disks and their sizes and which datastore to keep it in." }, "vm_hw_version": { "type": "string", "description": "Desired hardware version identifier (for example, \"vmx-08\" for vms that needs to be managed with vSphere Client). Note that changing hardware version of existing vm is not supported." }, "esxi": { "type": "object", "description": "Dictionary which includes datacenter and hostname on which the VM should be created. For standalone ESXi hosts, ha-datacenter should be used as the datacenter name" }, "vm_nic": { "type": "string", "description": "A key, value list of nics, their types and what network to put them on." }, "vm_hardware": { "type": "string", "description": "A key, value list of VM config settings. Must include ['memory_mb', 'num_cpus', 'osid', 'scsi']." }, "from_template": { "description": "Specifies if the VM should be deployed from a template (mutually exclusive with 'state' parameter). No guest customization changes to hardware such as CPU, RAM, NICs or Disks can be applied when launching from template.", "$ref": "#/definitions/ansible_truth" }, "cluster": { "type": "string", "description": "Default: None\n\nThe name of the cluster to create the VM in. By default this is derived from the host you tell the module to build the guest on." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the vm. 'reconfigured' only applies changes to 'vm_cdrom', 'memory_mb', and 'num_cpus' in vm_hardware parameter. The 'memory_mb' and 'num_cpus' changes are applied to powered-on vms when hot-plugging is enabled for the guest." }, "vmware_guest_facts": { "description": "Gather facts from vCenter on a particular VM", "$ref": "#/definitions/ansible_truth" }, "vm_extra_config": { "type": "string", "description": "A key, value pair of any extra values you want set or changed in the vmx file of the VM. Useful to set advanced options on the VM." }, "power_on_after_clone": { "description": "Default: True\n\nSpecifies if the VM should be powered on after the clone.", "$ref": "#/definitions/ansible_truth" }, "vcenter_hostname": { "type": "string", "description": "The hostname of the vcenter server the module will connect to, to create the guest." }, "validate_certs": { "description": "Default: True\n\nValidate SSL certs. Note, if running on python without SSLContext support (typically, python < 2.7.9) you will have to set this to C(no) as pysphere does not support validating certificates on older python. Prior to 2.1, this module would always validate on python >= 2.7.9 and never validate on python <= 2.7.8.", "$ref": "#/definitions/ansible_truth" }, "template_src": { "type": "string", "description": "Default: None\n\nName of the source template to deploy from" }, "snapshot_to_clone": { "type": "string", "description": "Default: none\n\nA string that when specified, will create a linked clone copy of the VM. Snapshot must already be taken in vCenter." } } }, "win_unzip": { "required": [ "dest", "src" ], "type": "object", "description": "Unzips compressed files and archives. For extracting any compression types other than .zip, the PowerShellCommunityExtensions (PSCX) Module is required. This module (in conjunction with PSCX) has the ability to recursively unzip files within the src zip file provided and also functionality for many other compression types. If the destination directory does not exist, it will be created before unzipping the file. Specifying rm parameter will force removal of the src file after extraction.", "properties": { "dest": { "type": "string", "description": "Destination of zip file (provide absolute path of directory). If it does not exist, the directory will be created." }, "src": { "type": "string", "description": "File to be unzipped (provide absolute path)" }, "recurse": { "type": "string", "description": "Recursively expand zipped files within the src file." }, "creates": { "type": "string", "description": "If this file or directory exists the specified src will not be extracted." }, "rm": { "type": "string", "description": "Remove the zip file, after unzipping" } } }, "vmware_guest_file_operation": { "required": [ "vm_password", "vm_username", "vm_id" ], "type": "object", "description": "Module to copy a file to a VM, fetch a file from a VM and create or delete a directory in the guest OS.", "properties": { "datacenter": { "type": "string", "description": "The datacenter hosting the virtual machine.\nIf set, it will help to speed up virtual machine search." }, "vm_password": { "type": "string", "description": "The password used to login-in to the virtual machine." }, "vm_username": { "type": "string", "description": "The user to login in to the virtual machine." }, "cluster": { "type": "string", "description": "The cluster hosting the virtual machine.\nIf set, it will help to speed up virtual machine search." }, "vm_id_type": { "type": "string", "description": "Default: vm_name\n\nThe VMware identification method by which the virtual machine will be identified." }, "directory": { "type": "string", "description": "Create or delete directory.\nValid attributes are:\n path: directory path to create or remove\n operation: Valid values are create, delete\n recurse (boolean): Not required, default (false)" }, "folder": { "type": "string", "description": "Destination folder, absolute path to find an existing guest or create the new guest.\nThe folder should include the datacenter. ESX's datacenter is ha-datacenter\nUsed only if C(vm_id_type) is C(inventory_path).\nExamples:\n folder: /ha-datacenter/vm\n folder: ha-datacenter/vm\n folder: /datacenter1/vm\n folder: datacenter1/vm\n folder: /datacenter1/vm/folder1\n folder: datacenter1/vm/folder1\n folder: /folder1/datacenter1/vm\n folder: folder1/datacenter1/vm\n folder: /folder1/datacenter1/vm/folder2\n folder: vm/folder2\n folder: folder2" }, "copy": { "type": "string", "description": "Copy file to vm without requiring network.\nValid attributes are:\n src: file source absolute or relative\n dest: file destination, path must be exist\n overwrite: False or True (not required, default False)" }, "vm_id": { "type": "string", "description": "Name of the virtual machine to work with." }, "fetch": { "type": "string", "description": "Get file from virtual machine without requiring network.\nValid attributes are:\n src: The file on the remote system to fetch. This I(must) be a file, not a directory\n dest: file destination on localhost, path must be exist" } } }, "getent": { "required": [ "database" ], "type": "object", "description": "Runs getent against one of it's various databases and returns information into the host's facts, in a getent_ prefixed variable.", "properties": { "fail_key": { "description": "Default: yes\n\nIf a supplied key is missing this will make the task fail if C(yes).", "$ref": "#/definitions/ansible_truth" }, "split": { "type": "string", "description": "Character used to split the database values into lists/arrays such as ':' or '\t', otherwise it will try to pick one depending on the database." }, "key": { "type": "string", "description": "Key from which to return values from the specified database, otherwise the full contents are returned." }, "database": { "type": "string", "description": "The name of a getent database supported by the target system (passwd, group, hosts, etc)." } } }, "vca_vapp": { "required": [ "vapp_name" ], "type": "object", "description": "This module will actively managed vCloud Air vApp instances. Instances can be created and deleted as well as both deployed and undeployed.", "properties": { "vm_name": { "type": "string", "description": "Default: None\n\nThe name of the virtual machine instance in the vApp to manage." }, "username": { "type": "string", "description": "Default: None\n\nThe vCloud Air username to use during authentication" }, "vm_memory": { "type": "string", "description": "Default: None\n\nThe amount of memory in MB to allocate to VMs in the vApp. If the I(vm_name) argument is provided, then this becomes a per VM setting otherise it is applied to all VMs in the vApp." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the vApp." }, "template_name": { "type": "string", "description": "Default: None\n\nThe name of the vApp template to use to create the vApp instance. If the I(state) is not `absent` then the I(template_name) value must be provided. The I(template_name) must be previously uploaded to the catalog specified by I(catalog_name)" }, "instance_id": { "type": "string", "description": "Default: None\n\nThe instance id in a vchs environment to be used for creating the vapp" }, "host": { "type": "string", "description": "Default: None\n\nThe authentication host to be used when service type is vcd." }, "network_mode": { "type": "string", "description": "Default: pool\n\nConfigures the mode of the network connection." }, "vapp_name": { "type": "string", "description": "The name of the vCloud Air vApp instance" }, "network_name": { "type": "string", "description": "Default: None\n\nThe name of the network that should be attached to the virtual machine in the vApp. The virtual network specified must already be created in the vCloud Air VDC. If the I(state) is not 'absent' then the I(network_name) argument must be provided." }, "service_type": { "type": "string", "description": "Default: vca\n\nThe type of service we are authenticating against" }, "org": { "type": "string", "description": "Default: None\n\nThe org to login to for creating vapp, mostly set when the service_type is vdc." }, "operation": { "type": "string", "description": "Default: noop\n\nSpecifies an operation to be performed on the vApp." }, "password": { "type": "string", "description": "Default: None\n\nThe vCloud Air password to use during authentication" }, "vm_cpus": { "type": "string", "description": "Default: None\n\nThe number of vCPUs to configure for the VM in the vApp. If the I(vm_name) argument is provided, then this becomes a per VM setting otherwise it is applied to all VMs in the vApp." }, "vdc_name": { "type": "string", "description": "Default: None\n\nThe name of the virtual data center (VDC) where the vm should be created or contains the vAPP." }, "api_version": { "type": "string", "description": "Default: 5.7\n\nThe api version to be used with the vca" } } }, "hg": { "allOf": [ { "allOf": [ { "not": { "required": [ "repo", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "repo" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "revision", "version" ], "type": "object" } } ] } ], "type": "object", "description": "Manages Mercurial (hg) repositories. Supports SSH, HTTP/S and local address.", "properties": { "purge": { "type": "string", "description": "Default: no\n\nDeletes untracked files. Runs C(hg purge)." }, "executable": { "type": "string", "description": "Path to hg executable to use. If not supplied, the normal mechanism for resolving binary paths will be used." }, "force": { "type": "string", "description": "Default: no\n\nDiscards uncommitted changes. Runs C(hg update -C). Prior to 1.9, the default was `yes`." }, "name": { "type": "string", "description": "The repository address." }, "dest": { "type": "string", "description": "Absolute path of where the repository should be cloned to. This parameter is required, unless clone and update are set to no" }, "clone": { "type": "string", "description": "Default: yes\n\nIf C(no), do not clone the repository if it does not exist locally." }, "update": { "type": "string", "description": "Default: yes\n\nIf C(no), do not retrieve new revisions from the origin repository" }, "repo": { "type": "string", "description": "The repository address." }, "version": { "type": "string", "description": "Equivalent C(-r) option in hg command which could be the changeset, revision number, branch name or even tag." }, "revision": { "type": "string", "description": "Equivalent C(-r) option in hg command which could be the changeset, revision number, branch name or even tag." } } }, "eos_linkagg": { "type": "object", "description": "This module provides declarative management of link aggregation groups on Arista EOS network devices.", "properties": { "group": { "type": "string", "description": "Channel-group number for the port-channel Link aggregation group. Range 1-2000." }, "purge": { "type": "string", "description": "Purge links not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the link aggregation group." }, "mode": { "type": "string", "description": "Mode of the link aggregation group." }, "members": { "type": "array", "description": "List of members of the link aggregation group." }, "min_links": { "type": "string", "description": "Minimum number of ports required up before bringing up the link aggregation group." }, "aggregate": { "type": "array", "description": "List of link aggregation definitions." } } }, "exo_dns_record": { "allOf": [ { "allOf": [ { "not": { "required": [ "prio", "priority" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "content", "value", "address" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "record_type", "rtype", "type" ], "type": "object" } } ] } ], "type": "object", "description": "Create, update and delete records.", "properties": { "content": { "type": "string", "description": "Content of the record.\nRequired if C(state=present) or C(multiple=yes)." }, "domain": { "type": "string", "description": "Domain the record is related to." }, "multiple": { "description": "Whether there are more than one records with similar C(name) and C(record_type).\nOnly allowed for a few record types, e.g. C(record_type=A), C(record_type=NS) or C(record_type=MX).\nC(content) will not be updated, instead it is used as a key to find existing records.", "$ref": "#/definitions/ansible_truth" }, "name": { "type": "string", "description": "Name of the record." }, "prio": { "type": "string", "description": "Priority of the record." }, "rtype": { "type": "string", "description": "Default: A\n\nType of the record." }, "ttl": { "type": "string", "description": "Default: 3600\n\nTTL of the record in seconds." }, "value": { "type": "string", "description": "Content of the record.\nRequired if C(state=present) or C(multiple=yes)." }, "priority": { "type": "string", "description": "Priority of the record." }, "record_type": { "type": "string", "description": "Default: A\n\nType of the record." }, "state": { "type": "string", "description": "Default: present\n\nState of the record." }, "address": { "type": "string", "description": "Content of the record.\nRequired if C(state=present) or C(multiple=yes)." }, "type": { "type": "string", "description": "Default: A\n\nType of the record." } } }, "snow_record": { "required": [ "username", "password", "instance", "state" ], "type": "object", "description": "Creates/Deletes/Updates a single record in ServiceNow", "properties": { "username": { "type": "string", "description": "User to connect to ServiceNow as" }, "lookup_field": { "type": "string", "description": "Default: number\n\nChanges the field that C(number) uses to find records" }, "number": { "type": "string", "description": "Record number to update. Required for C(state:absent)" }, "instance": { "type": "string", "description": "The service now instance name" }, "state": { "type": "string", "description": "If C(present) is supplied with a C(number) argument, the module will attempt to update the record with the supplied data. If no such record exists, a new one will be created. C(absent) will delete a record." }, "attachment": { "type": "string", "description": "Attach a file to the record" }, "table": { "type": "string", "description": "Default: incident\n\nTable to query for records" }, "password": { "type": "string", "description": "Password for username" }, "data": { "type": "string", "description": "key, value pairs of data to load into the record. See Examples. Required for C(state:present)" } } }, "lvg": { "required": [ "vg" ], "type": "object", "description": "This module creates, removes or resizes volume groups.", "properties": { "vg_options": { "type": "string", "description": "Additional options to pass to C(vgcreate) when creating the volume group." }, "pvs": { "type": "array", "description": "List of comma-separated devices to use as physical devices in this volume group. Required when creating or resizing volume group.\nThe module will take care of running pvcreate if needed." }, "force": { "type": "string", "description": "Default: no\n\nIf yes, allows to remove volume group with logical volumes." }, "vg": { "type": "string", "description": "The name of the volume group." }, "state": { "type": "string", "description": "Default: present\n\nControl if the volume group exists." }, "pesize": { "type": "string", "description": "Default: 4\n\nThe size of the physical extent in megabytes. Must be a power of 2." } } }, "ios_user": { "allOf": [ { "allOf": [ { "not": { "required": [ "aggregate", "users", "collection" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "view", "role" ], "type": "object" } } ] } ], "type": "object", "description": "This module provides declarative management of the local usernames configured on network devices. It allows playbooks to manage either individual usernames or the aggregate of usernames in the current running config. It also supports purging usernames from the configuration that are not explicitly defined.", "properties": { "update_password": { "type": "string", "description": "Default: always\n\nSince passwords are encrypted in the device running config, this argument will instruct the module when to change the password. When set to C(always), the password will always be updated in the device and when set to C(on_create) the password will be updated only if the username is created." }, "configured_password": { "type": "string", "description": "The password to be configured on the Cisco IOS device. The password needs to be provided in clear and it will be encrypted on the device. Please note that this option is not same as C(provider password)." }, "users": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "nopassword": { "description": "Defines the username without assigning a password. This will allow the user to login to the system without being authenticated by a password.", "$ref": "#/definitions/ansible_truth" }, "collection": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "purge": { "description": "Instructs the module to consider the resource definition absolute. It will remove any previously configured usernames on the device with the exception of the `admin` user (the current defined set of users).", "$ref": "#/definitions/ansible_truth" }, "privilege": { "type": "string", "description": "The C(privilege) argument configures the privilege level of the user when logged into the system. This argument accepts integer values in the range of 1 to 15." }, "state": { "type": "string", "description": "Default: present\n\nConfigures the state of the username definition as it relates to the device operational configuration. When set to I(present), the username(s) should be configured in the device active configuration and when set to I(absent) the username(s) should not be in the device active configuration" }, "role": { "type": "string", "description": "Configures the view for the username in the device running configuration. The argument accepts a string value defining the view name. This argument does not check if the view has been configured on the device." }, "aggregate": { "type": "string", "description": "The set of username objects to be configured on the remote Cisco IOS device. The list entries can either be the username or a hash of username and properties. This argument is mutually exclusive with the C(name) argument." }, "view": { "type": "string", "description": "Configures the view for the username in the device running configuration. The argument accepts a string value defining the view name. This argument does not check if the view has been configured on the device." }, "name": { "type": "string", "description": "The username to be configured on the Cisco IOS device. This argument accepts a string value and is mutually exclusive with the C(aggregate) argument. Please note that this option is not same as C(provider username)." } } }, "elb_target_group": { "required": [ "name", "state" ], "type": "object", "description": "Manage an AWS Elastic Load Balancer target group. See U(http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html) or U(http://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html) for details.", "properties": { "protocol": { "type": "string", "description": "The protocol to use for routing traffic to the targets. Required when I(state) is C(present)." }, "purge_tags": { "type": "string", "description": "Default: True\n\nIf yes, existing tags will be purged from the resource to match exactly what is defined by I(tags) parameter. If the tag parameter is not set then tags will not be modified." }, "health_check_port": { "type": "string", "description": "Default: The port on which each target receives traffic from the load balancer.\n\nThe port the load balancer uses when performing health checks on targets. Can be set to 'traffic-port' to match target port." }, "modify_targets": { "type": "string", "description": "Default: True\n\nWhether or not to alter existing targets in the group to match what is passed with the module" }, "port": { "type": "string", "description": "The port on which the targets receive traffic. This port is used unless you specify a port override when registering the target. Required if I(state) is C(present)." }, "health_check_path": { "type": "string", "description": "The ping path that is the destination on the targets for health checks. The path must be defined in order to set a health check." }, "health_check_protocol": { "type": "string", "description": "The protocol the load balancer uses when performing health checks on targets." }, "targets": { "type": "string", "description": "A list of targets to assign to the target group. This parameter defaults to an empty list. Unless you set the 'modify_targets' parameter then all existing targets will be removed from the group. The list should be an Id and a Port parameter. See the Examples for detail." }, "state": { "type": "string", "description": "Create or destroy the target group." }, "stickiness_enabled": { "type": "string", "description": "Indicates whether sticky sessions are enabled." }, "deregistration_delay_timeout": { "type": "string", "description": "The amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds." }, "tags": { "type": "object", "description": "A dictionary of one or more tags to assign to the target group." }, "successful_response_codes": { "type": "string", "description": "The HTTP codes to use when checking for a successful response from a target. You can specify multiple values (for example, \"200,202\") or a range of values (for example, \"200-299\")." }, "health_check_interval": { "type": "string", "description": "The approximate amount of time, in seconds, between health checks of an individual target." }, "healthy_threshold_count": { "type": "string", "description": "The number of consecutive health checks successes required before considering an unhealthy target healthy." }, "unhealthy_threshold_count": { "type": "string", "description": "The number of consecutive health check failures required before considering a target unhealthy." }, "stickiness_type": { "type": "string", "description": "Default: lb_cookie\n\nThe type of sticky sessions. The possible value is lb_cookie." }, "name": { "type": "string", "description": "The name of the target group." }, "target_type": { "type": "string", "description": "Default: instance\n\nThe type of target that you must specify when registering targets with this target group. The possible values are C(instance) (targets are specified by instance ID) or C(ip) (targets are specified by IP address). Note that you can't specify targets for a target group using both instance IDs and IP addresses. If the target type is ip, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses." }, "stickiness_lb_cookie_duration": { "type": "string", "description": "The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds)." }, "vpc_id": { "type": "string", "description": "The identifier of the virtual private cloud (VPC). Required when I(state) is C(present)." }, "health_check_timeout": { "type": "string", "description": "The amount of time, in seconds, during which no response from a target means a failed health check." } } }, "ovirt_nics_facts": { "required": [ "vm" ], "type": "object", "description": "Retrieve facts about one or more oVirt/RHV virtual machine network interfaces.", "properties": { "vm": { "type": "string", "description": "Name of the VM where NIC is attached." }, "name": { "type": "string", "description": "Name of the NIC, can be used as glob expression." } } }, "ios_facts": { "type": "object", "description": "Collects a base set of device facts from a remote device that is running IOS. This module prepends all of the base network fact keys with C(ansible_net_). The facts module will always collect a base set of facts from the device and can enable or disable collection of additional facts.", "properties": { "gather_subset": { "type": "string", "description": "Default: !config\n\nWhen supplied, this argument will restrict the facts collected to a given subset. Possible values for this argument include all, hardware, config, and interfaces. Can specify a list of values to include a larger subset. Values can also be used with an initial C(M(!)) to specify that a specific subset should not be collected." } } }, "azure_rm_postgresqlserver": { "required": [ "name", "resource_group" ], "type": "object", "description": "Create, update and delete instance of PostgreSQL Server.", "properties": { "sku": { "type": "string", "description": "The SKU (pricing tier) of the server." }, "name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." }, "storage_mb": { "type": "string", "description": "The maximum storage allowed for a server." }, "admin_username": { "type": "string", "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." }, "version": { "type": "string", "description": "Server version." }, "location": { "type": "string", "description": "Resource location. If not set, location from the resource group will be used as default." }, "enforce_ssl": { "description": "Enable SSL enforcement.", "$ref": "#/definitions/ansible_truth" }, "admin_password": { "type": "string", "description": "The password of the administrator login." } } }, "ovirt_users_facts": { "type": "object", "description": "Retrieve facts about one or more oVirt/RHV users.", "properties": { "pattern": { "type": "string", "description": "Search term which is accepted by oVirt/RHV search backend.\nFor example to search user X use following pattern: name=X" } } }, "cl_ports": { "type": "object", "description": "Set the initial port attribute defined in the Cumulus Linux ports.conf, file. This module does not do any error checking at the moment. Be careful to not include ports that do not exist on the switch. Carefully read the original ports.conf file for any exceptions or limitations. For more details go the Configure Switch Port Attribute Documentation at U(http://docs.cumulusnetworks.com).", "properties": { "speed_4_by_10g": { "type": "array", "description": "List of 40G ports that will be unganged to run as 4 10G ports." }, "speed_10g": { "type": "array", "description": "List of ports to run initial run at 10G." }, "speed_40g": { "type": "array", "description": "List of ports to run initial run at 40G." }, "speed_40g_div_4": { "type": "array", "description": "List of 10G ports that will be ganged to form a 40G port." } } }, "ec2_vpc_nacl": { "required": [ "name", "vpc_id" ], "type": "object", "description": "Read the AWS documentation for Network ACLS U(http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html)", "properties": { "subnets": { "type": "string", "description": "The list of subnets that should be associated with the network ACL.\nMust be specified as a list\nEach subnet can be specified as subnet ID, or its tagged name." }, "ingress": { "type": "array", "description": "List of rules for incoming traffic.\nEach rule must be specified as a list." }, "name": { "type": "string", "description": "Tagged name identifying a network ACL." }, "tags": { "type": "object", "description": "Dictionary of tags to look for and apply when creating a network ACL." }, "state": { "type": "string", "description": "Default: present\n\nCreates or modifies an existing NACL\nDeletes a NACL and reassociates subnets to the default NACL" }, "egress": { "type": "string", "description": "A list of rules for outgoing traffic.\nEach rule must be specified as a list." }, "vpc_id": { "type": "string", "description": "VPC id of the requesting VPC." } } }, "junos_system": { "type": "object", "description": "This module provides declarative management of node system attributes on Juniper JUNOS devices. It provides an option to configure host system parameters or remove those parameters from the device active configuration.", "properties": { "domain_search": { "type": "string", "description": "Provides the list of domain suffixes to append to the hostname for the purpose of doing name resolution. This argument accepts a list of names and will be reconciled with the current active configuration on the running node." }, "hostname": { "type": "string", "description": "Configure the device hostname parameter. This option takes an ASCII string value." }, "domain_name": { "type": "string", "description": "Configure the IP domain name on the remote device to the provided value. Value should be in the dotted name form and will be appended to the C(hostname) to create a fully-qualified domain name." }, "active": { "type": "string", "description": "Default: True\n\nSpecifies whether or not the configuration is active or deactivated" }, "state": { "type": "string", "description": "Default: present\n\nState of the configuration values in the device's current active configuration. When set to I(present), the values should be configured in the device active configuration and when set to I(absent) the values should not be in the device active configuration" }, "name_servers": { "type": "array", "description": "List of DNS name servers by IP address to use to perform name resolution lookups. This argument accepts either a list of DNS servers See examples." } } }, "docker_secret": { "required": [ "name" ], "type": "object", "description": "Create and remove Docker secrets in a Swarm environment. Similar to `docker secret create` and `docker secret rm`.\nAdds to the metadata of new secrets 'ansible_key', an encrypted hash representation of the data, which is then used\nin future runs to test if a secret has changed.\nIf 'ansible_key is not present, then a secret will not be updated unless the C(force) option is set.\nUpdates to secrets are performed by removing the secret and creating it again.", "properties": { "force": { "type": "string", "description": "Boolean. Use with state C(present) to always remove and recreate an existing secret.\nIf I(true), an existing secret will be replaced, even if it has not changed." }, "state": { "type": "string", "description": "Default: present\n\nSet to C(present), if the secret should exist, and C(absent), if it should not." }, "labels": { "type": "string", "description": "A map of key:value meta data, where both the I(key) and I(value) are expected to be a string.\nIf new meta data is provided, or existing meta data is modified, the secret will be updated by removing it and creating it again." }, "data": { "type": "string", "description": "String. The value of the secret. Required when state is C(present)." }, "name": { "type": "string", "description": "The name of the secret." } } }, "onyx_vlan": { "type": "object", "description": "This module provides declarative management of VLANs on Mellanox ONYX network devices.", "properties": { "aggregate": { "type": "array", "description": "List of VLANs definitions." }, "purge": { "type": "string", "description": "Purge VLANs not defined in the I(aggregate) parameter." }, "state": { "type": "string", "description": "Default: present\n\nState of the VLAN configuration." }, "name": { "type": "string", "description": "Name of the VLAN." }, "vlan_id": { "type": "string", "description": "ID of the VLAN." } } }, "crypttab": { "required": [ "state", "name" ], "type": "object", "description": "Control Linux encrypted block devices that are set up during system boot in C(/etc/crypttab).", "properties": { "name": { "type": "string", "description": "Name of the encrypted block device as it appears in the C(/etc/crypttab) file, or optionaly prefixed with C(/dev/mapper/), as it appears in the filesystem. I(/dev/mapper/) will be stripped from I(name)." }, "backing_device": { "type": "string", "description": "Path to the underlying block device or file, or the UUID of a block-device prefixed with I(UUID=)" }, "state": { "type": "string", "description": "Use I(present) to add a line to C(/etc/crypttab) or update it's definition if already present. Use I(absent) to remove a line with matching I(name). Use I(opts_present) to add options to those already present; options with different values will be updated. Use I(opts_absent) to remove options from the existing set." }, "path": { "type": "string", "description": "Default: /etc/crypttab\n\nPath to file to use instead of C(/etc/crypttab). This might be useful in a chroot environment." }, "password": { "type": "string", "description": "Default: none\n\nEncryption password, the path to a file containing the pasword, or 'none' or '-' if the password should be entered at boot." }, "opts": { "type": "string", "description": "A comma-delimited list of options. See C(crypttab(5) ) for details." } } }, "riak": { "type": "object", "description": "This module can be used to join nodes to a cluster, check the status of the cluster.", "properties": { "target_node": { "type": "string", "description": "Default: riak@127.0.0.1\n\nThe target node for certain operations (join, ping)" }, "validate_certs": { "type": "string", "description": "Default: yes\n\nIf C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates." }, "wait_for_service": { "type": "string", "description": "Default: None\n\nWaits for a riak service to come online before continuing." }, "http_conn": { "type": "string", "description": "Default: 127.0.0.1:8098\n\nThe ip address and port that is listening for Riak HTTP queries" }, "wait_for_ring": { "description": "Number of seconds to wait for all nodes to agree on the ring.", "$ref": "#/definitions/ansible_number" }, "wait_for_handoffs": { "description": "Number of seconds to wait for handoffs to complete.", "$ref": "#/definitions/ansible_number" }, "command": { "type": "string", "description": "The command you would like to perform against the cluster." }, "config_dir": { "type": "string", "description": "Default: /etc/riak\n\nThe path to the riak configuration directory" } } }, "stat": { "allOf": [ { "allOf": [ { "not": { "required": [ "mime", "mime_type", "mime-type" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "checksum_algorithm", "checksum_algo", "checksum" ], "type": "object" } } ] } ], "type": "object", "description": "Retrieves facts for a file similar to the linux/unix 'stat' command.", "properties": { "checksum_algorithm": { "type": "string", "description": "Default: sha1\n\nAlgorithm to determine checksum of file. Will throw an error if the host is unable to use specified algorithm." }, "mime-type": { "type": "string", "description": "Use file magic and return data about the nature of the file. this uses the 'file' utility found on most Linux/Unix systems.\nThis will add both `mime_type` and 'charset' fields to the return, if possible." }, "mime": { "type": "string", "description": "Use file magic and return data about the nature of the file. this uses the 'file' utility found on most Linux/Unix systems.\nThis will add both `mime_type` and 'charset' fields to the return, if possible." }, "get_checksum": { "type": "string", "description": "Default: True\n\nWhether to return a checksum of the file (default sha1)" }, "checksum": { "type": "string", "description": "Default: sha1\n\nAlgorithm to determine checksum of file. Will throw an error if the host is unable to use specified algorithm." }, "checksum_algo": { "type": "string", "description": "Default: sha1\n\nAlgorithm to determine checksum of file. Will throw an error if the host is unable to use specified algorithm." }, "follow": { "type": "string", "description": "Whether to follow symlinks" }, "path": { "type": "string", "description": "The full path of the file/object to get the facts of" }, "get_md5": { "type": "string", "description": "Default: True\n\nWhether to return the md5 sum of the file. Will return None if we're unable to use md5 (Common for FIPS-140 compliant systems)" }, "mime_type": { "type": "string", "description": "Use file magic and return data about the nature of the file. this uses the 'file' utility found on most Linux/Unix systems.\nThis will add both `mime_type` and 'charset' fields to the return, if possible." } } }, "vmware_local_user_manager": { "required": [ "local_user_name" ], "type": "object", "description": "Manage local users on an ESXi host", "properties": { "local_user_password": { "type": "string", "description": "The password to be set." }, "local_user_description": { "type": "string", "description": "Description for the user." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the user. If the user already exists when C(state=present), the user info is updated" }, "local_user_name": { "type": "string", "description": "The local user name to be changed." } } }, "kubernetes": { "allOf": [ { "allOf": [ { "not": { "required": [ "url_password", "password" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "api_endpoint", "endpoint" ], "type": "object" } }, { "oneOf": [ { "required": [ "api_endpoint" ], "type": "object" }, { "required": [ "endpoint" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "url_username", "username" ], "type": "object" } } ] }, { "allOf": [ { "not": { "required": [ "patch_operation", "patch_strategy" ], "type": "object" } } ] } ], "type": "object", "description": "This module can manage Kubernetes resources on an existing cluster using the Kubernetes server API. Users can specify in-line API data, or specify an existing Kubernetes YAML file.\nCurrently, this module (1) Only supports HTTP Basic Auth (2) Only supports 'strategic merge' for update, http://goo.gl/fCPYxT SSL certs are not working, use C(validate_certs=off) to disable.", "properties": { "username": { "type": "string", "description": "Default: admin\n\nThe HTTP Basic Auth username for the API I(endpoint). This should be set unless using the C('insecure') option." }, "url_password": { "type": "string", "description": "The HTTP Basic Auth password for the API I(endpoint). This should be set unless using the C('insecure') option." }, "patch_strategy": { "type": "string", "description": "Default: Strategic Merge Patch\n\nSpecify patch operation for Kubernetes resource update.\nFor details, see the description of PATCH operations at U(https://github.com/kubernetes/kubernetes/blob/release-1.5/docs/devel/api-conventions.md#patch-operations)." }, "endpoint": { "type": "string", "description": "The IPv4 API endpoint of the Kubernetes cluster." }, "certificate_authority_data": { "type": "string", "description": "Certificate Authority data for Kubernetes server. Should be in either standard PEM format or base64 encoded PEM data. Note that certificate verification is broken until ansible supports a version of 'match_hostname' that can match the IP address against the CA data." }, "inline_data": { "type": "string", "description": "The Kubernetes YAML data to send to the API I(endpoint). This option is mutually exclusive with C('file_reference')." }, "insecure": { "type": "string", "description": "Reverts the connection to using HTTP instead of HTTPS. This option should only be used when execuing the M('kubernetes') module local to the Kubernetes cluster using the insecure local port (locahost:8080 by default)." }, "file_reference": { "type": "string", "description": "Specify full path to a Kubernets YAML file to send to API I(endpoint). This option is mutually exclusive with C('inline_data')." }, "api_endpoint": { "type": "string", "description": "The IPv4 API endpoint of the Kubernetes cluster." }, "state": { "type": "string", "description": "Default: present\n\nThe desired action to take on the Kubernetes data." }, "url_username": { "type": "string", "description": "Default: admin\n\nThe HTTP Basic Auth username for the API I(endpoint). This should be set unless using the C('insecure') option." }, "password": { "type": "string", "description": "The HTTP Basic Auth password for the API I(endpoint). This should be set unless using the C('insecure') option." }, "validate_certs": { "description": "Default: no\n\nEnable/disable certificate validation. Note that this is set to C(false) until Ansible can support IP address based certificate hostname matching (exists in >= python3.5.0).", "$ref": "#/definitions/ansible_truth" }, "patch_operation": { "type": "string", "description": "Default: Strategic Merge Patch\n\nSpecify patch operation for Kubernetes resource update.\nFor details, see the description of PATCH operations at U(https://github.com/kubernetes/kubernetes/blob/release-1.5/docs/devel/api-conventions.md#patch-operations)." } } }, "bigip_monitor_tcp_echo": { "required": [ "name" ], "type": "object", "description": "Manages F5 BIG-IP LTM tcp echo monitors.", "properties": { "partition": { "type": "string", "description": "Default: Common\n\nDevice partition to manage resources on." }, "name": { "type": "string", "description": "Monitor name." }, "parent": { "type": "string", "description": "Default: /Common/tcp_echo\n\nThe parent template of this monitor template. Once this value has been set, it cannot be changed. By default, this value is the C(tcp_echo) parent on the C(Common) partition." }, "ip": { "type": "string", "description": "IP address part of the IP/port definition. If this parameter is not provided when creating a new monitor, then the default value will be '*'.\nIf this value is an IP address, and the C(type) is C(tcp) (the default), then a C(port) number must be specified." }, "interval": { "type": "string", "description": "The interval specifying how frequently the monitor instance of this template will run. If this parameter is not provided when creating a new monitor, then the default value will be 5. This value B(must) be less than the C(timeout) value." }, "state": { "type": "string", "description": "Default: present\n\nWhen C(present), ensures that the monitor exists.\nWhen C(absent), ensures the monitor is removed." }, "time_until_up": { "type": "string", "description": "Specifies the amount of time in seconds after the first successful response before a node will be marked up. A value of 0 will cause a node to be marked up immediately after a valid response is received from the node. If this parameter is not provided when creating a new monitor, then the default value will be 0." }, "timeout": { "type": "string", "description": "The number of seconds in which the node or service must respond to the monitor request. If the target responds within the set time period, it is considered up. If the target does not respond within the set time period, it is considered down. You can change this number to any number you want, however, it should be 3 times the interval number of seconds plus 1 second. If this parameter is not provided when creating a new monitor, then the default value will be 16." } } }, "zypper": { "allOf": [ { "allOf": [ { "not": { "required": [ "name", "pkg" ], "type": "object" } }, { "oneOf": [ { "required": [ "name" ], "type": "object" }, { "required": [ "pkg" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "update_cache", "refresh" ], "type": "object" } } ] } ], "type": "object", "description": "Manage packages on SUSE and openSUSE using the zypper and rpm tools.", "properties": { "force": { "type": "string", "description": "Default: no\n\nAdds C(--force) option to I(zypper). Allows to downgrade packages and change vendor or architecture." }, "name": { "type": "string", "description": "Package name C(name) or package specifier.\nCan include a version like C(name=1.0), C(name>3.4) or C(name<=2.7). If a version is given, C(oldpackage) is implied and zypper is allowed to update the package within the version range given.\nYou can also pass a url or a local path to a rpm file.\nWhen using state=latest, this can be '*', which updates all installed packages." }, "disable_gpg_check": { "type": "string", "description": "Default: no\n\nWhether to disable to GPG signature checking of the package signature being installed. Has an effect only if state is I(present) or I(latest)." }, "refresh": { "type": "string", "description": "Default: no\n\nRun the equivalent of C(zypper refresh) before the operation." }, "state": { "type": "string", "description": "Default: present\n\nC(present) will make sure the package is installed. C(latest) will make sure the latest version of the package is installed. C(absent) will make sure the specified package is not installed." }, "oldpackage": { "type": "string", "description": "Default: no\n\nAdds C(--oldpackage) option to I(zypper). Allows to downgrade packages with less side-effects than force. This is implied as soon as a version is specified as part of the package name." }, "update_cache": { "type": "string", "description": "Default: no\n\nRun the equivalent of C(zypper refresh) before the operation." }, "pkg": { "type": "string", "description": "Package name C(name) or package specifier.\nCan include a version like C(name=1.0), C(name>3.4) or C(name<=2.7). If a version is given, C(oldpackage) is implied and zypper is allowed to update the package within the version range given.\nYou can also pass a url or a local path to a rpm file.\nWhen using state=latest, this can be '*', which updates all installed packages." }, "disable_recommends": { "type": "string", "description": "Default: yes\n\nCorresponds to the C(--no-recommends) option for I(zypper). Default behavior (C(yes)) modifies zypper's default behavior; C(no) does install recommended packages." }, "type": { "type": "string", "description": "Default: package\n\nThe type of package to be operated on." } } }, "pn_trunk": { "required": [ "pn_name", "state" ], "type": "object", "description": "Execute trunk-create or trunk-delete command.\nTrunks can be used to aggregate network links at Layer 2 on the local switch. Use this command to create a new trunk.", "properties": { "pn_name": { "type": "string", "description": "Specify the name for the trunk configuration." }, "pn_unkown_ucast_level": { "type": "string", "description": "Specify an unkown unicast level in percent. The default value is 100%." }, "pn_lacp_fallback_timeout": { "type": "string", "description": "Specify the LACP fallback timeout in seconds. The range is between 30 and 60 seconds with a default value of 50 seconds." }, "pn_lacp_timeout": { "type": "string", "description": "Specify the LACP time out as slow (30 seconds) or fast (4seconds). The default value is slow." }, "pn_host": { "type": "string", "description": "Host facing port control setting." }, "pn_port_macaddr": { "type": "string", "description": "Specify the MAC address of the port." }, "pn_lacp_fallback": { "type": "string", "description": "Specify the LACP fallback mode as bundles or individual." }, "pn_routing": { "type": "string", "description": "Specify if the port participates in routing on the network." }, "pn_mirror_receive": { "type": "string", "description": "Specify if the configuration receives mirrored traffic." }, "pn_egress_rate_limit": { "type": "string", "description": "Specify an egress port data rate limit for the configuration." }, "state": { "type": "string", "description": "State the action to perform. Use 'present' to create trunk, 'absent' to delete trunk and 'update' to modify trunk." }, "pn_ports": { "type": "string", "description": "Specify the port number(s) for the link(s) to aggregate into the trunk.\nRequired for trunk-create." }, "pn_broadcast_level": { "type": "string", "description": "Specify a broadcast level in percent. The default value is 100%." }, "pn_cliswitch": { "type": "string", "description": "Target switch(es) to run the cli on." }, "pn_loopback": { "type": "string", "description": "Specify loopback if you want to use loopback." }, "pn_unkown_mcast_level": { "type": "string", "description": "Specify an unkown multicast level in percent. The default value is 100%." }, "pn_speed": { "type": "string", "description": "Specify the port speed or disable the port." }, "pn_edge_switch": { "type": "string", "description": "Specify if the switch is an edge switch." }, "pn_jumbo": { "type": "string", "description": "Specify if the port can receive jumbo frames." }, "pn_clipassword": { "type": "string", "description": "Provide login password if user is not root." }, "pn_cliusername": { "type": "string", "description": "Provide login username if user is not root." }, "pn_lacp_mode": { "type": "string", "description": "Specify the LACP mode for the configuration." }, "pn_loopvlans": { "type": "string", "description": "Specify a list of looping vlans." }, "pn_lacp_priority": { "type": "string", "description": "Specify the LACP priority. This is a number between 1 and 65535 with a default value of 32768." }, "pn_pause": { "type": "string", "description": "Specify if pause frames are sent." }, "pn_description": { "type": "string", "description": "Specify a description for the trunk configuration." } } }, "azure_rm_sqlserver_facts": { "required": [ "resource_group" ], "type": "object", "description": "Get facts of SQL Server.", "properties": { "server_name": { "type": "string", "description": "The name of the server." }, "resource_group": { "type": "string", "description": "The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal." } } }, "ipadm_addrprop": { "allOf": [ { "allOf": [ { "not": { "required": [ "property", "name" ], "type": "object" } }, { "oneOf": [ { "required": [ "property" ], "type": "object" }, { "required": [ "name" ], "type": "object" } ] } ] }, { "allOf": [ { "not": { "required": [ "addrobj", "nic", "interface" ], "type": "object" } }, { "oneOf": [ { "required": [ "addrobj" ], "type": "object" }, { "required": [ "nic" ], "type": "object" }, { "required": [ "interface" ], "type": "object" } ] } ] } ], "type": "object", "description": "Modify IP address properties on Solaris/illumos systems.", "properties": { "temporary": { "type": "string", "description": "Specifies that the address property value is temporary. Temporary values do not persist across reboots." }, "name": { "type": "string", "description": "Specifies the name of the address property we want to manage." }, "nic": { "type": "string", "description": "Specifies the address object we want to manage." }, "value": { "type": "string", "description": "Specifies the value we want to set for the address property." }, "state": { "type": "string", "description": "Default: present\n\nSet or reset the property value." }, "interface": { "type": "string", "description": "Specifies the address object we want to manage." }, "property": { "type": "string", "description": "Specifies the name of the address property we want to manage." }, "addrobj": { "type": "string", "description": "Specifies the address object we want to manage." } } }, "oneview_ethernet_network_facts": { "type": "object", "description": "Retrieve the facts about one or more of the Ethernet Networks from OneView.", "properties": { "name": { "type": "string", "description": "Ethernet Network name." }, "options": { "type": "array", "description": "List with options to gather additional facts about an Ethernet Network and related resources. Options allowed: C(associatedProfiles) and C(associatedUplinkGroups)." } } }, "digital_ocean_sshkey": { "type": "object", "description": "Create/delete an SSH key.", "properties": { "name": { "type": "string", "description": "String, this is the name of an SSH key to create or destroy." }, "id": { "type": "string", "description": "Numeric, the SSH key id you want to operate on." }, "state": { "type": "string", "description": "Default: present\n\nIndicate desired state of the target." }, "client_id": { "type": "string", "description": "DigitalOcean manager id." }, "api_key": { "type": "string", "description": "DigitalOcean api key." }, "ssh_pub_key": { "type": "string", "description": "The public SSH key you want to add to your account." } } }, "netapp_e_lun_mapping": { "required": [ "volume_name", "state" ], "type": "object", "description": "Allows for the creation and removal of volume to host mappings for NetApp E-series storage arrays.", "properties": { "target": { "type": "string", "description": "The name of host or hostgroup you wish to assign to the mapping\nIf omitted, the default hostgroup is used.\nIf the supplied I(volume_name) is associated with a different target, it will be updated to what is supplied here." }, "api_username": { "type": "string", "description": "The username used to authenticate against the API. This can optionally be set via an environment variable, API_USERNAME" }, "api_password": { "type": "string", "description": "The password used to authenticate against the API. This can optionally be set via an environment variable, API_PASSWORD" }, "target_type": { "type": "string", "description": "Whether the target is a host or group.\nRequired if supplying an explicit target." }, "state": { "type": "string", "description": "Present will ensure the mapping exists, absent will remove the mapping.\nAll parameters I(lun), I(target), I(target_type) and I(volume_name) must still be supplied." }, "volume_name": { "type": "string", "description": "The name of the volume you wish to include in the mapping." }, "api_url": { "type": "string", "description": "The full API url. Example: http://ENDPOINT:8080/devmgr/v2\nThis can optionally be set via an environment variable, API_URL" }, "validate_certs": { "type": "string", "description": "Default: True\n\nShould https certificates be validated?" }, "lun": { "type": "string", "description": "The LUN number you wish to give the mapping\nIf the supplied I(volume_name) is associated with a different LUN, it will be updated to what is supplied here." }, "ssid": { "type": "string", "description": "The storage system array identifier." } } }, "datadog_monitor": { "required": [ "app_key", "name", "state", "api_key" ], "type": "object", "description": "Manages monitors within Datadog\nOptions like described on http://docs.datadoghq.com/api/", "properties": { "notify_audit": { "type": "string", "description": "A boolean indicating whether tagged users will be notified on changes to this monitor." }, "locked": { "type": "string", "description": "A boolean indicating whether changes to this monitor should be restricted to the creator or admins." }, "timeout_h": { "type": "string", "description": "The number of hours of the monitor not reporting data before it will automatically resolve from a triggered state." }, "tags": { "type": "string", "description": "Default: None\n\nA list of tags to associate with your monitor when creating or updating. This can help you categorize and filter monitors." }, "thresholds": { "type": "object", "description": "Default: {'warning': 1, 'ok': 1, 'critical': 1}\n\nA dictionary of thresholds by status. This option is only available for service checks and metric alerts. Because each of them can have multiple thresholds, we don't define them directly in the query." }, "silenced": { "type": "object", "description": "Dictionary of scopes to timestamps or None. Each scope will be muted until the given POSIX timestamp or forever if the value is None. " }, "app_key": { "type": "string", "description": "Your DataDog app key." }, "notify_no_data": { "type": "string", "description": "A boolean indicating whether this monitor will notify when data stops reporting.." }, "renotify_interval": { "type": "string", "description": "The number of minutes after the last notification before a monitor will re-notify on the current status. It will only re-notify if it's not resolved." }, "state": { "type": "string", "description": "The designated state of the monitor." }, "escalation_message": { "type": "string", "description": "A message to include with a re-notification. Supports the '@username' notification we allow elsewhere. Not applicable if renotify_interval is None" }, "query": { "type": "string", "description": "The monitor query to notify on with syntax varying depending on what type of monitor you are creating." }, "message": { "type": "string", "description": "A message to include with notifications for this monitor. Email notifications can be sent to specific users by using the same '@username' notation as events. Monitor message template variables can be accessed by using double square brackets, i.e '[[' and ']]'." }, "api_key": { "type": "string", "description": "Your DataDog API key." }, "type": { "type": "string", "description": "The type of the monitor.\nThe 'event alert'is available starting at Ansible 2.1" }, "no_data_timeframe": { "type": "string", "description": "Default: 2x timeframe for metric, 2 minutes for service\n\nThe number of minutes before a monitor will notify when data stops reporting. Must be at least 2x the monitor timeframe for metric alerts or 2 minutes for service checks." }, "name": { "type": "string", "description": "The name of the alert." } } } } } ] }, "definitions": { "ansible_number": { "oneOf": [ { "type": "integer" }, { "type": "string" } ] }, "ansible_truth": { "oneOf": [ { "type": "boolean" }, { "enum": [ 0, 1 ], "type": "integer" }, { "enum": [ "yes", "no", "Yes", "No", "YES", "NO", "on", "off", "On", "Off", "ON", "OFF", "1", "0", "true", "false", "True", "FalseTRUE", "FALSE" ], "type": "string" } ] } }, "$schema": "http://json-schema.org/draft-04/schema#", "type": "array" }