2017-10-20 13 views
-1

Essayer de mettre en œuvre certains comme ce descripteur de serveur à l'intérieur host_vars/MT_ora/server_vars.ymlRéutiliser variables ansible provoque une erreur

ora: 
    home: /u01/app/oracle/product/11.2.0/112048 
    sid: blank 
    enviroment: 
    ORACLE_HOME: "{{ora.home}}" 
    ORACLE_SID: "{{ora.sid}}" 

Mais a erreur:

recursuve loop detected in template

Y at-il des gentillesses à réutiliser variable?

Répondre

0

Vous ne pouvez pas effectuer de récursions dans les expressions Jinja2.
informations Split, vous souhaitez réutiliser entre variables distinctes:

ora: 
    home: /u01/app/oracle/product/11.2.0/112048 
    sid: blank 
enviroment: 
    ORACLE_HOME: "{{ora.home}}" 
    ORACLE_SID: "{{ora.sid}}" 

Ici vous avez ora et enviroment dicts. Et pour définir certaines valeurs à l'intérieur environment vous référez ora.

Mais dans votre exemple original, vous essayez de définir des valeurs à l'intérieur de ora en utilisant ora lui-même.