ansible.builtin.random_choice lookup – return random element from list

Note

This lookup plugin is part of ansible-core and included in all Ansible installations. In most cases, you can use the short plugin name random_choice. However, we recommend you use the Fully Qualified Collection Name (FQCN) ansible.builtin.random_choice for easy linking to the plugin documentation and to avoid conflicting with other collections that may have the same lookup plugin name.

Synopsis

  • The ‘random_choice’ feature can be used to pick something at random. While it’s not a load balancer (there are modules for those), it can somewhat be used as a poor man’s load balancer in a MacGyver like situation.

  • At a more basic level, they can be used to add chaos and excitement to otherwise predictable automation environments.

Examples

- name: Magic 8 ball for MUDs
  ansible.builtin.debug:
    msg: "{{ item }}"
  with_random_choice:
     - "go through the door"
     - "drink from the goblet"
     - "press the red button"
     - "do nothing"

Return Value

Key

Description

Return value

any

random item

Returned: success

Authors

  • Michael DeHaan

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.