Skip to content

Commit de4956d

Browse files
committed
oraswdb_manage_patches: bugfix for wrong stage directory when oracle_sw_copy=true
1 parent 7619f76 commit de4956d

File tree

4 files changed

+34
-20
lines changed

4 files changed

+34
-20
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
bugfixes:
3+
- "oraswdb_manage_patches: bugfix for wrong stage directory when oracle_sw_copy=true ()"

extensions/molecule/dbfs/side_effect.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
ansible.builtin.import_playbook: opitzconsulting.ansible_oracle.opatch
55
vars:
66
is_sw_source_local: true
7+
oracle_sw_copy: true
8+
oracle_sw_unpack: true
79
db_homes_installed:
810
- home: db19-si-ee
911
state: present

roles/oraswdb_manage_patches/tasks/loop_opatch_apply.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# See main.yml for loop decriptions
44
#
55

6-
- name: State data for loop_opatch_apply.yml
6+
- name: loop_opatch_apply | State data for loop_opatch_apply.yml
77
ansible.builtin.debug:
88
msg:
99
- >-
@@ -17,7 +17,7 @@
1717
creates: {{ __sw_patches_filename_creates }}
1818
patch_unarchive_dir: {{ __patch_unarchive_dir }}
1919
20-
- name: Become User to oracle
20+
- name: loop_opatch_apply | Become User to oracle
2121
become: true
2222
become_user: "{{ oracle_user }}"
2323
block:
@@ -27,14 +27,14 @@
2727
- dhc_opatch.state == 'present'
2828
block:
2929

30-
- name: db_opatch | Check for unarchived patch archive
30+
- name: loop_opatch_apply | Check for unarchived patch archive
3131
ansible.builtin.stat:
3232
path: "{{ __patch_unarchive_dir }}/{{ __sw_patches_filename_creates }}"
3333
register: checkpatcharchiveres
3434
vars:
3535
__sw_patches_filename_creates: "{{ osp_loop.creates | default((dhc_opatch.patchid | string) + '/README.txt') }}"
3636

37-
- name: db_opatch | Copy oracle DB patch (opatch) to server (local)
37+
- name: loop_opatch_apply | Copy oracle DB patch (opatch) to server (local)
3838
ansible.builtin.copy:
3939
src: "{{ oracle_sw_source_local }}/{{ osp_loop.filename }}"
4040
dest: "{{ oracle_stage }}/{{ osp_loop.filename }}"
@@ -44,7 +44,7 @@
4444
- is_sw_source_local | bool
4545
- not checkpatcharchiveres.stat.exists
4646

47-
- name: db_opatch | Copy oracle DB patch (opatch) to server (www)
47+
- name: loop_opatch_apply | Copy oracle DB patch (opatch) to server (www)
4848
ansible.builtin.get_url:
4949
url: "{{ oracle_sw_source_www }}/{{ osp_loop.filename }}"
5050
dest: "{{ oracle_stage }}/{{ osp_loop.filename }}"
@@ -54,28 +54,28 @@
5454
- not is_sw_source_local | bool
5555
- not checkpatcharchiveres.stat.exists | bool
5656

57-
- name: db_opatch | Extract one-off patch files to patch base
57+
- name: loop_opatch_apply | Extract one-off patch files to patch base
5858
when:
5959
- oracle_sw_copy | bool
6060
- oracle_sw_unpack | bool
6161
- dhc_opatch.state == 'present'
6262
tags:
6363
- oraswdbpsuunpack1
6464
block:
65-
- name: db_opatch | Create destination folder for unarchive
65+
- name: loop_opatch_apply | Create destination folder for unarchive
6666
ansible.builtin.file:
6767
dest: "{{ __patch_unarchive_dir }}"
6868
mode: 0755
6969
state: directory
7070

71-
- name: db_opatch | Extract one-off patch files to patch base
71+
- name: loop_opatch_apply | Extract one-off patch files to patch base
7272
ansible.builtin.unarchive:
7373
src: "{{ oracle_stage }}/{{ osp_loop.filename }}"
7474
dest: "{{ __patch_unarchive_dir }}"
7575
creates: "{{ __patch_unarchive_dir }}/{{ __sw_patches_filename_creates }}"
7676
copy: false
7777

78-
- name: db_opatch | Remove patch archive from stage
78+
- name: loop_opatch_apply | Remove patch archive from stage
7979
ansible.builtin.file:
8080
path: "{{ oracle_stage }}/{{ osp_loop.filename }}"
8181
state: absent

roles/oraswdb_manage_patches/tasks/loop_patchid.yml

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
- name: Work on Patch {{ dhc_opatch.patchid }}
2+
- name: loop_Patchid | Work on Patch {{ dhc_opatch.patchid }}
33
ansible.builtin.debug:
44
msg:
55
- >-
@@ -14,16 +14,26 @@
1414
opatchauto: {{ __opatchauto_patchtype }}
1515
- >-
1616
excludeUPI: {{ dhc_opatch.excludeUPI | default('') }}
17-
patchsubdir: {{ __oraswdb_manage_patches_patchsubdir | default('') }}
17+
- >-
18+
oracle_patch_stage: {{ oracle_patch_stage }}
19+
oracle_sw_copy: {{ oracle_sw_copy | bool }}
20+
is_sw_source_local: {{ is_sw_source_local | bool }}
21+
22+
# - name: loop_Patchid | debug data
23+
# ansible.builtin.debug:
24+
# msg:
25+
# - "{{ oracle_sw_patches | selectattr('patchid', 'equalto', dhc_opatch.patchid) }}"
26+
# - "{{ dhc_opatch.patchid }}"
1827

19-
- name: Work on oracle_sw_patches
28+
- name: loop_Patchid | Work on oracle_sw_patches
2029
ansible.builtin.include_tasks: loop_opatch_apply.yml
2130
vars:
2231
__sw_patches_filename_creates: "{{ osp_loop.creates | default((dhc_opatch.patchid | string) + '/README.txt') }}"
2332
__patch_unarchive_dir: "{{ oracle_patch_stage }}/{{ db_version }}/{{ __patch_upisubdir }}/"
2433
__patch_upisubdir: >-
25-
{%- if osp_loop.unique_patchid is defined -%}
26-
upi_{{ osp_loop.unique_patchid -}}/{% endif -%}
34+
{{ osp_loop.unique_patchid is defined
35+
| ternary(osp_loop.unique_patchid,
36+
osp_loop.patchid) }}/
2737
with_items:
2838
- "{{ oracle_sw_patches | selectattr('patchid', 'equalto', dhc_opatch.patchid) }}"
2939
loop_control:
@@ -38,16 +48,16 @@
3848
- not dbhome_patches.stdout_lines | select('match', osp_loop.patchid | string) | length > 0
3949
- osp_loop.unique_patchid | default(0) == dhc_opatch.excludeUPI | default(0)
4050

41-
- name: Info
51+
- name: loop_Patchid | Info
4252
ansible.builtin.debug:
4353
msg: Starting opatch apply. This could take some time to complete...
4454

4555
# opatchauto needs root user for execution
46-
- name: Manage patch for DB
56+
- name: loop_Patchid | Manage patch for DB
4757
opitzconsulting.ansible_oracle.oracle_opatch:
4858
oracle_home: "{{ oracle_home_db }}"
4959
patch_base: >-
50-
{{ oracle_patch_install }}/{{ db_version }}/{{ dhc_opatch.path | default(__patch_upisubdir + (dhc_opatch.patchid | string)) }}
60+
{{ oracle_patch_install }}/{{ db_version }}/{{ dhc_opatch.path | default(__patch_localsubdir) }}
5161
patch_id: "{{ dhc_opatch.patchid }}"
5262
patch_version: "{{ dhc_opatch.patchversion | default(omit) }}"
5363
exclude_upi: "{{ dhc_opatch.excludeUPI | default(omit) }}"
@@ -60,6 +70,5 @@
6070
become: true
6171
become_user: "{{ __opatchauto_patchtype | ternary('root', oracle_user) }}"
6272
vars:
63-
__patch_upisubdir: >-
64-
{%- if dhc_opatch.excludeUPI is defined -%}
65-
upi_{{ dhc_opatch.excludeUPI -}}/{% endif -%}
73+
__patch_localsubdir: >-
74+
{{ dhc_opatch.excludeUPI | default(dhc_opatch.patchid) }}/{{ dhc_opatch.patchid | string }}

0 commit comments

Comments
 (0)