Add in cron and kojira tasks for passive hub. Add keepalived script to enable/disable on master/backup.

This commit is contained in:
Kevin Fenzi 2015-01-16 18:57:25 +00:00
parent 9fa2c79048
commit 1ba5dc01a5
9 changed files with 210 additions and 0 deletions

View file

@ -0,0 +1,34 @@
#!/bin/bash
TYPE=$1
NAME=$2
STATE=$3
#
# We are becoming master node
#
if [ $STATE == "MASTER" ]; then
# systemctl stop kojira
# rm -f /etc/cron.d/kojifix
# rm -f /etc/cron.d/koji-directory-cleanup
# rm -f /etc/cron.d/koji-gc
# rm -f /etc/cron.d/koji-prunesigs
logger "just became keepalived master"
fi
#
# We are becoming the backup node
#
if [ $STATE == "BACKUP" ]; then
# systemctl start kojira
# /etc/cron.d/kojifix
# rm -f /etc/cron.d/koji-directory-cleanup
# rm -f /etc/cron.d/koji-gc
# rm -f /etc/cron.d/koji-prunesigs
logger "just became keepalived backup"
fi
#
# something horrible has gone wrong
#
if [ $STATE == "FAULT" ]; then
logger "just had a keepalived fault"
fi

View file

@ -0,0 +1,34 @@
#!/bin/bash
TYPE=$1
NAME=$2
STATE=$3
#
# We are becoming master node
#
if [ $STATE == "MASTER" ]; then
# systemctl stop kojira
# rm -f /etc/cron.d/kojifix
# rm -f /etc/cron.d/koji-directory-cleanup
# rm -f /etc/cron.d/koji-gc
# rm -f /etc/cron.d/koji-prunesigs
logger "just became keepalived master"
fi
#
# We are becoming the backup node
#
if [ $STATE == "BACKUP" ]; then
# systemctl start kojira
# /etc/cron.d/kojifix
# rm -f /etc/cron.d/koji-directory-cleanup
# rm -f /etc/cron.d/koji-gc
# rm -f /etc/cron.d/koji-prunesigs
logger "just became keepalived backup"
fi
#
# something horrible has gone wrong
#
if [ $STATE == "FAULT" ]; then
logger "just had a keepalived fault"
fi

View file

@ -21,6 +21,15 @@
notify:
- restart keepalived
- name: Install keepalived failover script for host (or default)
copy: src={{ item }} dest=/usr/local/bin/keepalived-notify.sh mode=755
with_first_found:
- keepalived-notify.sh.{{ ansible_fqdn }}
- keepalived-notify.sh
tags:
- config
- keepalived
- name: Make sure keepalived is set to start and is running
service: state=running enabled=true name=keepalived
tags:

View file

@ -19,4 +19,5 @@ vrrp_instance VI_1 {
priority {{ keepalived_priority }}
virtual_ipaddress {
{{ keepalived_ipaddress }}
notify /usr/local/bin/keepalived-notify.sh
}

View file

@ -0,0 +1,2 @@
0 8 * * * apache find /mnt/koji/work -xdev -depth -mindepth 2 -mtime +28 \( -type f -o -type l \) -delete -o -type d -empty -delete
0 9 * * * apache find /mnt/koji/scratch -xdev -depth -mtime +21 \( -type f -o -type l \) -delete -o -type d -empty -delete

View file

@ -0,0 +1,6 @@
# Run garbage collector nightly
SCRIPT=/usr/sbin/koji-gc
MAILTO=sysadmin-build-members@fedoraproject.org
0 8 * * * apache $SCRIPT --action=delete
0 10 * * * apache $SCRIPT --action=prune
0 9 * * * apache $SCRIPT --action=trash

View file

@ -0,0 +1,82 @@
#test policy file
#earlier = higher precedence!
[main]
key_aliases =
30C9ECF8 fedora-test
4F2A6FD2 fedora-gold
897DA07A redhat-beta
1AC70CE6 fedora-extras
6DF2196F fedora-8-9
DF9B0AE9 fedora-8-9-test
0B86274E fedora-10-test
4EBFC273 fedora-10
D22E77F2 fedora-11
57BBCCBA fedora-12
E8E40FDE fedora-13
97A1071F fedora-14
069C8460 fedora-15
A82BA4B7 fedora-16
1ACA3465 fedora-17
DE7F38BD fedora-18
FB4B18E6 fedora-19
246110C1 fedora-20
95A43F54 fedora-21
8E1431D5 fedora-22
217521F6 fedora-epel
0608B895 fedora-epel-6
352C64E5 fedora-epel-7
unprotected_keys =
fedora-15
fedora-16
fedora-17
fedora-18
fedora-19
fedora-20
fedora-21
fedora-22
fedora-extras
redhat-beta
fedora-epel
fedora-epel-6
fedora-epel-7
server = https://koji.fedoraproject.org/kojihub
weburl = http://koji.fedoraproject.org/koji
from_addr = Koji Build System <buildsys@fedoraproject.org>
[prune]
policy =
#stuff to protect
#note that tags with master lock engaged are already protected
tag *-updates :: keep
age < 1 day :: skip
sig fedora-gold :: skip
sig fedora-test && age < 12 weeks :: keep
sig fedora-10-test && age < 12 weeks :: keep
sig fedora-10 && age < 12 weeks :: keep
sig fedora-11 && age < 12 weeks :: keep
sig fedora-12 && age < 12 weeks :: keep
sig fedora-13 && age < 12 weeks :: keep
sig fedora-14 && age < 12 weeks :: keep
sig fedora-15 && age < 12 weeks :: keep
sig fedora-16 && age < 12 weeks :: keep
sig fedora-17 && age < 12 weeks :: keep
sig fedora-18 && age < 12 weeks :: keep
sig fedora-19 && age < 12 weeks :: keep
sig fedora-20 && age < 12 weeks :: keep
sig fedora-21 && age < 12 weeks :: keep
sig fedora-22 && age < 12 weeks :: keep
sig fedora-epel && age < 12 weeks :: keep
sig fedora-epel-6 && age < 12 weeks :: keep
sig fedora-epel-7 && age < 12 weeks :: keep
#stuff to chuck semi-rapidly
tag *-testing *-candidate *-override && order >= 2 :: untag
tag *-testing *-candidate && order > 0 && age > 6 weeks :: untag
tag *-candidate && age > 8 weeks :: untag
#default: keep the last 3
order > 2 :: untag

View file

@ -0,0 +1,4 @@
# Run prune-signed-copies nightly
MAILTO=sysadmin-build-members@fedoraproject.org
SCRIPT=/usr/bin/koji
0 8 * * * apache $SCRIPT --noauth prune-signed-copies --verbose

View file

@ -10,6 +10,7 @@
- koji-web
- koji-utils
- koji-theme-fedora
- kojira
- mod_ssl
- mod_wsgi
- git
@ -201,3 +202,40 @@
tags:
- service
- koji_hub
- name: Make sure kojira is set to not run on boot (controlled by keepalived)
service: name=kojira enabled=no
tags:
- service
- koji_hub
- name: install cert for oscar (garbage collector) user
copy: src={{ puppet_private }}/koji/gc/oscar_key_and_cert.pem dest=/etc/koji-gc/client.crt
tags:
- koji_hub
- name: install serverca cert for oscar (garbage collector) user
copy: src={{ puppet_private }}/fedora-ca.cert dest=/etc/koji-gc/serverca.crt
tags:
- koji_hub
- name: install clientca cert for oscar (garbage collector) user
copy: src={{ puppet_private }}/fedora-ca.cert dest=/etc/koji-gc/clientca.crt
tags:
- koji_hub
- name: install koji-gc.conf
file: src=koji-gc.conf dest=/etc/koji-gc/koji-gc.conf
tags:
- koji_hub
- name: install cron jobs to be used by keepalived later
copy: src={{ item }} dest=/usr/local/etc/{{ item }}
with_items:
- koji-directory-cleanup
- koji-gc
- koji-prunesigs
tags:
- files
- koji_hub