--- # 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: Get md5sum of local builder files shell: | cat /etc/swift/ring_build_files/*.builder 2>/dev/null | md5sum | cut -d " " -f1 changed_when: false register: md5sum - name: Get empty md5sum shell: | echo -n | md5sum | cut -d " " -f1 changed_when: false register: empty_md5sum # Fail if the remote hosts builder files is not empty AND # does not match the md5sum of the local host. - name: Verify md5sum of builder files fail: msg: > "The builder files on the remote host {{ item }}:{{ hostvars[item]['builder_md5sum'] }} do not match {{ inventory_hostname }}:{{ md5sum.stdout }} and are not empty on the remote host" when: - hostvars[item] is defined - hostvars[item]['builder_md5sum'] is defined - hostvars[item]['builder_md5sum'] != empty_md5sum.stdout - hostvars[item]['builder_md5sum'] != md5sum.stdout with_items: "{{ groups['swift_all'] + groups['swift_remote_all'] }}"