Add in cron and kojira tasks for passive hub. Add keepalived script to enable/disable on master/backup.
This commit is contained in:
parent
9fa2c79048
commit
1ba5dc01a5
9 changed files with 210 additions and 0 deletions
34
roles/keepalived/files/keepalived-notify.sh
Normal file
34
roles/keepalived/files/keepalived-notify.sh
Normal 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
|
|
@ -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
|
|
@ -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:
|
||||
|
|
|
@ -19,4 +19,5 @@ vrrp_instance VI_1 {
|
|||
priority {{ keepalived_priority }}
|
||||
virtual_ipaddress {
|
||||
{{ keepalived_ipaddress }}
|
||||
notify /usr/local/bin/keepalived-notify.sh
|
||||
}
|
||||
|
|
2
roles/koji_hub/files/koji-directory-cleanup
Normal file
2
roles/koji_hub/files/koji-directory-cleanup
Normal 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
|
6
roles/koji_hub/files/koji-gc
Normal file
6
roles/koji_hub/files/koji-gc
Normal 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
|
82
roles/koji_hub/files/koji-gc.conf
Normal file
82
roles/koji_hub/files/koji-gc.conf
Normal 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
|
||||
|
4
roles/koji_hub/files/koji-prunesigs
Normal file
4
roles/koji_hub/files/koji-prunesigs
Normal 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
|
|
@ -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
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue