Skip to content

Commit

Permalink
Remove overdone stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
derf committed Apr 10, 2011
1 parent ff766b6 commit 1eb09cd
Show file tree
Hide file tree
Showing 5 changed files with 6 additions and 715 deletions.
72 changes: 6 additions & 66 deletions fabfile.py
Expand Up @@ -11,37 +11,14 @@


env.shell = '/bin/sh -c' env.shell = '/bin/sh -c'


def run_or_sudo(command, use_sudo): def etckeeper_check():
if use_sudo: run('etckeeper pre-install')
sudo(command)
else:
run(command)


def etckeeper_check(use_sudo=False): def etckeeper_commit(message):
run_or_sudo('etckeeper pre-install', use_sudo) run('if etckeeper unclean; then etckeeper commit "%s"; fi' % message)

def etckeeper_commit(message, use_sudo=False):
run_or_sudo('if etckeeper unclean; then etckeeper commit "%s"; fi' % message,
use_sudo)

def etckeeper_done(use_sudo=False):
run_or_sudo('etckeeper post-install', use_sudo)

# Fabric >= 1.0 can use sudo in put. However, thanks to
# <http://code.fabfile.org/issues/show/320>, this does not help me at all.
# So, I'll stick with 0.9.3 and use this instead. --derf
def put_sudo(local, remote):
tmp = "/home/derf/fabtmp"
put(local, tmp)
sudo("mv %s %s" % (tmp, remote))
sudo("chmod a+rX %s" % remote)

def put_icinga_check(name):
put_sudo(
"nagios-checks/remote/check_%s" % name,
"/usr/local/lib/nagios/plugins/check_%s" % name,
)


def etckeeper_done():
run('etckeeper post-install')


def configs(): def configs():
etckeeper_check() etckeeper_check()
Expand All @@ -55,40 +32,3 @@ def deploy(version):
run("dpkg --install /root/chaosdorf-admin-toolkit_%s_all.deb" % version) run("dpkg --install /root/chaosdorf-admin-toolkit_%s_all.deb" % version)
run("rm /root/chaosdorf-admin-toolkit_%s_all.deb" % version) run("rm /root/chaosdorf-admin-toolkit_%s_all.deb" % version)
etckeeper_done() etckeeper_done()

# Only for derf ;-)
@hosts('derf@derf.homelinux.org')
def icinga():
etckeeper_check(use_sudo=True)
put_icinga_check('http_authed')
put_icinga_check('mail_no_relay')
put_icinga_check('rbl')
put_icinga_check('ssh_no_password_login')
put_icinga_check('websites')
put_sudo('icinga/chaosdorf_websites.ini',
'/etc/nagios/chaosdorf_websites.ini')
put_sudo('icinga/chaosdorf.cfg', '/etc/icinga/objects/chaosdorf.cfg')
put_sudo('icinga/checks.cfg', '/etc/nagios-plugins/config/chaosdorf.cfg')
put_sudo('nagios-goodies/irc-announce/notify',
'/usr/local/lib/nagios/notify/chaosdorf-admins')

sudo('if ! /etc/init.d/icinga check; then etckeeper vcs checkout '
+ 'icinga/objects/chaosdorf.cfg '
+ 'nagios/chaosdorf_websites.ini '
+ 'nagios-plugins/config/chaosdorf.cfg '
+ '; exit 1; fi')

sudo('/etc/init.d/icinga reload')
etckeeper_commit('Icinga config updates from chaosdorf-admin-toolkit',
use_sudo=True)

# Same here
@hosts('steel.derf0.net')
def announcer():
etckeeper_check(use_sudo=True)
put_sudo('nagios-goodies/irc-announce/run', '/etc/service/ircport/run')
put_sudo('nagios-goodies/irc-announce/ircport',
'/usr/local/bin/icinga-irc')
sudo('svc -t /etc/service/ircport')
etckeeper_commit('icinga-irc updates from chaosdorf-admin-toolkit',
use_sudo=True)

0 comments on commit 1eb09cd

Please sign in to comment.