--- # Copyright 2014, Rackspace US, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: regen pem shell: > cat {{ item_base_path ~ '.crt' }} $(test -f {{ item_base_path ~ '-ca.crt' }} && echo {{ item_base_path ~ '-ca.crt' }}) {{ item_base_path ~ '.key' }} > {{ item_base_path ~ '.pem' }} notify: Reload haproxy vars: item_interface: "{{ item['interface'] }}" item_name: "{{ ('interface' in item and item['interface'] is truthy) | ternary(item['address'] ~ '-' ~ item_interface, item['address']) }}" item_base_path: "{{ haproxy_ssl_cert_path ~ '/haproxy_' ~ ansible_facts['hostname'] ~ '-' ~ item_name }}" with_items: "{{ haproxy_tls_vip_binds }}" listen: - cert installed - name: regenerate maps vars: all_changed_results: "{{ (map_create.results + map_delete.results) | select('changed') }}" assemble: src: "/etc/haproxy/map.conf.d/{{ item }}" dest: "/etc/haproxy/{{ item }}.map" notify: Reload haproxy with_items: "{{ all_changed_results | map(attribute='item') | flatten | selectattr('name', 'defined') | map(attribute='name') | unique }}" - name: Regenerate haproxy configuration assemble: src: "/etc/haproxy/conf.d" dest: "/etc/haproxy/haproxy.cfg" validate: /usr/sbin/haproxy -c -f %s notify: Reload haproxy tags: - haproxy-general-config - name: Get package facts package_facts: manager: auto listen: Restart rsyslog - name: Restart rsyslog service: name: "rsyslog" state: "restarted" enabled: yes daemon_reload: yes when: - "'rsyslog' in ansible_facts.packages" - name: Reload haproxy service: name: "haproxy" state: "reloaded" enabled: yes daemon_reload: yes