Ansible role: Rougail β–Œ πŸ›ˆ Informations β–Œ  β–Œ  basic  Role variables ┏━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━┓ ┃ ┃ ┃ Default  ┃ ┃ Access  ┃ ┃ ┃ Variable  ┃ Descripti… ┃ value  ┃ Type  ┃ control  ┃ Validator  ┃ ┑━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━┩ β”‚ var1 β”‚ A suffix β”‚ β€’ val1 β”‚  string    β”‚  standard  β”‚  unique  β”‚ β”‚ β”‚ variable. β”‚ β€’ val2 β”‚ multiple  β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ mandatory  β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ dynval1 or dynval2 β–Œ πŸ›ˆ Informations β–Œ  β–Œ This family builds families dynamically. β–Œ Path: β–Œ  β€’ dynval1 β–Œ  β€’ dynval2 β–Œ  basic  β–Œ Identifiers: the value of the variable "rougail.var1" ┏━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┓ ┃ Variable  ┃ Description  ┃ Type  ┃ Access control  ┃ ┑━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━┩ β”‚ dynval1.var β”‚ A dynamic β”‚  string    β”‚  basic  β”‚ β”‚ dynval2.var β”‚ variable. β”‚ mandatory  β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓ ┃ ┃ ┃ ┃ ┃ Access  ┃ ┃ Variable  ┃ Description  ┃ Default value ┃ Type  ┃ control  ┃ ┑━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩ β”‚ var2 β”‚ A variable β”‚ the value of β”‚  string    β”‚  standard  β”‚ β”‚ β”‚ calculated. β”‚ the variable β”‚ mandatory  β”‚ β”‚ β”‚ β”‚ β”‚ "rougail.dyn… β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ Example playbook with Rougail β–Œ πŸ›ˆ Informations β–Œ  β–Œ Do not forget to add Rougail structural file as Rougail types. Add to your structural file something like: ---  path:   to:   my_rougail:   type: rougail   dynval1:   var: string1 # A dynamic variable   dynval2:   var: string1 # A dynamic variable  Add to your playbook: ---  - name: Rougail   hosts: server   roles:   - role: .rougail   vars: path.to.rougail  Example playbook ---  - name: Rougail   hosts: server   roles:   - role: .rougail   vars:   rougail: # Rougail   dynval1: # dyn{{ identifier }}   var: string1 # A dynamic variable   dynval2: # dyn{{ identifier }}   var: string1 # A dynamic variable