diff options
Diffstat (limited to 'lib/ansible/plugins/test/uri.yml')
-rw-r--r-- | lib/ansible/plugins/test/uri.yml | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/ansible/plugins/test/uri.yml b/lib/ansible/plugins/test/uri.yml new file mode 100644 index 0000000..bb3b8bd --- /dev/null +++ b/lib/ansible/plugins/test/uri.yml @@ -0,0 +1,30 @@ +DOCUMENTATION: + name: uri + author: Ansible Core + version_added: "2.14" + short_description: is the string a valid URI + description: + - Validates that the input string conforms to the URI standard, optionally that is also in the list of schemas provided. + options: + _input: + description: Possible URI. + type: string + required: True + schemes: + description: Subset of URI schemas to validate against, otherwise B(any) scheme is considered valid. + type: list + elements: string + required: False +EXAMPLES: | + # URLs are URIs + {{ 'http://example.com' is uri }} + # but not all URIs are URLs + {{ 'mailto://nowone@example.com' is uri }} + # looking only for file transfers URIs + {{ 'mailto://nowone@example.com' is not uri(schemes=['ftp', 'ftps', 'sftp', 'file']) }} + # make sure URL conforms to the 'special schemas' + {{ 'http://nobody:secret@example.com' is uri(['ftp', 'ftps', 'http', 'https', 'ws', 'wss']) }} +RETURN: + _value: + description: Returns C(false) if the string is not a URI or the schema extracted does not match the supplied list. + type: boolean |