133 lines
3.2 KiB
YAML
133 lines
3.2 KiB
YAML
---
|
|
# tasks file restconfig
|
|
- name: Create directory for network files
|
|
file:
|
|
path: /opt/oracle/network
|
|
state: directory
|
|
owner: oracle
|
|
group: dba
|
|
mode: '0755'
|
|
|
|
############################
|
|
# copy Basis tnsnames.ora und sqlnet.ora
|
|
###########################
|
|
- name: copy tnsnames.ora
|
|
copy:
|
|
src: roles/restconfig/templates/tnsnames.ora
|
|
dest: "/opt/oracle/network"
|
|
owner: oracle
|
|
group: dba
|
|
|
|
- name: copy sqlnet.ora
|
|
copy:
|
|
src: roles/restconfig/templates/sqlnet.ora
|
|
dest: "/opt/oracle/network"
|
|
owner: oracle
|
|
group: dba
|
|
|
|
###################################
|
|
# Vorhandene ORACLE_HOMEs einlesen
|
|
###################################
|
|
|
|
- name: Find oracle_homes
|
|
find:
|
|
paths: /opt/oracle/db
|
|
file_type: directory
|
|
recurse: no
|
|
register: files_matched
|
|
|
|
|
|
############################
|
|
# Verlinkung der tnsnnames etc. nach /opt/oracle/network
|
|
###########################
|
|
- name: linking tnsnames.ora
|
|
file:
|
|
src: /opt/oracle/network/tnsnames.ora
|
|
dest: "{{ item.path }}/network/admin/tnsnames.ora"
|
|
force: yes
|
|
owner: oracle
|
|
group: dba
|
|
follow: no
|
|
state: link
|
|
loop: "{{ files_matched.files|flatten(levels=1) }}"
|
|
loop_control:
|
|
label: "{{ item.path }}"
|
|
|
|
- name: linking sqlnet.ora
|
|
file:
|
|
src: /opt/oracle/network/sqlnet.ora
|
|
dest: "{{ item.path }}/network/admin/sqlnet.ora"
|
|
force: yes
|
|
owner: oracle
|
|
group: dba
|
|
follow: no
|
|
state: link
|
|
loop: "{{ files_matched.files|flatten(levels=1) }}"
|
|
loop_control:
|
|
label: "{{ item.path }}"
|
|
|
|
- name: linking listener.ora
|
|
file:
|
|
src: /opt/oracle/network/listener.ora
|
|
dest: "{{ item.path }}/network/admin/listener.ora"
|
|
force: yes
|
|
owner: oracle
|
|
group: dba
|
|
follow: no
|
|
state: link
|
|
loop: "{{ files_matched.files|flatten(levels=1) }}"
|
|
loop_control:
|
|
label: "{{ item.path }}"
|
|
|
|
############################
|
|
# softlinks für Networker anlegen
|
|
###########################
|
|
|
|
- name: Softlink libobk.so im lib der ORACLE_HOMEs anlegen
|
|
file:
|
|
src: /usr/lib/libnsrora.so
|
|
dest: "{{ item.path }}/lib/libobk.so"
|
|
force: yes
|
|
owner: oracle
|
|
group: dba
|
|
follow: no
|
|
state: link
|
|
loop: "{{ files_matched.files|flatten(levels=1) }}"
|
|
loop_control:
|
|
label: "{{ item.path }}"
|
|
|
|
##############################
|
|
# linking emagent with latest oracle_home
|
|
##############################
|
|
|
|
- name: Find out latest oracle_home
|
|
find:
|
|
paths: /opt/oracle/db
|
|
file_type: directory
|
|
recurse: no
|
|
register: files
|
|
|
|
# hoechste ORACLE_HOME Version - soweit dies ueber alphabetische Sortierung moeglich ist
|
|
- debug: msg="{{ files.files | sort(attribute='path', reverse=True) | map(attribute='path') | list }}"
|
|
register: sortiert
|
|
# sortiert.msg[0] enthaelt die hoechste OH Version "/opt/oracle/db/19.13"
|
|
|
|
- name: Check if directory exists
|
|
stat:
|
|
path: "{{ emagent_inst_dir }}"
|
|
register: directory_data
|
|
|
|
- name: Softlink emagent
|
|
file:
|
|
src: "{{ sortiert.msg[0] }}/perl"
|
|
dest: "{{ emagent_inst_dir }}/perl"
|
|
force: yes
|
|
owner: oracle
|
|
group: dba
|
|
follow: no
|
|
state: link
|
|
when: directory_data.stat.exists
|
|
|
|
- debug: msg="Verzeichnis {{ emagent_inst_dir }} auf Server nicht gefunden"
|
|
when: not directory_data.stat.exists
|