mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-27 07:01:22 -07:00
parent
ed00741a01
commit
96ddd29c7e
2 changed files with 11 additions and 3 deletions
|
@ -168,6 +168,11 @@ Get a random number from 1 to 100 but in steps of 10::
|
||||||
{{ 100 |random(1, 10) }} => 31
|
{{ 100 |random(1, 10) }} => 31
|
||||||
{{ 100 |random(start=1, step=10) }} => 51
|
{{ 100 |random(start=1, step=10) }} => 51
|
||||||
|
|
||||||
|
It's also possible to initialize random number generator from seed. This way, you can create random-but-idempotent
|
||||||
|
numbers (new in version 2.3)::
|
||||||
|
|
||||||
|
{{ 59 |random(seed=inventory_hostname) }} * * * * root /script/from/cron
|
||||||
|
|
||||||
|
|
||||||
Shuffle Filter
|
Shuffle Filter
|
||||||
--------------
|
--------------
|
||||||
|
|
|
@ -31,7 +31,7 @@ import crypt
|
||||||
import hashlib
|
import hashlib
|
||||||
import string
|
import string
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from random import SystemRandom, shuffle
|
from random import Random, SystemRandom, shuffle
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
|
@ -199,8 +199,11 @@ def from_yaml(data):
|
||||||
return data
|
return data
|
||||||
|
|
||||||
@environmentfilter
|
@environmentfilter
|
||||||
def rand(environment, end, start=None, step=None):
|
def rand(environment, end, start=None, step=None, seed=None):
|
||||||
|
if seed is None:
|
||||||
r = SystemRandom()
|
r = SystemRandom()
|
||||||
|
else:
|
||||||
|
r = Random(seed)
|
||||||
if isinstance(end, (int, long)):
|
if isinstance(end, (int, long)):
|
||||||
if not start:
|
if not start:
|
||||||
start = 0
|
start = 0
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue