community.general.random_string lookup – Generates random string
Note
This lookup plugin is part of the community.general collection (version 5.8.3).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.random_string
.
New in community.general 3.2.0
Synopsis
Generates random string based upon the given constraints.
Keyword parameters
This describes keyword parameters of the lookup. These are the values key1=value1
, key2=value2
and so on in the following
examples: lookup('community.general.random_string', key1=value1, key2=value2, ...)
and query('community.general.random_string', key1=value1, key2=value2, ...)
Parameter |
Comments |
---|---|
Returns base64 encoded string. Choices:
|
|
The length of the string. Default: |
|
Include lowercase letters in the string. Choices:
|
|
Minimum number of lowercase alphabets in the string. If set, overrides lower=false. Default: |
|
Minimum number of numeric characters in the string. If set, overrides numbers=false. Default: |
|
Minimum number of special character in the string. Default: |
|
Minimum number of uppercase alphabets in the string. If set, overrides upper=false. Default: |
|
Include numbers in the string. Choices:
|
|
Override all values of numbers, upper, lower, and special with the given list of characters. |
|
Overide a list of special characters to use in the string. If set min_special should be set to a non-default value. |
|
Include special characters in the string. Special characters are taken from Python standard library The choice of special characters can be changed to setting override_special. Choices:
|
|
Include uppercase letters in the string. Choices:
|
Examples
- name: Generate random string
ansible.builtin.debug:
var: lookup('community.general.random_string')
# Example result: ['DeadBeeF']
- name: Generate random string with length 12
ansible.builtin.debug:
var: lookup('community.general.random_string', length=12)
# Example result: ['Uan0hUiX5kVG']
- name: Generate base64 encoded random string
ansible.builtin.debug:
var: lookup('community.general.random_string', base64=True)
# Example result: ['NHZ6eWN5Qk0=']
- name: Generate a random string with 1 lower, 1 upper, 1 number and 1 special char (atleast)
ansible.builtin.debug:
var: lookup('community.general.random_string', min_lower=1, min_upper=1, min_special=1, min_numeric=1)
# Example result: ['&Qw2|E[-']
- name: Generate a random string with all lower case characters
debug:
var: query('community.general.random_string', upper=false, numbers=false, special=false)
# Example result: ['exolxzyz']
- name: Generate random hexadecimal string
debug:
var: query('community.general.random_string', upper=false, lower=false, override_special=hex_chars, numbers=false)
vars:
hex_chars: '0123456789ABCDEF'
# Example result: ['D2A40737']
- name: Generate random hexadecimal string with override_all
debug:
var: query('community.general.random_string', override_all=hex_chars)
vars:
hex_chars: '0123456789ABCDEF'
# Example result: ['D2A40737']
Return Value
Key |
Description |
---|---|
A one-element list containing a random string Returned: success |
Collection links
Issue Tracker Repository (Sources) Submit a bug report Request a feature Communication