openstack-ansible-repo_server/tasks/repo_pre_install.yml
Jesse Pretorius 6cad87f853 Disable slave git servers while syncing
Now that the git repository is served from a different process
it is possible for there to be a race condition where the slaves
do not yet have the updated copy of the data before they get a
request for it.

This patch ensures that the git service is shut down on the slave
nodes during the synchronisation of repo data.

Change-Id: I83650253924354d0e63621474ba69f8cf254bde8
2016-09-08 15:38:14 +01:00

38 lines
1.3 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.
# This is so that the master repo server can stop nginx on the slaves
# while data is syncing.
- name: Allow nginx user to stop/start nginx via sudo
copy:
content: "nginx ALL=NOPASSWD: /etc/init.d/nginx start, /etc/init.d/nginx stop\n"
dest: /etc/sudoers.d/nginx
# This is so that the master repo server can stop the git daemon on the slaves
# while data is syncing.
- name: Allow nginx user to stop/start git-daemon via sudo
copy:
content: "nginx ALL=NOPASSWD: /etc/init.d/git-daemon start, /etc/init.d/git-daemon stop\n"
dest: /etc/sudoers.d/git-daemon
- name: Drop rsyncd configuration file(s)
copy:
src: "rsync.defaults"
dest: "/etc/default/rsync"
notify:
- reload rsyncd
tags:
- repo-config