1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

Enabling validation-modules for web_infrastructure modules (#1200) (#1211)

* fixed validation-modules for apache2_mod_proxy.py

* fixed validation-modules for apache2_module.py

* fixed validation-modules for deploy_helper.py

The ignore lines were put back in place because
add_file_common_args=True is used and the module inherits a number of
options that do not show up in the documentation (nor should they).

* fixed validation-modules for ejabberd_user.py

* fixed validation-modules for gunicorn.py

* fixed validation-modules for htpasswd.py

* fixed validation-modules for jenkins_job.py

* fixed validation-modules for jenkins_job_info.py

* fixed validation-modules for jenkins_plugin.py

* fixed validation-modules for jenkins_script.py

* fixed validation-modules for jira.py

* fixed validation-modules for nginx_status_facts.py

* fixed validation-modules for rundeck_acl_policy.py

* fixed validation-modules for rundeck_project.py

* fixed validation-modules for supervisorctl.py

* fixed validation-modules for taiga_issue.py

* fixed pylint mistake in plugins/modules/web_infrastructure/jenkins_job_info.py

* removed ignore lines for almost-all web_infrastructure modules

* rolled back ignore lines for nested sophos_utm modules that were not adjusted

* Removed doc-missing-type from ignore-2.11.txt for deploy_helper and jenkins_plugin

* When adding lines back to ignore files, we added more than it was before. Removing.

* Rolled back deprecation line in ignore-2.9.txt for nginx_status_facts

* Rolled back yet another line in ignore-2.9.txt for nginx_status_facts

* Fixed argument_spec and docs for crypt_scheme parameter in htpasswd, per PR

* Added extends_documentation_fragment:files to deploy_helper and jenkins_plugin

* Removed long-deprecated option params from jenkins_plugin, removed validate-modules lines from ignore files for that module

* Update plugins/modules/web_infrastructure/htpasswd.py

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit 85371e7b6d)

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
This commit is contained in:
patchback[bot] 2020-10-31 14:28:15 +01:00 committed by GitHub
parent 5a826a5cb7
commit 901bca58bb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
19 changed files with 180 additions and 166 deletions

View file

@ -21,26 +21,30 @@ description:
python module.
options:
balancer_url_suffix:
type: str
description:
- Suffix of the balancer pool url required to access the balancer pool
status page (e.g. balancer_vhost[:port]/balancer_url_suffix).
default: /balancer-manager/
balancer_vhost:
type: str
description:
- (ipv4|ipv6|fqdn):port of the Apache httpd 2.4 mod_proxy balancer pool.
required: true
member_host:
type: str
description:
- (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: str
description:
- Desired 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).
choices: ["present", "absent", "enabled", "disabled", "drained", "hot_standby", "ignore_errors"]
- 'Accepted state values: ["present", "absent", "enabled", "disabled", "drained", "hot_standby", "ignore_errors"]'
tls:
description:
- Use https to access balancer management page.
@ -351,7 +355,7 @@ def main():
""" Initiates module."""
module = AnsibleModule(
argument_spec=dict(
balancer_vhost=dict(required=True, default=None, type='str'),
balancer_vhost=dict(required=True, type='str'),
balancer_url_suffix=dict(default="/balancer-manager/", type='str'),
member_host=dict(type='str'),
state=dict(type='str'),

View file

@ -20,10 +20,12 @@ description:
- Enables or disables a specified module of the Apache2 webserver.
options:
name:
type: str
description:
- Name of the module to enable/disable as given to C(a2enmod/a2dismod).
required: true
identifier:
type: str
description:
- Identifier of the module as listed by C(apache2ctl -M).
This is optional and usually determined automatically by the common convention of
@ -36,6 +38,7 @@ options:
type: bool
default: False
state:
type: str
description:
- Desired state of the module.
choices: ['present', 'absent']

View file

@ -32,6 +32,7 @@ description:
options:
path:
type: path
required: True
aliases: ['dest']
description:
@ -39,6 +40,7 @@ options:
Returned in the C(deploy_helper.project_path) fact.
state:
type: str
description:
- the state of the project.
C(query) will only gather facts,
@ -51,18 +53,21 @@ options:
default: present
release:
type: str
description:
- the 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 }}).
releases_path:
type: str
description:
- the 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.
default: releases
shared_path:
type: path
description:
- the 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.
@ -70,12 +75,14 @@ options:
default: shared
current_path:
type: path
description:
- the 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.
default: current
unfinished_filename:
type: str
description:
- the 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
@ -89,6 +96,7 @@ options:
default: 'yes'
keep_releases:
type: int
description:
- the 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.
@ -102,6 +110,7 @@ notes:
- Because of the default behaviour of generating the I(new_release) fact, this module will not be idempotent
unless you pass your own release name with C(release). Due to the nature of deploying software, this should not
be much of a problem.
extends_documentation_fragment: files
'''
EXAMPLES = '''

View file

@ -19,14 +19,17 @@ description:
- This module provides user management for ejabberd servers
options:
username:
type: str
description:
- the name of the user to manage
required: true
host:
type: str
description:
- the ejabberd host associated with this username
required: true
password:
type: str
description:
- the password to assign to the username
required: false
@ -37,6 +40,7 @@ options:
default: false
type: bool
state:
type: str
description:
- describe the desired state of the user to be managed
required: false
@ -168,8 +172,8 @@ class EjabberdUser(object):
def main():
module = AnsibleModule(
argument_spec=dict(
host=dict(default=None, type='str'),
username=dict(default=None, type='str'),
host=dict(required=True, type='str'),
username=dict(required=True, type='str'),
password=dict(default=None, type='str', no_log=True),
state=dict(default='present', choices=['present', 'absent']),
logging=dict(default=False, type='bool')

View file

@ -23,29 +23,37 @@ author:
- "Alejandro Gomez (@agmezr)"
options:
app:
type: str
required: true
aliases: ['name']
description:
- The app module. A name refers to a WSGI callable that should be found in the specified module.
venv:
type: path
aliases: ['virtualenv']
description:
- 'Path to the virtualenv directory.'
config:
type: path
description:
- 'Path to the gunicorn configuration file.'
aliases: ['conf']
chdir:
type: path
description:
- 'Chdir to specified directory before apps loading.'
pid:
type: path
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.'
worker:
type: str
choices: ['sync', 'eventlet', 'gevent', 'tornado ', 'gthread', 'gaiohttp']
description:
- 'The type of workers to use. The default class (sync) should handle most "normal" types of workloads.'
user:
type: str
description:
- 'Switch worker processes to run as this user.'
notes:

View file

@ -16,30 +16,35 @@ description:
- This is used by web servers such as Apache and Nginx for basic authentication.
options:
path:
type: path
required: true
aliases: [ dest, destfile ]
description:
- Path to the file that contains the usernames and passwords
name:
type: str
required: true
aliases: [ username ]
description:
- User name to add or remove
password:
type: str
required: false
description:
- Password associated with user.
- Must be specified if user does not exist yet.
crypt_scheme:
type: str
required: false
choices: ["apr_md5_crypt", "des_crypt", "ldap_sha1", "plaintext"]
default: "apr_md5_crypt"
description:
- Encryption 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
- 'Some of the available choices might be: C(apr_md5_crypt), C(des_crypt), C(ldap_sha1), C(plaintext)'
state:
type: str
required: false
choices: [ present, absent ]
default: "present"
@ -195,11 +200,11 @@ def check_file_attrs(module, changed, message):
def main():
arg_spec = dict(
path=dict(required=True, aliases=["dest", "destfile"]),
name=dict(required=True, aliases=["username"]),
password=dict(required=False, default=None, no_log=True),
crypt_scheme=dict(required=False, default="apr_md5_crypt"),
state=dict(required=False, default="present"),
path=dict(type='path', required=True, aliases=["dest", "destfile"]),
name=dict(type='str', required=True, aliases=["username"]),
password=dict(type='str', required=False, default=None, no_log=True),
crypt_scheme=dict(type='str', required=False, default="apr_md5_crypt"),
state=dict(type='str', required=False, default="present", choices=["present", "absent"]),
create=dict(type='bool', default=True),
)

View file

@ -18,6 +18,7 @@ requirements:
author: "Sergio Millan Rodriguez (@sermilrod)"
options:
config:
type: str
description:
- config in XML format.
- Required if job does not yet exist.
@ -32,29 +33,35 @@ options:
type: bool
required: false
name:
type: str
description:
- Name of the Jenkins job.
required: true
password:
type: str
description:
- Password to authenticate with the Jenkins server.
required: false
state:
type: str
description:
- Attribute that specifies if the job has to be created or deleted.
required: false
default: present
choices: ['present', 'absent']
token:
type: str
description:
- API token used to authenticate alternatively to password.
required: false
url:
type: str
description:
- URL where the Jenkins server is accessible.
required: false
default: http://localhost:8080
user:
type: str
description:
- User to authenticate with the Jenkins server.
required: false
@ -328,14 +335,14 @@ def job_config_to_string(xml_str):
def main():
module = AnsibleModule(
argument_spec=dict(
config=dict(required=False),
name=dict(required=True),
password=dict(required=False, no_log=True),
state=dict(required=False, choices=['present', 'absent'], default="present"),
config=dict(type='str', required=False),
name=dict(type='str', required=True),
password=dict(type='str', required=False, no_log=True),
state=dict(type='str', required=False, choices=['present', 'absent'], default="present"),
enabled=dict(required=False, type='bool'),
token=dict(required=False, no_log=True),
url=dict(required=False, default="http://localhost:8080"),
user=dict(required=False)
token=dict(type='str', required=False, no_log=True),
url=dict(type='str', required=False, default="http://localhost:8080"),
user=dict(type='str', required=False)
),
mutually_exclusive=[
['password', 'token'],

View file

@ -18,27 +18,34 @@ requirements:
- "python-jenkins >= 0.4.12"
options:
name:
type: str
description:
- Exact name of the Jenkins job to fetch information about.
glob:
type: str
description:
- A shell glob of Jenkins job names to fetch information about.
color:
type: str
description:
- Only fetch jobs with the given status color.
password:
type: str
description:
- Password to authenticate with the Jenkins server.
- This is a required parameter, if C(token) is not provided.
token:
type: str
description:
- API token used to authenticate with the Jenkins server.
- This is a required parameter, if C(password) is not provided.
url:
type: str
description:
- URL where the Jenkins server is accessible.
default: http://localhost:8080
user:
type: str
description:
- User to authenticate with the Jenkins server.
validate_certs:
@ -212,13 +219,13 @@ def get_jobs(module):
def main():
module = AnsibleModule(
argument_spec=dict(
name=dict(),
glob=dict(),
color=dict(),
password=dict(no_log=True),
token=dict(no_log=True),
url=dict(default="http://localhost:8080"),
user=dict(),
name=dict(type='str'),
glob=dict(type='str'),
color=dict(type='str'),
password=dict(type='str', no_log=True),
token=dict(type='str', no_log=True),
url=dict(type='str', default="http://localhost:8080"),
user=dict(type='str'),
validate_certs=dict(type='bool', default=True),
),
mutually_exclusive=[

View file

@ -18,26 +18,32 @@ description:
options:
group:
type: str
description:
- Name of the Jenkins group on the OS.
default: jenkins
jenkins_home:
type: path
description:
- Home directory of the Jenkins user.
default: /var/lib/jenkins
mode:
type: raw
description:
- File mode applied on versioned plugins.
default: '0644'
name:
type: str
description:
- Plugin name.
required: yes
owner:
type: str
description:
- Name of the Jenkins user on the OS.
default: jenkins
state:
type: str
description:
- Desired plugin state.
- If the C(latest) is set, the check for new version will be performed
@ -45,10 +51,12 @@ options:
choices: [absent, present, pinned, unpinned, enabled, disabled, latest]
default: present
timeout:
type: int
description:
- Server connection timeout in secs.
default: 30
updates_expiration:
type: int
description:
- Number 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
@ -58,16 +66,19 @@ options:
C(latest) is specified.
default: 86400
updates_url:
type: str
description:
- URL of the Update Centre.
- Used as the base URL to download the plugins and the
I(update-center.json) JSON file.
default: https://updates.jenkins.io
url:
type: str
description:
- URL of the Jenkins server.
default: http://localhost:8080
version:
type: str
description:
- Plugin version number.
- If this option is specified, all plugin dependencies must be installed
@ -95,10 +106,9 @@ notes:
- It is not possible to run the module remotely by changing the I(url)
parameter to point to the Jenkins server. The module must be used on the
host where Jenkins runs as it needs direct access to the plugin files.
- "The C(params) option was removed in Ansible 2.5 due to circumventing Ansible's
option handling"
extends_documentation_fragment:
- url
- files
'''
EXAMPLES = '''
@ -692,12 +702,11 @@ def main():
# Module arguments
argument_spec = url_argument_spec()
argument_spec.update(
group=dict(default='jenkins'),
jenkins_home=dict(default='/var/lib/jenkins'),
group=dict(type='str', default='jenkins'),
jenkins_home=dict(type='path', default='/var/lib/jenkins'),
mode=dict(default='0644', type='raw'),
name=dict(required=True),
owner=dict(default='jenkins'),
params=dict(type='dict'),
name=dict(type='str', required=True),
owner=dict(type='str', default='jenkins'),
state=dict(
choices=[
'present',
@ -723,11 +732,6 @@ def main():
supports_check_mode=True,
)
# Params was removed
# https://meetbot.fedoraproject.org/ansible-meeting/2017-09-28/ansible_dev_meeting.2017-09-28-15.00.log.html
if module.params['params']:
module.fail_json(msg="The params option to jenkins_plugin was removed in Ansible 2.5 since it circumvents Ansible's option handling")
# Force basic authentication
module.params['force_basic_auth'] = True

View file

@ -20,11 +20,13 @@ description:
options:
script:
type: str
description:
- The groovy script to be executed.
This gets passed as a string Template if args is defined.
required: true
url:
type: str
description:
- The jenkins server to execute the script against. The default is a local
jenkins instance that is not being proxied through a webserver.
@ -37,16 +39,20 @@ options:
type: bool
default: 'yes'
user:
type: str
description:
- The username to connect to the jenkins server with.
password:
type: str
description:
- The password to connect to the jenkins server with.
timeout:
type: int
description:
- The request timeout in seconds
default: 10
args:
type: dict
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).

View file

@ -20,11 +20,13 @@ description:
options:
uri:
type: str
required: true
description:
- Base URI for the JIRA instance.
operation:
type: str
required: true
aliases: [ command ]
choices: [ comment, create, edit, fetch, link, search, transition, update ]
@ -32,71 +34,86 @@ options:
- The operation to perform.
username:
type: str
required: true
description:
- The username to log-in with.
password:
type: str
required: true
description:
- The password to log-in with.
project:
type: str
required: false
description:
- The project for this operation. Required for issue creation.
summary:
type: str
required: false
description:
- The issue summary, where appropriate.
description:
type: str
required: false
description:
- The issue description, where appropriate.
issuetype:
type: str
required: false
description:
- The issue type, for issue creation.
issue:
type: str
required: false
description:
- An existing issue key to operate on.
aliases: ['ticket']
comment:
type: str
required: false
description:
- The comment text to add.
status:
type: str
required: false
description:
- The desired status; only relevant for the transition operation.
assignee:
type: str
required: false
description:
- Sets the assignee on create or transition operations. Note not all transitions will allow this.
linktype:
type: str
required: false
description:
- Set type of link, when action 'link' selected.
inwardissue:
type: str
required: false
description:
- Set issue from which link will be created.
outwardissue:
type: str
required: false
description:
- Set issue to which link will be created.
fields:
type: dict
required: false
description:
- This is a free-form data structure that can contain arbitrary data. This is passed directly to the JIRA REST API
@ -119,6 +136,7 @@ options:
version_added: '0.2.0'
timeout:
type: float
required: false
description:
- Set timeout, in seconds, on requests to JIRA API.
@ -472,24 +490,24 @@ def main():
global module
module = AnsibleModule(
argument_spec=dict(
uri=dict(required=True),
operation=dict(choices=['create', 'comment', 'edit', 'update', 'fetch', 'transition', 'link', 'search'],
uri=dict(type='str', required=True),
operation=dict(type='str', choices=['create', 'comment', 'edit', 'update', 'fetch', 'transition', 'link', 'search'],
aliases=['command'], required=True),
username=dict(required=True),
password=dict(required=True, no_log=True),
project=dict(),
summary=dict(),
description=dict(),
issuetype=dict(),
issue=dict(aliases=['ticket']),
comment=dict(),
status=dict(),
assignee=dict(),
username=dict(type='str', required=True),
password=dict(type='str', required=True, no_log=True),
project=dict(type='str', ),
summary=dict(type='str', ),
description=dict(type='str', ),
issuetype=dict(type='str', ),
issue=dict(type='str', aliases=['ticket']),
comment=dict(type='str', ),
status=dict(type='str', ),
assignee=dict(type='str', ),
fields=dict(default={}, type='dict'),
linktype=dict(),
inwardissue=dict(),
outwardissue=dict(),
jql=dict(),
linktype=dict(type='str', ),
inwardissue=dict(type='str', ),
outwardissue=dict(type='str', ),
jql=dict(type='str', ),
maxresults=dict(type='int'),
timeout=dict(type='float', default=10),
validate_certs=dict(default=True, type='bool'),

View file

@ -21,10 +21,12 @@ description:
author: "René Moser (@resmo)"
options:
url:
type: str
description:
- URL of the nginx status.
required: true
timeout:
type: int
description:
- HTTP connection timeout in seconds.
required: false

View file

@ -20,32 +20,39 @@ description:
author: "Loic Blot (@nerzhul)"
options:
state:
type: str
description:
- Create or remove Rundeck project.
choices: ['present', 'absent']
default: 'present'
name:
type: str
description:
- Sets the project name.
required: True
url:
type: str
description:
- Sets the rundeck instance URL.
required: True
api_version:
type: int
description:
- Sets the API version used by module.
- API version must be at least 14.
default: 14
token:
type: str
description:
- Sets the token to authenticate against Rundeck API.
required: True
project:
type: str
description:
- Sets the project which receive the ACL policy.
- If unset, it's a system ACL policy.
policy:
type: str
description:
- Sets the ACL policy content.
- ACL policy content is a YAML object as described in http://rundeck.org/docs/man5/aclpolicy.html.

View file

@ -22,24 +22,29 @@ description:
author: "Loic Blot (@nerzhul)"
options:
state:
type: str
description:
- Create or remove Rundeck project.
choices: ['present', 'absent']
default: 'present'
name:
type: str
description:
- Sets the project name.
required: True
url:
type: str
description:
- Sets the rundeck instance URL.
required: True
api_version:
type: int
description:
- Sets the API version used by module.
- API version must be at least 14.
default: 14
token:
type: str
description:
- Sets the token to authenticate against Rundeck API.
required: True

View file

@ -16,32 +16,40 @@ description:
- Manage the state of a program or group of programs running via supervisord
options:
name:
type: str
description:
- The name of the supervisord program or group to manage.
- The name will be taken as group name when it ends with a colon I(:)
- Group support is only available in Ansible version 1.6 or later.
required: true
config:
type: path
description:
- The supervisor configuration file path
server_url:
type: str
description:
- URL on which supervisord server is listening
username:
type: str
description:
- username to use for authentication
password:
type: str
description:
- password to use for authentication
state:
type: str
description:
- The desired state of program/group.
required: true
choices: [ "present", "started", "stopped", "restarted", "absent", "signalled" ]
signal:
type: str
description:
- The signal to send to the program/group, when combined with the 'signalled' state. Required when l(state=signalled).
supervisorctl_path:
type: path
description:
- path to supervisorctl executable
notes:
@ -92,14 +100,14 @@ from ansible.module_utils.basic import AnsibleModule, is_executable
def main():
arg_spec = dict(
name=dict(required=True),
name=dict(type='str', required=True),
config=dict(required=False, type='path'),
server_url=dict(required=False),
username=dict(required=False),
password=dict(required=False, no_log=True),
server_url=dict(type='str', required=False),
username=dict(type='str', required=False),
password=dict(type='str', required=False, no_log=True),
supervisorctl_path=dict(required=False, type='path'),
state=dict(required=True, choices=['present', 'started', 'restarted', 'stopped', 'absent', 'signalled']),
signal=dict(required=False)
state=dict(type='str', required=True, choices=['present', 'started', 'restarted', 'stopped', 'absent', 'signalled']),
signal=dict(type='str', required=False)
)
module = AnsibleModule(argument_spec=arg_spec, supports_check_mode=True)

View file

@ -18,49 +18,62 @@ description:
- This module implements the creation or deletion of issues (not the update).
options:
taiga_host:
type: str
description:
- The hostname of the Taiga instance.
default: https://api.taiga.io
project:
type: str
description:
- Name of the project containing the issue. Must exist previously.
required: True
subject:
type: str
description:
- The issue subject.
required: True
issue_type:
type: str
description:
- The issue type. Must exist previously.
required: True
priority:
type: str
description:
- The issue priority. Must exist previously.
default: Normal
status:
type: str
description:
- The issue status. Must exist previously.
default: New
severity:
type: str
description:
- The issue severity. Must exist previously.
default: Normal
description:
type: str
description:
- The issue description.
default: ""
attachment:
type: path
description:
- Path to a file to be attached to the issue.
attachment_description:
type: str
description:
- A string describing the file to be attached to the issue.
default: ""
tags:
type: list
elements: str
description:
- A lists of tags to be assigned to the issue.
default: []
state:
type: str
description:
- Whether the issue should be present or not.
choices: ["present", "absent"]
@ -233,18 +246,18 @@ def manage_issue(module, taiga_host, project_name, issue_subject, issue_priority
def main():
module = AnsibleModule(
argument_spec=dict(
taiga_host=dict(required=False, default="https://api.taiga.io"),
project=dict(required=True),
subject=dict(required=True),
issue_type=dict(required=True),
priority=dict(required=False, default="Normal"),
status=dict(required=False, default="New"),
severity=dict(required=False, default="Normal"),
description=dict(required=False, default=""),
attachment=dict(required=False, default=None),
attachment_description=dict(required=False, default=""),
tags=dict(required=False, default=[], type='list'),
state=dict(required=False, choices=['present', 'absent'],
taiga_host=dict(type='str', required=False, default="https://api.taiga.io"),
project=dict(type='str', required=True),
subject=dict(type='str', required=True),
issue_type=dict(type='str', required=True),
priority=dict(type='str', required=False, default="Normal"),
status=dict(type='str', required=False, default="New"),
severity=dict(type='str', required=False, default="Normal"),
description=dict(type='str', required=False, default=""),
attachment=dict(type='path', required=False, default=None),
attachment_description=dict(type='str', required=False, default=""),
tags=dict(required=False, default=[], type='list', elements='str'),
state=dict(type='str', required=False, choices=['present', 'absent'],
default='present'),
),
supports_check_mode=True

View file

@ -1224,36 +1224,8 @@ plugins/modules/system/timezone.py pylint:blacklisted-name
plugins/modules/system/vdo.py validate-modules:doc-required-mismatch
plugins/modules/system/xfconf.py validate-modules:parameter-state-invalid-choice
plugins/modules/system/xfconf.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:no-default-for-required-parameter
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_module.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/apache2_module.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:doc-required-mismatch
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job_info.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py use-argspec-type-path
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/jenkins_script.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jira.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_acl_policy.py pylint:blacklisted-name
plugins/modules/web_infrastructure/rundeck_acl_policy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_project.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_aaa_group.py validate-modules:doc-elements-mismatch
plugins/modules/web_infrastructure/sophos_utm/utm_aaa_group_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_ca_host_key_cert.py validate-modules:parameter-type-not-in-doc
@ -1271,11 +1243,6 @@ plugins/modules/web_infrastructure/sophos_utm/utm_proxy_frontend_info.py validat
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location.py validate-modules:doc-elements-mismatch
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:parameter-list-no-elements
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:parameter-type-not-in-doc
scripts/inventory/gce.py pylint:blacklisted-name
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py future-import-boilerplate
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py metaclass-boilerplate

View file

@ -1224,36 +1224,8 @@ plugins/modules/system/timezone.py pylint:blacklisted-name
plugins/modules/system/vdo.py validate-modules:doc-required-mismatch
plugins/modules/system/xfconf.py validate-modules:parameter-state-invalid-choice
plugins/modules/system/xfconf.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:no-default-for-required-parameter
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_module.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/apache2_module.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:doc-required-mismatch
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job_info.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py use-argspec-type-path
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/jenkins_script.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jira.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_acl_policy.py pylint:blacklisted-name
plugins/modules/web_infrastructure/rundeck_acl_policy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_project.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_aaa_group.py validate-modules:doc-elements-mismatch
plugins/modules/web_infrastructure/sophos_utm/utm_aaa_group_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_ca_host_key_cert.py validate-modules:parameter-type-not-in-doc
@ -1271,11 +1243,6 @@ plugins/modules/web_infrastructure/sophos_utm/utm_proxy_frontend_info.py validat
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location.py validate-modules:doc-elements-mismatch
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:parameter-list-no-elements
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:parameter-type-not-in-doc
scripts/inventory/gce.py pylint:blacklisted-name
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py future-import-boilerplate
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py metaclass-boilerplate

View file

@ -956,36 +956,10 @@ plugins/modules/system/selogin.py validate-modules:parameter-type-not-in-doc
plugins/modules/system/syspatch.py validate-modules:parameter-type-not-in-doc
plugins/modules/system/timezone.py pylint:blacklisted-name
plugins/modules/system/xfconf.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:no-default-for-required-parameter
plugins/modules/web_infrastructure/apache2_mod_proxy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/apache2_module.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/apache2_module.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/deploy_helper.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/ejabberd_user.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/gunicorn.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-choices-do-not-match-spec
plugins/modules/web_infrastructure/htpasswd.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_job_info.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py use-argspec-type-path
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jenkins_plugin.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/jenkins_script.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/jira.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/jira.py validate-modules:undocumented-parameter
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:deprecation-mismatch
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:invalid-documentation
plugins/modules/web_infrastructure/nginx_status_facts.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_acl_policy.py pylint:blacklisted-name
plugins/modules/web_infrastructure/rundeck_acl_policy.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/rundeck_project.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_aaa_group_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_ca_host_key_cert.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_ca_host_key_cert_info.py validate-modules:parameter-type-not-in-doc
@ -997,10 +971,6 @@ plugins/modules/web_infrastructure/sophos_utm/utm_proxy_frontend.py validate-mod
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_frontend_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/sophos_utm/utm_proxy_location_info.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/supervisorctl.py validate-modules:parameter-type-not-in-doc
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:doc-missing-type
plugins/modules/web_infrastructure/taiga_issue.py validate-modules:parameter-type-not-in-doc
scripts/inventory/gce.py pylint:blacklisted-name
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py future-import-boilerplate
tests/unit/plugins/modules/cloud/google/test_gcp_forwarding_rule.py metaclass-boilerplate