openstack-ansible/playbooks/repo-server.yml
Kevin Carter 992e616046
Implement container bind mount for all logs
All of the log directories for all containers will now be bind mounted to the
host. This change ensures that containers are not running into an issue with
Full file systems due to logs which is common when a container is backed by
a blocked device (lvm, zfs, btrfs).

Closes-Bug: #1588051
Change-Id: I25a481c0409f1a45494a8668f00c5393672e853c
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-29 21:59:42 -05:00

70 lines
2.5 KiB
YAML

---
# 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: Setup repo servers
hosts: repo_all
gather_facts: "{{ gather_facts | default(True) }}"
max_fail_percentage: 20
user: root
pre_tasks:
- name: Check if the git cache exists on deployment host
local_action:
module: stat
path: "{{ repo_build_git_cache }}"
register: _local_git_cache
when: repo_build_git_cache is defined
- include: common-tasks/os-lxc-container-setup.yml
vars:
list_of_bind_mounts:
- mount_path: "/openstack/{{ inventory_hostname }}"
bind_dir_path: "/var/www"
when: repo_build_git_cache is not defined or not _local_git_cache.stat.exists
- include: common-tasks/os-lxc-container-setup.yml
vars:
repo_build_git_cache_bind_mount:
- mount_path: "{{ repo_build_git_cache }}"
bind_dir_path: "{{ repo_build_git_cache }}"
list_of_bind_mounts:
- mount_path: "/openstack/{{ inventory_hostname }}"
bind_dir_path: "/var/www"
- mount_path: "{{ repo_build_git_cache }}"
bind_dir_path: "{{ repo_build_git_cache }}"
when:
- repo_build_git_cache is defined
- _local_git_cache.stat.exists
roles:
- { role: "repo_server", tags: [ "repo-server" ] }
- role: "rsyslog_client"
rsyslog_client_log_rotate_file: repo_nginx_log_rotate
rsyslog_client_log_dir: "/var/log/{{ repo_service_user_name }}"
rsyslog_client_log_files:
- /var/log/rsyncd.log
rsyslog_client_config_name: "99-repo-nginx-rsyslog-client.conf"
tags:
- "repo-nginx-rsyslog-client"
- "rsyslog-client"
- role: "rsyslog_client"
rsyslog_client_log_rotate_file: lsyncd_log_rotate
rsyslog_client_log_dir: "/var/log/lsyncd"
rsyslog_client_config_name: "99-lsyncd-rsyslog-client.conf"
tags:
- "repo-rsyslog-client"
- "rsyslog-client"
vars:
is_metal: "{{ properties.is_metal|default(false) }}"