Я сейчас запрашиваю несколько баз данных и собираю результаты запроса
То, как я это делаю, я пишу задачу, которая копирует скрипт оболочки, что-то вроде ниже
#!/bin/bash
source $HOME/bin/gsd_xenv $1 &> /dev/null
sqlplus -s <<EOF
/ as sysdba
set heading off
select d.name||','||i.instance_name||','||i.host_name||';' from v\$database d,v\$instance i;
EOF
В книге игр я пишу задание, как показано ниже:
- name: List Query [Host and DB]
shell: "/tmp/sqlscript/sql_select.sh {{item}} >> /tmp/sqlscript/output.out"
become: yes
become_method: sudo
become_user: oracle
environment:
PATH: "/home/oracle/bin:/usr/orasys/12.1.0.2r10/bin:/usr/bin:/bin:/usr/ucb:/sbin:/usr/sbin:/etc:/usr/local/bin:/oradata/epdmat/goldengate/config/sys"
ORACLE_HOME: "/usr/orasys/12.1.0.2r10"
with_items: "{{ factor_dbs.split('\n') }}"
Однако я заметил, что разные хосты имеют разные ORACLE_HOME и PATHS. Как я могу определить эти переменные в книге игр, чтобы задача выбрала правильные переменные ORACLE_HOME и PATH и успешно выполнила задачу