Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Legen Sie mithilfe von Ansible verschiedene ORACLE_HOME- und PATH-Umgebungsvariablen fest

Sie können hostspezifische Variablen für jeden der Hosts definieren. Sie können Ihre Inventardatei wie folgt schreiben:

[is_hosts]
greenhat ORACLE_HOME=/tmp
localhost ORACLE_HOME=/sbin

ähnlich für die PATH-Variable

dann deine Aufgabe:

Beispielplaybook, das die Ergebnisse demonstriert:

- hosts: is_hosts
  gather_facts: false
  vars:

  tasks:
    - name: task 1
      shell: "env | grep -e PATH -e ORACLE_HOME"
      environment:
        # PATH: "{{ hostvars[inventory_hostname]['PATH']}}"
        ORACLE_HOME: "{{ hostvars[inventory_hostname]['ORACLE_HOME'] }}"
      register: shell_output

    - name: print results
      debug:
        var: shell_output.stdout_lines

Beispielausgabe, Sie können sehen, dass die Variable ORACLE_HOME tatsächlich geändert wurde und wie pro Host definiert:

TASK [print results] ************************************************************************************************************************************************************************************************
ok: [greenhat] => {
    "shell_output.stdout_lines": [
        "ORACLE_HOME=/tmp", 
        "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
    ]
}
ok: [localhost] => {
    "shell_output.stdout_lines": [
        "ORACLE_HOME=/sbin", 
        "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
    ]
}