--- # 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. # When not using a replication network use the default configuration - include: swift_upstart_common_init.yml vars: program_name: "swift-object-replicator" program_config_options: "{{ swift_object_server_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" when: > swift.replication_network is not defined or swift.replication_network == swift.storage_network # When using a replication network use the specific replicator configuration - include: swift_upstart_common_init.yml vars: program_name: "swift-object-replicator" program_config_options: "{{ swift_object_replicator_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" when: > swift.replication_network is defined and swift.replication_network != swift.storage_network # When using a replication network use a second server for dedicated replicator configuration # This will be a blank file if not using dedicated replication network to prevent errors # when the service attempts to start. - include: swift_upstart_common_init.yml vars: program_name: "swift-object-replicator-server" program_binary: "swift-object-server" program_config_options: "{{ swift_object_replicator_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" - include: swift_upstart_common_init.yml vars: program_name: "swift-object-server" program_config_options: "{{ swift_object_server_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" - include: swift_upstart_common_init.yml vars: program_name: "swift-object-auditor" program_config_options: "{{ swift_object_server_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" - include: swift_upstart_common_init.yml vars: program_name: "swift-object-updater" program_config_options: "{{ swift_object_server_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" - include: swift_upstart_common_init.yml vars: program_name: "swift-object-expirer" program_config_options: "{{ swift_object_expirer_program_config_options }}" service_name: "{{ swift_service_name }}" system_user: "{{ swift_system_user_name }}" system_group: "{{ swift_system_group_name }}" service_home: "{{ swift_system_home_folder }}" - name: "Swift object server configuration" config_template: src: "{{ item.src }}" dest: "{{ item.dest }}" owner: "{{ swift_system_user_name }}" group: "{{ swift_system_group_name }}" mode: "0644" config_overrides: "{{ item.config_overrides }}" config_type: "{{ item.config_type }}" with_items: - src: "object-server.conf.j2" dest: "/etc/swift/object-server/object-server.conf" config_overrides: "{{ swift_object_server_conf_overrides }}" config_type: "ini" - src: "object-expirer.conf.j2" dest: "/etc/swift/object-server/object-expirer.conf" config_overrides: "{{ swift_object_expirer_conf_overrides }}" config_type: "ini" notify: Restart swift object services # We only create the dedicated replicator configuration when using a dedicated replication_network - name: "Swift object server replicator configuration" config_template: src: "object-server-replicator.conf.j2" dest: "/etc/swift/object-server/object-server-replicator.conf" owner: "{{ swift_system_user_name }}" group: "{{ swift_system_group_name }}" mode: "0644" config_overrides: "{{ swift_object_server_replicator_conf_overrides }}" config_type: "ini" when: > swift.replication_network is defined and swift.replication_network != swift.storage_network notify: Restart swift object services # Remove the dedicated replicator configuration when no dedicated replication network in use - name: "Remove dedicated replicator configuration" file: state: absent path: "/etc/swift/object-server/object-server-replicator.conf" when: > swift.replication_network is not defined or swift.replication_network == swift.storage_network - name: Deploy drive-audit configuration file config_template: src: drive-audit.conf.j2 dest: /etc/swift/drive-audit.conf owner: "{{ swift_system_user_name }}" group: "{{ swift_system_group_name }}" mode: "0644" config_overrides: "{{ swift_drive_audit_conf_overrides }}" config_type: "ini" tags: - swift-drive-audit - name: Create drive-audit cron job cron: name: "Run drive-audit script" job: "{{ swift_venv_bin }}/swift-drive-audit /etc/swift/drive-audit.conf" minute: 15 cron_file: swift-drive-audit user: root tags: - swift-drive-audit