[Et-mgmt-commits-list] [SCM] virt-factory branch, master now at 5a61622360540e5129ab8ed124968768c5fe1699
Scott Seago
sseago at redhat.com
Fri Apr 13 16:51:12 UTC 2007
Hello,
This is an automated email from the git hooks/update script, it was
generated because a ref change was pushed to the repository.
Updating branch, master,
via 5a61622360540e5129ab8ed124968768c5fe1699 (commit)
via 8454823983488977a658f70120d785cdc7bade82 (commit)
via 66e69790550cec500264809dfab932ea6793167c (commit)
from 807b295c6195a3e092494e18db3b1942fa898adf (commit)
- Log -----------------------------------------------------------------
commit 5a61622360540e5129ab8ed124968768c5fe1699
Author: Scott Seago <sseago at redhat.com>
Date: Fri Apr 13 12:47:55 2007 -0400
log register output to /var/log/virt-factory-register/vf_register.log
commit 8454823983488977a658f70120d785cdc7bade82
Author: Scott Seago <sseago at redhat.com>
Date: Fri Apr 13 12:46:24 2007 -0400
puppet module name should be lowercase.
commit 66e69790550cec500264809dfab932ea6793167c
Author: Scott Seago <sseago at redhat.com>
Date: Fri Apr 13 12:22:13 2007 -0400
manifest file should be named after the profile
-----------------------------------------------------------------------
Diffstat:
.../manifests/{myappliance.pp => container.pp} | 0
{service/server => register/register}/logger.py | 0
register/register/register.py | 99 ++++++++++---------
register/setup.py | 5 +-
register/virt-factory-register.spec | 6 +-
service/scripts/vf_import | 2 +-
6 files changed, 61 insertions(+), 51 deletions(-)
diff --git a/docs/container/manifests/myappliance.pp b/docs/container/manifests/container.pp
similarity index 100%
rename from docs/container/manifests/myappliance.pp
rename to docs/container/manifests/container.pp
diff --git a/service/server/logger.py b/register/register/logger.py
similarity index 100%
copy from service/server/logger.py
copy to register/register/logger.py
diff --git a/register/register/register.py b/register/register/register.py
index df92b17..0c74953 100755
--- a/register/register/register.py
+++ b/register/register/register.py
@@ -16,6 +16,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
"""
import machine_info
+import logger
+logger.logfilepath = "/var/log/virt-factory-register/vf_register.log"
import getopt
import string
@@ -39,6 +41,7 @@ class Server(xmlrpclib.ServerProxy):
class Register(object):
def __init__(self,url):
self.server_url = url
+ self.logger = logger.Logger().logger
self.server = Server(url)
self.token = None
@@ -50,15 +53,15 @@ class Register(object):
def register(self, hostname, ip, mac, profile_name, virtual):
# should return a machine_id, maybe more
- print "--------------------"
- print "Registering..."
- print " token=", self.token
- print " hostname=", hostname,
- print " ip=", ip
- print " mac=", mac
- print " profile_name=", profile_name
- print " virtual=", virtual
- print "---------------------"
+ self.logger.info("--------------------")
+ self.logger.info("Registering...")
+ self.logger.info(" token=%s" % self.token)
+ self.logger.info(" hostname=%s" % hostname)
+ self.logger.info(" ip=%s" % ip)
+ self.logger.info(" mac=%s" % mac)
+ self.logger.info(" profile_name=%s" % profile_name)
+ self.logger.info(" virtual=%s" % virtual)
+ self.logger.info("---------------------")
if profile_name is None:
profile_name = ""
if mac is None:
@@ -66,11 +69,11 @@ class Register(object):
try:
rc = self.server.register(self.token, hostname, ip, mac, profile_name, virtual)
except TypeError:
- traceback.print_exc()
- print "error running registration."
+ self.logger.error("error running registration.")
+ self.logger.error("Exception Info:\n%s" % string.join(traceback.format_list(traceback.extract_tb(tb))))
sys.exit(1)
if rc[0] == 0:
- print "Registration succeeded."
+ self.logger.info("Registration succeeded.")
fd1 = open("/etc/sysconfig/virt-factory/token","w+")
fd1.write(self.token)
fd1.close()
@@ -87,20 +90,20 @@ class Register(object):
server = server.split(':')[0]
self.update_puppet_sysconfig(server)
puppetcmd = "/usr/sbin/puppetd --waitforcert 0 --server " + server + " --test"
- print "puppet cmd: ", puppetcmd
+ self.logger.info("puppet cmd: %s" % puppetcmd)
puppet_in, puppet_out = os.popen4(puppetcmd)
for line in puppet_out.readlines():
- print "puppet: ", line,
+ self.logger.info("puppet: %s" % line.strip())
puppet_in.close()
puppet_out.close()
rc2 = self.server.sign_node_cert(self.token, hostname)
if rc2[0] != 0:
- print "Failed: ", rc2
+ self.logger.error("Failed: %s" % rc2)
rc = rc2
else:
- print "Failed: ", rc
+ self.logger.info("Failed: %" % rc)
return rc
def update_puppet_sysconfig(self, server):
@@ -109,7 +112,7 @@ class Register(object):
for line in file:
line = line.strip()
if not 'PUPPET_SERVER' in line:
- print line
+ print line
else:
found = 1
print "PUPPET_SERVER=",server
@@ -118,6 +121,34 @@ class Register(object):
file.write('PUPPET_SERVER=' + server + '\n')
file.close();
+ def register_system(self, regtoken, username, password, profile_name, virtual):
+ if regtoken:
+ self.token = regtoken
+ else:
+ self.login(username, password)
+
+ net_info = machine_info.get_netinfo(self.server_url)
+ self.logger.info(net_info)
+
+ try:
+ rc = self.register(net_info['hostname'], net_info['ipaddr'], net_info['hwaddr'], profile_name, virtual)
+ except socket.error:
+ print "Could not connect to server."
+ return 1
+ if rc[0] == ERR_TOKEN_INVALID:
+ self.logger.info("Bad token! No registration for you!")
+ elif rc[0] == ERR_ARGUMENTS_INVALID:
+ self.logger.info("Invalid arguments. Possibly missing --profilename ?")
+ elif rc[0] != 0:
+ self.logger.info("There was an error. Check the server side logs.")
+ else:
+ # it's all good
+ cmdline = " ".join(sys.argv[1:])
+ fd5 = open("/etc/sysconfig/virt-factory/register","w+")
+ fd5.write(cmdline)
+ fd5.close()
+ return rc[0]
+
def showHelp():
print "register [--help] [--token] [--serverurl=]"
@@ -153,7 +184,7 @@ def main(argv):
sys.exit(1)
for (opt, val) in opts:
- print "DEBUG: this (%s,%s)" % (opt,val)
+ #print "DEBUG: this (%s,%s)" % (opt,val)
if opt in ["-h", "--help"]:
showHelp()
sys.exit(1)
@@ -166,7 +197,7 @@ def main(argv):
if opt in ["-s", "--serverurl"]:
server_url = val
if opt in ["-i", "--profilename"]:
- print "read the profile name"
+ #print "read the profile name"
profile_name = val
if opt in ["-v", "--virtual"]:
virtual = True
@@ -184,34 +215,8 @@ def main(argv):
sys.exit(1)
reg_obj = Register(server_url)
- if regtoken:
- reg_obj.token = regtoken
- else:
- reg_obj.login(username, password)
-
- net_info = machine_info.get_netinfo(server_url)
- print net_info
-
- try:
- rc = reg_obj.register(net_info['hostname'], net_info['ipaddr'], net_info['hwaddr'], profile_name, virtual)
- except socket.error:
- print "Could not connect to server."
- sys.exit(1)
- if rc[0] == ERR_TOKEN_INVALID:
- print "Bad token! No registration for you!"
- sys.exit(rc[0])
- elif rc[0] == ERR_ARGUMENTS_INVALID:
- print "Invalid arguments. Possibly missing --profilename ?"
- sys.exit(rc[0])
- elif rc[0] != 0:
- print "There was an error. Check the server side logs."
- sys.exit(rc[0])
-
- # it's all good
- cmdline = " ".join(sys.argv[1:])
- fd5 = open("/etc/sysconfig/virt-factory/register","w+")
- fd5.write(cmdline)
- fd5.close()
+ return_status = reg_obj.register_system(regtoken, username, password, profile_name, virtual)
+ sys.exit(return_status)
if __name__ == "__main__":
diff --git a/register/setup.py b/register/setup.py
index f3028b4..aded0f9 100644
--- a/register/setup.py
+++ b/register/setup.py
@@ -3,6 +3,7 @@
import sys
from distutils.core import setup, Extension
import string
+import glob
NAME = "virt-factory"
VERSION = "0.0.1"
@@ -16,7 +17,7 @@ if __name__ == "__main__":
etcpath = "/etc/%s" % NAME
wwwpath = "/var/www/%s" % NAME
initpath = "/etc/init.d/"
- logpath = "/var/log/%s/" % NAME
+ logpath = "/var/log/%s-register/" % NAME
settingspath = "/var/lib/%s/" % NAME
setup(
name="%s-register" % NAME,
@@ -28,7 +29,7 @@ if __name__ == "__main__":
scripts = ["scripts/vf_register"],
package_dir = {"%s/register" % NAME: "register"},
packages = ["%s/register" % NAME],
-# data_files = [("%s-register.spec" % NAME)],
+ data_files = [(logpath, [])],
description = SHORT_DESC,
long_description = LONG_DESC
)
diff --git a/register/virt-factory-register.spec b/register/virt-factory-register.spec
index d27fb34..fb0cc0a 100644
--- a/register/virt-factory-register.spec
+++ b/register/virt-factory-register.spec
@@ -4,7 +4,7 @@
Summary: Registration client for virt-factory
Name: virt-factory-register
Version: 0.0.1
-Release: 2%{?dist}
+Release: 3%{?dist}
Source0: %{name}-%{version}.tar.gz
License: GPL
Group: Applications/System
@@ -32,9 +32,13 @@ test "x$RPM_BUILD_ROOT" != "x" && rm -rf $RPM_BUILD_ROOT
%dir %{python_sitelib}/virt-factory
%dir %{python_sitelib}/virt-factory/register
%{python_sitelib}/virt-factory/register/*.py*
+%dir /var/log/virt-factory-register
%changelog
+* Fri Apr 13 2007 Scott Seago <sseago at redhat.com> - 0.0.1-3
+- add logfile
+
* Tue Mar 27 2007 Scott Seago <sseago at redhat.com> - 0.0.1-2
- add puppet dependency
diff --git a/service/scripts/vf_import b/service/scripts/vf_import
index 42662e5..bd48599 100755
--- a/service/scripts/vf_import
+++ b/service/scripts/vf_import
@@ -99,7 +99,7 @@ class VirtFactoryImporter:
profile_member = self.tarball.getmember("profile.xml")
profile_xml = self.tarball.extractfile(profile_member)
self.profile = parse(profile_xml)
- self.module_name = self.get_node_text(NAME_TAG)
+ self.module_name = self.get_node_text(NAME_TAG).lower()
for member in self.tarball.getmembers():
if (re.search(PROFILE_REGEXP, member.name)):
hooks/update
---
Git Source Code Management System
hooks/update refs/heads/master \
807b295c6195a3e092494e18db3b1942fa898adf \
5a61622360540e5129ab8ed124968768c5fe1699
More information about the Et-mgmt-commits-list
mailing list