aboutsummaryrefslogtreecommitdiffstats
path: root/roles/dovecot/tasks/solr.yml
blob: 075119249c5ffbeb6327d6a47ea01e6175bcfd85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
- name: add solr collection for dovecot
  command:
    cmd: '{{ solr_install_dir }}/bin/solr create -c dovecot'
    creates: '{{ solr_data_dir }}/dovecot'
  become: True
  become_user: solr

- name: check if dovecot schema exists
  stat:
    path: '{{ solr_data_dir }}/dovecot/conf/schema.xml.bak'
  register: schema_xml_bak

- name: copy dovecot solr schema
  copy:
    src: '{{ solr_data_dir[1:] }}/dovecot/conf/schema.xml'
    dest: '{{ solr_data_dir }}/dovecot/conf/schema.xml'
    owner: solr
    group: solr
  register: solr_schema
  changed_when: no

- name: stat new schema
  stat:
    path: '{{ solr_data_dir }}/dovecot/conf/schema.xml'
  register: schema_xml

- name: remove managed-schema file
  file:
    path: '{{ solr_data_dir }}/dovecot/conf/managed-schema.xml'
    state: absent
  when: (not schema_xml_bak.stat.exists) or (schema_xml_bak.stat.checksum != schema_xml.stat.checksum)
  notify: restart solr

- name: generate dovecot solr config
  template:
    src: '{{ solr_data_dir[1:] }}/dovecot/conf/solrconfig.xml.j2'
    dest: '{{ solr_data_dir }}/dovecot/conf/solrconfig.xml'
    owner: solr
    group: solr
  notify: restart solr