[Buildbot-commits] buildbot ChangeLog,1.508,1.509

Brian Warner warner at users.sourceforge.net
Fri Oct 14 19:42:42 UTC 2005


Update of /cvsroot/buildbot/buildbot
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32254

Modified Files:
	ChangeLog 
Log Message:
Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-326
Creator:  Brian Warner <warner at lothar.com>

implement multiple slaves per Builder, allowing concurrent Builds

	* lots: implement multiple slaves per Builder, which means multiple
	current builds per Builder. Some highlights:
	* buildbot/interfaces.py (IBuilderStatus.getState): return a tuple
	of (state,currentBuilds) instead of (state,currentBuild)
	(IBuilderStatus.getCurrentBuilds): replace getCurrentBuild()
	(IBuildStatus.getSlavename): new method, so you can tell which
	slave got used. This only gets set when the build completes.
	(IBuildRequestStatus.getBuilds): new method

	* buildbot/process/builder.py (SlaveBuilder): add a .state
	attribute to track things like ATTACHING and IDLE and BUILDING,
	instead of..
	(Builder): .. the .slaves attribute here, which has been turned
	into a simple list of available slaves. Added a separate
	attaching_slaves list to track ones that are not yet ready for
	builds.
	(Builder.fireTestEvent): put off the test-event callback for a
	reactor turn, to make tests a bit more consistent.
	(Ping): cleaned up the slaveping a bit, now it disconnects if the
	ping fails due to an exception. This needs work, I'm worried that
	a code error could lead to a constantly re-connecting slave.
	Especially since I'm trying to move to a distinct remote_ping
	method, separate from the remote_print that we currently use.
	(BuilderControl.requestBuild): return a convenience Deferred that
	provides an IBuildStatus when the build finishes.
	(BuilderControl.ping): ping all connected slaves, only return True
	if they all respond.

	* buildbot/slave/bot.py (BuildSlave.stopService): stop trying to
	reconnect when we shut down.

	* buildbot/status/builder.py: implement new methods, convert
	one-build-at-a-time methods to handle multiple builds
	* buildbot/status/*.py: do the same in all default status targets
	* buildbot/status/html.py: report the build's slavename in the
	per-Build page, report all buildslaves on the per-Builder page

	* buildbot/test/test_run.py: update/create tests
	* buildbot/test/test_slaves.py: same
	* buildbot/test/test_scheduler.py: remove stale test

	* docs/buildbot.texinfo: document the new builder-specification
	'slavenames' parameter


Index: ChangeLog
===================================================================
RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v
retrieving revision 1.508
retrieving revision 1.509
diff -u -d -r1.508 -r1.509
--- ChangeLog	14 Oct 2005 19:32:55 -0000	1.508
+++ ChangeLog	14 Oct 2005 19:42:40 -0000	1.509
@@ -1,3 +1,51 @@
+2005-10-13  Brian Warner  <warner at lothar.com>
+
+	* buildbot/status/words.py (IrcStatusBot.command_WATCH): fix typo
+
+	* lots: implement multiple slaves per Builder, which means multiple
+	current builds per Builder. Some highlights:
+	* buildbot/interfaces.py (IBuilderStatus.getState): return a tuple
+	of (state,currentBuilds) instead of (state,currentBuild)
+	(IBuilderStatus.getCurrentBuilds): replace getCurrentBuild()
+	(IBuildStatus.getSlavename): new method, so you can tell which
+	slave got used. This only gets set when the build completes.
+	(IBuildRequestStatus.getBuilds): new method
+
+	* buildbot/process/builder.py (SlaveBuilder): add a .state
+	attribute to track things like ATTACHING and IDLE and BUILDING,
+	instead of..
+	(Builder): .. the .slaves attribute here, which has been turned
+	into a simple list of available slaves. Added a separate
+	attaching_slaves list to track ones that are not yet ready for
+	builds.
+	(Builder.fireTestEvent): put off the test-event callback for a
+	reactor turn, to make tests a bit more consistent.
+	(Ping): cleaned up the slaveping a bit, now it disconnects if the
+	ping fails due to an exception. This needs work, I'm worried that
+	a code error could lead to a constantly re-connecting slave.
+	Especially since I'm trying to move to a distinct remote_ping
+	method, separate from the remote_print that we currently use.
+	(BuilderControl.requestBuild): return a convenience Deferred that
+	provides an IBuildStatus when the build finishes.
+	(BuilderControl.ping): ping all connected slaves, only return True
+	if they all respond.
+
+	* buildbot/slave/bot.py (BuildSlave.stopService): stop trying to
+	reconnect when we shut down.
+
+	* buildbot/status/builder.py: implement new methods, convert
+	one-build-at-a-time methods to handle multiple builds
+	* buildbot/status/*.py: do the same in all default status targets
+	* buildbot/status/html.py: report the build's slavename in the
+	per-Build page, report all buildslaves on the per-Builder page
+
+	* buildbot/test/test_run.py: update/create tests
+	* buildbot/test/test_slaves.py: same
+	* buildbot/test/test_scheduler.py: remove stale test
+
+	* docs/buildbot.texinfo: document the new builder-specification
+	'slavenames' parameter
+
 2005-10-12  Brian Warner  <warner at lothar.com>
 
 	* buildbot/buildset.py (BuildSet): fix bug where BuildSet did not





More information about the Commits mailing list