]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
defaults: add a default value to rgw_hostname
authorGuillaume Abrioux <gabrioux@redhat.com>
Wed, 5 Sep 2018 11:20:47 +0000 (13:20 +0200)
committerGuillaume Abrioux <gabrioux@redhat.com>
Mon, 10 Sep 2018 10:07:44 +0000 (12:07 +0200)
let's add ansible_hostname as a default value for rgw_hostname if no
hostname in servicemap matches ansible_fqdn.

Fixes: #3063
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1622505
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
roles/ceph-config/templates/ceph.conf.j2
roles/ceph-defaults/tasks/facts.yml

index f9ccda2a8ba75141c71c6e1b71615a6bd1e78c13..cee74ee15ad185addeade08ae699e170d24e6df5 100644 (file)
@@ -155,10 +155,11 @@ filestore xattr use omap = true
 
 {% if inventory_hostname in groups.get(rgw_group_name, []) %}
 {% for host in groups[rgw_group_name] %}
+{% set rgw_hostname = hostvars[host]['rgw_hostname'] | default(ansible_hostname) %}
 {# {{ hostvars[host]['rgw_hostname'] }} for backward compatibility, fqdn issues. See bz1580408 #}
-[client.rgw.{{ hostvars[host]['rgw_hostname'] }}]
-host = {{ hostvars[host]['rgw_hostname'] }}
-keyring = /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ hostvars[host]['rgw_hostname'] }}/keyring
+[client.rgw.{{ rgw_hostname }}]
+host = {{ rgw_hostname }}
+keyring = /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ rgw_hostname }}/keyring
 log file = /var/log/ceph/{{ cluster }}-rgw-{{ hostvars[host]['ansible_hostname'] }}.log
 {% if hostvars[host]['radosgw_address_block'] is defined and hostvars[host]['radosgw_address_block'] != 'subnet' %}
     {% if ip_version == 'ipv4' %}
@@ -204,10 +205,11 @@ rgw frontends = {{ radosgw_frontend_type }} {{ 'port' if radosgw_frontend_type =
 
 {% if inventory_hostname in groups.get(nfs_group_name, []) and inventory_hostname not in groups.get(rgw_group_name, []) %}
 {% for host in groups[nfs_group_name] %}
+{% set rgw_hostname = hostvars[host]['rgw_hostname'] | default(ansible_hostname) %}
 {% if nfs_obj_gw %}
-[client.rgw.{{ hostvars[host]['rgw_hostname'] }}]
-host = {{ hostvars[host]['rgw_hostname'] }}
-keyring = /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ hostvars[host]['rgw_hostname'] }}/keyring
+[client.rgw.{{ rgw_hostname }}]
+host = {{ rgw_hostname }}
+keyring = /var/lib/ceph/radosgw/{{ cluster }}-rgw.{{ rgw_hostname }}/keyring
 log file = /var/log/ceph/{{ cluster }}-rgw-{{ hostvars[host]['ansible_hostname'] }}.log
 {% endif %}
 {% endfor %}
index d58b173d761f2f64a9a1b1e44fa5bc3dd3da63b1..745332a530140455da02fbeb341e1b3237e11383 100644 (file)
     - containerized_deployment
     - ceph_docker_image | search("rhceph")
 
-- name: set_fact rgw_hostname - fqdn
+- name: set_fact rgw_hostname
   set_fact:
-    rgw_hostname: "{% for key in ceph_current_status['servicemap']['services']['rgw']['daemons'].keys() %}{% if key == ansible_fqdn %}{{ key }}{% endif %}{% endfor %}"
+    rgw_hostname: "{% set _value = ansible_hostname -%}
+    {% for key in ceph_current_status['servicemap']['services']['rgw']['daemons'].keys() -%}
+    {% if key == ansible_fqdn -%}
+    {% set _value = key -%}
+    {% endif -%}
+    {% endfor -%}
+    {{ _value }}"
   when:
     - inventory_hostname in groups.get(rgw_group_name, []) or inventory_hostname in groups.get(nfs_group_name, [])
     - ceph_current_status['servicemap'] is defined
     - ceph_current_status['servicemap']['services'] is defined
-    - ceph_current_status['servicemap']['services']['rgw'] is defined # that's the way to cover ceph_release_num[ceph_release] >= ceph_release_num['luminous']
-    - ansible_hostname != ansible_fqdn
-
-- name: set_fact rgw_hostname - no fqdn
-  set_fact:
-    rgw_hostname: "{{ ansible_hostname }}"
-  when:
-    - inventory_hostname in groups.get(rgw_group_name, []) or inventory_hostname in groups.get(nfs_group_name, [])
-    - rgw_hostname is undefined
\ No newline at end of file
+    - ceph_current_status['servicemap']['services']['rgw'] is defined # that's the way to cover ceph_release_num[ceph_release] >= ceph_release_num['luminous']
\ No newline at end of file