From 2da409cf8cafcbec47674e4e33af9922cf3cc3e4 Mon Sep 17 00:00:00 2001 From: Daniel STAN Date: Fri, 28 Feb 2014 23:23:39 +0100 Subject: [PATCH] =?UTF-8?q?generate:=20trigger=20dans=20un=20fichier=20?= =?UTF-8?q?=C3=A0=20part?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Eye of the trigger** --- gestion/gen_confs/generate.py | 21 +-------------------- gestion/gen_confs/trigger.py | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 20 deletions(-) create mode 100755 gestion/gen_confs/trigger.py diff --git a/gestion/gen_confs/generate.py b/gestion/gen_confs/generate.py index c6c7eed3..40765c7c 100755 --- a/gestion/gen_confs/generate.py +++ b/gestion/gen_confs/generate.py @@ -15,7 +15,7 @@ arguments peuvent être founis pour une même option, les séparer par & """ import sys, signal, os, getopt -import subprocess +from trigger import trigger_generate as trigger sys.path.append('/usr/scripts/gestion') from ldap_crans import crans_ldap, hostname @@ -31,25 +31,6 @@ openlog("generate") db = crans_ldap() make_lock('auto_generate', 'Big lock', nowait=1) -def trigger(host, background=False): - if not 'adm.crans.org' in host: - host=host + '.adm.crans.org' - options = ['PasswordAuthentication=no', 'ConnectTimeout=1', 'VerifyHostKeyDNS=yes', - 'BatchMode=yes', 'ServerAliveInterval=5', 'ServerAliveCountMax=1'] - args = ["ssh", "-4", "-i", "/etc/crans/secrets/trigger-generate" ] - for opt in options: - args.append('-o') - args.append(opt) - args.extend(["rpcssh@%s" % host, "generate"]) - if background: - subprocess.Popen(args) - else: - p=subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - out, err = p.communicate() - if err: - raise Exception(err) - return out - class base_reconfigure: try: sys.path.append('/etc/crans/') diff --git a/gestion/gen_confs/trigger.py b/gestion/gen_confs/trigger.py new file mode 100755 index 00000000..29c565af --- /dev/null +++ b/gestion/gen_confs/trigger.py @@ -0,0 +1,24 @@ +#! /usr/bin/env python +# -*- coding: utf-8 -*- + +import subprocess + +def trigger_generate(host, background=False): + if not 'adm.crans.org' in host: + host=host + '.adm.crans.org' + options = ['PasswordAuthentication=no', 'ConnectTimeout=1', 'VerifyHostKeyDNS=yes', + 'BatchMode=yes', 'ServerAliveInterval=5', 'ServerAliveCountMax=1'] + args = ["ssh", "-4", "-i", "/etc/crans/secrets/trigger-generate" ] + for opt in options: + args.append('-o') + args.append(opt) + args.extend(["rpcssh@%s" % host, "generate"]) + if background: + subprocess.Popen(args) + else: + p=subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + out, err = p.communicate() + if err: + raise Exception(err) + return out +