Skip to content

Commit ca4ea52

Browse files
authored
Merge pull request #839 from marcelmamula/storage
sap_storage_setup: Add exact size disk check on top of approximate check
2 parents f5343c6 + a678388 commit ca4ea52

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

roles/sap_storage_setup/tasks/generic_tasks/map_single_disks_to_filesystems.yml

+16-1
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@
5050
# defined already that is to be enhanced with single disk definitions, if
5151
# applicable.
5252

53+
# First pass assigns disks based on exact size.
54+
# Second pass assigns disks based on approximate size -8GB and +8GB
5355
- name: SAP Storage Setup - Set fact for target filesystem device mapping
5456
ansible.builtin.set_fact:
5557
filesystem_device_map: "{{ filesystem_device_map | default([]) + __single_disk_to_fs_device_map }}"
@@ -68,7 +70,21 @@
6870
-%}
6971
7072
{%- for dev in av_dev -%}
73+
{%- if dev.value.size | regex_search('.*TB$') -%}
74+
{% set disk_size_gb = (((( dev.value.size | replace(' TB','') | float * 1024) /8) | round(0,'ceil') * 8) | int) -%}
75+
{%- else -%}
76+
{% set disk_size_gb = (dev.value.size | regex_replace('(\.\d+\s*)', '') | replace('GB','') | int) -%}
77+
{%- endif -%}
78+
{%- if disk_size_gb == fs.disk_size
79+
and dev.key not in assigned_dev
80+
and dev.value.holders | length == 0
81+
and matching_dev | length < (fs.lvm_lv_stripes | d('1') | int) -%}
82+
{%- set assigned = assigned_dev.append(dev.key) -%}
83+
{%- set add = matching_dev.append('/dev/' + dev.key) -%}
84+
{%- endif -%}
85+
{%- endfor -%}
7186
87+
{%- for dev in av_dev -%}
7288
{%- if dev.value.size | regex_search('.*TB$') -%}
7389
{% set disk_size_gb = (((( dev.value.size | replace(' TB','') | float * 1024) /8) | round(0,'ceil') * 8) | int) -%}
7490
{%- else -%}
@@ -82,7 +98,6 @@
8298
{%- set assigned = assigned_dev.append(dev.key) -%}
8399
{%- set add = matching_dev.append('/dev/' + dev.key) -%}
84100
{%- endif -%}
85-
86101
{%- endfor -%}
87102
88103
{%- if matching_dev | length > 0 -%}

0 commit comments

Comments
 (0)