--- # 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: Create glance cache management cron jobs cron: name: "{{ item.name }}" minute: "{{ 59 |random(start=1) }}" day: "*" hour: "{{ item.hour }}" month: "*" state: present job: "{{ item.name }}" user: glance with_items: - name: /usr/local/bin/glance-cache-pruner hour: "*" - name: /usr/local/bin/glance-cache-cleaner hour: "*/5" when: glance_flavor | search("cache") tags: - glance-cron - name: Drop Glance Config(s) template: src: "{{ item.src }}" dest: "{{ item.dest }}" owner: "{{ glance_system_user_name }}" group: "{{ glance_system_group_name }}" with_items: - { src: "glance-api-paste.ini.j2", dest: "/etc/glance/glance-api-paste.ini" } - { src: "glance-registry-paste.ini.j2", dest: "/etc/glance/glance-registry-paste.ini" } - { src: "glance-api.conf.j2", dest: "/etc/glance/glance-api.conf" } - { src: "glance-cache.conf.j2", dest: "/etc/glance/glance-cache.conf" } - { src: "glance-manage.conf.j2", dest: "/etc/glance/glance-manage.conf" } - { src: "glance-registry.conf.j2", dest: "/etc/glance/glance-registry.conf" } - { src: "glance-scrubber.conf.j2", dest: "/etc/glance/glance-scrubber.conf" } notify: - Restart glance api - Restart glance registry tags: - glance-config - name: Drop Glance static Config(s) copy: src: "{{ item.src }}" dest: "{{ item.dest }}" owner: "{{ glance_system_user_name }}" group: "{{ glance_system_group_name }}" with_items: - { src: "schema.json", dest: "/etc/glance/schema.json" } - { src: "schema.json", dest: "/etc/glance/schema-image.json" } notify: - Restart glance api - Restart glance registry tags: - glance-config - name: Apply updates to Policy file copy_updates: content="{{ item.content }}" updates="{{ item.policy_data }}" dest="{{ item.dest }}" owner="{{ glance_system_user_name }}" group="{{ glance_system_group_name }}" mode="{{ item.mode|default('0644') }}" with_items: - { content: "{{ lookup('file', 'policy.json') | b64encode }}", policy_data: "{{ glance_policy_overrides|default('') }}", dest: "/etc/glance/policy.json" } notify: - Restart glance api - Restart glance registry tags: - glance-config - name: Create nfs shares local path file: path: "{{ item.local_path }}" state: directory with_items: glance_nfs_client when: > glance_nfs_client is defined tags: - glance-nfs - glance-nfs-local-path - name: Create nfs mounts lineinfile: dest: "/etc/fstab" line: "{{ item.server }}:{{ item.remote_path }} {{ item.local_path }} {{ item.type }} {{ item.options }} 0 0" backup: "true" with_items: glance_nfs_client when: > glance_nfs_client is defined notify: Glance mount nfs tags: - glance-nfs - glance-nfs-fstab