mirror of https://github.com/ceph/ceph-ansible.git
66 lines
1.5 KiB
YAML
66 lines
1.5 KiB
YAML
---
|
|
- name: get osd path
|
|
shell: "df | grep {{ item }} | awk '{print $6}'"
|
|
with_items: "{{ devices }}"
|
|
changed_when: false
|
|
failed_when: false
|
|
register: osd_path
|
|
tags:
|
|
- always
|
|
|
|
- name: get osd id
|
|
command: cat {{ item.stdout }}/whoami
|
|
with_items: "{{ osd_path.results }}"
|
|
changed_when: false
|
|
failed_when: false
|
|
register: osd_id_non_dir_scenario
|
|
tags:
|
|
- always
|
|
|
|
# NOTE (leseb): we must do this because of
|
|
# https://github.com/ansible/ansible/issues/4297
|
|
- name: set_fact combined_osd_id
|
|
set_fact:
|
|
combined_osd_id: "{{ osd_id_non_dir_scenario }}"
|
|
|
|
- name: create a ceph fragment and assemble directory
|
|
file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
owner: "ceph"
|
|
group: "ceph"
|
|
mode: "0755"
|
|
with_items:
|
|
- /etc/ceph/ceph.d/
|
|
- /etc/ceph/ceph.d/osd_fragments
|
|
|
|
- name: create the osd fragment
|
|
template:
|
|
src: osd.conf.j2
|
|
dest: /etc/ceph/ceph.d/osd_fragments/osd.{{ item.stdout }}.conf
|
|
owner: "ceph"
|
|
group: "ceph"
|
|
mode: "0644"
|
|
with_items: "{{ combined_osd_id.results }}"
|
|
|
|
- name: copy {{ cluster }}.conf for assembling
|
|
command: cp /etc/ceph/{{ cluster }}.conf /etc/ceph/ceph.d/
|
|
changed_when: false
|
|
|
|
- name: assemble osd sections
|
|
assemble:
|
|
src: /etc/ceph/ceph.d/osd_fragments/
|
|
dest: /etc/ceph/ceph.d/osd.conf
|
|
owner: "ceph"
|
|
group: "ceph"
|
|
mode: "0644"
|
|
|
|
- name: assemble {{ cluster }}.conf and osd fragments
|
|
assemble:
|
|
src: /etc/ceph/ceph.d/
|
|
dest: /etc/ceph/{{ cluster }}.conf
|
|
regexp: "^(({{cluster}})|(osd)).conf$"
|
|
owner: "ceph"
|
|
group: "ceph"
|
|
mode: "0644"
|