Mercurial > bitten > bitten-test
changeset 66:df40a4eb7553
Use the standard {{{platform}}} module for reporting of system info by slaves. Closes #6.
author | cmlenz |
---|---|
date | Tue, 28 Jun 2005 23:15:55 +0000 |
parents | 5f9bcb4966b7 |
children | 6ffa99b442bf |
files | bitten/master.py bitten/slave.py |
diffstat | 2 files changed, 18 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/bitten/master.py +++ b/bitten/master.py @@ -121,6 +121,10 @@ self.name = None def handle_disconnect(self): + if self.name is None: + # Slave didn't successfully register before disconnecting + return + del self.master.slaves[self.name] for build in Build.select(self.master.env, slave=self.name, @@ -143,10 +147,11 @@ for child in elem.children(): if child.name == 'platform': platform = child.gettext() + processor = child.attr.get('processor') elif child.name == 'os': os = child.gettext() - os_family = child.attr['family'] - os_version = child.attr['version'] + os_family = child.attr.get('family') + os_version = child.attr.get('version') self.name = elem.attr['name'] self.master.slaves[self.name] = self
--- a/bitten/slave.py +++ b/bitten/slave.py @@ -20,7 +20,7 @@ import logging import os -import sys +import platform import tempfile import time @@ -64,13 +64,16 @@ raise beep.TerminateSession, 'Registration failed!' logging.info('Registration successful') - sysname, nodename, release, version, machine = os.uname() + + system, node, release, version, machine, processor = platform.uname() + system, release, version = platform.system_alias(system, release, + version) if self.session.name is not None: - nodename = self.session.name - logging.info('Registering with build master as %s', nodename) - xml = xmlio.Element('register', name=nodename)[ - xmlio.Element('platform')[machine], - xmlio.Element('os', family=os.name, version=release)[sysname] + node = self.session.name + logging.info('Registering with build master as %s', node) + xml = xmlio.Element('register', name=node)[ + xmlio.Element('platform', processor=processor)[machine], + xmlio.Element('os', family=os.name, version=release)[system] ] self.channel.send_msg(beep.MIMEMessage(xml), handle_reply) @@ -149,6 +152,7 @@ description=step.description)[e] self.channel.send_ans(msgno, beep.MIMEMessage(xml)) + logging.info('Build completed') self.channel.send_nul(msgno) except InvalidRecipeError, e: