]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
take-over: fix bug when trying to override variable
authorGuillaume Abrioux <gabrioux@redhat.com>
Thu, 17 May 2018 15:29:20 +0000 (17:29 +0200)
committerSébastien Han <seb@redhat.com>
Fri, 18 May 2018 08:10:08 +0000 (10:10 +0200)
A customer has been facing an issue when trying to override
`monitor_interface` in inventory host file.
In his use case, all nodes had the same interface for
`monitor_interface` name except one. Therefore, they tried to override
this variable for that node in the inventory host file but the
take-over-existing-cluster playbook was failing when trying to generate
the new ceph.conf file because of undefined variable.

Typical error:

```
fatal: [srvcto103cnodep01]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute u'ansible_bond0.15'"}
```

Including variables like this `include_vars: group_vars/all.yml` prevent
us from overriding anything in inventory host file because it
overwrites everything you would have defined in inventory.

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1575915
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
infrastructure-playbooks/take-over-existing-cluster.yml

index 0dcc1870f6c72eb3323e61615a4695c39603df07..0da6509863e22817a17db2c0443bd77016b59349 100644 (file)
   - iscsi-gw
   become: true
 
-  tasks:
-    - include_vars: roles/ceph-defaults/defaults/main.yml
-    - include_vars: group_vars/all.yml
+  roles:
+    - ceph-defaults
 
+  post_tasks:
     - name: get the name of the existing ceph cluster
       shell: |
         basename $(grep --exclude '*.bak' -R fsid /etc/ceph/ | egrep -o '^[^.]*' | head -n 1)