I'm using ansible tower.
And I made workflow to install Oracle on the virtual server.
The way to install oracle is ...
1. copy Oracle installer.exe file to the virtual server.
2. make response file(install.rsp.j2 jinjer2 template) on the virtual server.
install.rsp includes below
OracleHomeUserPassword={{ oracle_home_user_password }}
and oracle_home_user_password is passed from inventory
3. make install command bat file(run.bat.j2 jinjer2 template) on the virtual server.
run.bat is below
setup.exe -silent -noconfig -waitforcompletion -nowait -responseFile C:\Work\db_install.rsp
4. run.bat on the virtual server.
It always worked, but one day it failed.
It was because password included specific characters like "$", "#","%" ....
I thought that variable oracle_home_user_password in inventory or jinjer2 must be escaped but I don't know.
I tried these...
1) In install.rsp.j2 ,
OracleHomeUserPassword={{ oracle_home_user_password | escape }}
2) in install.rsp.j2,
OracleHomeUserPassword={{ oracle_home_user_password| regex_escape }}
3) In install.rsp.j2 ,
OracleHomeUserPassword={{ oracle_home_user_password | escape() }}
4) in install.rsp.j2,
OracleHomeUserPassword={{ oracle_home_user_password| regex_escape() }}
They were all failed.......(T_T
Anyone know how to escape specific character in jinjer2 or any other better way?