when:
- containerized_deployment
-- name: create rgw nfs user
+- name: check if "{{ ceph_nfs_rgw_user }}" exists
+ command: "{{ docker_exec_cmd_nfs | default('') }} radosgw-admin --cluster {{ cluster }} user info --uid={{ ceph_nfs_rgw_user }}"
+ run_once: true
+ register: rgwuser_exists
+ changed_when: false
+ failed_when: false
+ delegate_to: "{{ groups[mon_group_name][0] }}"
+ when:
+ - nfs_obj_gw
+
+- name: create rgw nfs user "{{ ceph_nfs_rgw_user }}"
command: "{{ docker_exec_cmd_nfs | default('') }} radosgw-admin --cluster {{ cluster }} user create --uid={{ ceph_nfs_rgw_user }} --display-name='RGW NFS User'"
run_once: true
register: rgwuser
delegate_to: "{{ groups[mon_group_name][0] }}"
when:
- nfs_obj_gw
+ - rgwuser_exists.get('rc', 1) != 0
- name: set_fact ceph_nfs_rgw_access_key
set_fact:
- ceph_nfs_rgw_access_key: "{{ (rgwuser.stdout | from_json)['keys'][0]['access_key'] }}"
+ ceph_nfs_rgw_access_key: "{{ (rgwuser.stdout | from_json)['keys'][0]['access_key'] if rgwuser_exists.get('rc', 1) != 0 else (rgwuser_exists.stdout | from_json)['keys'][0]['access_key'] }}"
delegate_to: "{{ groups[mon_group_name][0] }}"
when:
- nfs_obj_gw
- name: set_fact ceph_nfs_rgw_secret_key
set_fact:
- ceph_nfs_rgw_secret_key: "{{(rgwuser.stdout | from_json)['keys'][0]['secret_key']}}"
+ ceph_nfs_rgw_secret_key: "{{ (rgwuser.stdout | from_json)['keys'][0]['secret_key'] if rgwuser_exists.get('rc', 1) != 0 else (rgwuser_exists.stdout | from_json)['keys'][0]['secret_key'] }}"
delegate_to: "{{ groups[mon_group_name][0] }}"
when:
- nfs_obj_gw