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:
|
notify:
|
||||||
- restart keepalived
|
- 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
|
- name: Make sure keepalived is set to start and is running
|
||||||
service: state=running enabled=true name=keepalived
|
service: state=running enabled=true name=keepalived
|
||||||
tags:
|
tags:
|
||||||
|
|
|
@ -19,4 +19,5 @@ vrrp_instance VI_1 {
|
||||||
priority {{ keepalived_priority }}
|
priority {{ keepalived_priority }}
|
||||||
virtual_ipaddress {
|
virtual_ipaddress {
|
||||||
{{ keepalived_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-web
|
||||||
- koji-utils
|
- koji-utils
|
||||||
- koji-theme-fedora
|
- koji-theme-fedora
|
||||||
|
- kojira
|
||||||
- mod_ssl
|
- mod_ssl
|
||||||
- mod_wsgi
|
- mod_wsgi
|
||||||
- git
|
- git
|
||||||
|
@ -201,3 +202,40 @@
|
||||||
tags:
|
tags:
|
||||||
- service
|
- service
|
||||||
- koji_hub
|
- 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