[Buildbot-devel] New User & odd/different source requirements

Gwyn Evans gwyn.evans at gmail.com
Mon Sep 13 12:02:13 UTC 2004


Hi,
    I've made some progress, but I'm still having some problems at a
early stage...

  Basically, I was having some issues with the initial command step
not working[see at end of mail], so I've added a few earlier steps,
but the slave process appears to only do the 1st step...

  My master.cfg file is:-

-------------
#! /usr/bin/python

from buildbot.process.base import ConfigurableBuildFactory
from buildbot.process import step

steps = [
         (step.ShellCommand, {'workdir': '.',
                              'command': ['pwd']}),
         (step.ShellCommand, {'workdir': '.',
                              'command': ['printenv']}),
         (step.ShellCommand, {'workdir': '.',
                              'command': ['date']}),
         (step.ShellCommand, {'workdir': '.',
                              'command': ['cleartool', 'setview', 'gwyeva1']}),
         (step.ShellCommand, {'workdir': '/vobs/transport',
                              'command': ['acrossmake', '-f',
'MakefileTservInv', 'dbg']}),
        ]

c = {}

c['bots'] = [["bot-TServInv", "TServInv"]]

c['sources'] = []
c['builders'] = []

b1 = {'name': "TServInv",
      'slavename': "bot-TServInv",
      'builddir': "/home/gwyeva1/BuildBot/Bot-TServInv",
      'factory': ConfigurableBuildFactory(steps),
      }
c['builders'].append(b1)

c['slavePortnum'] = 18007
c['webPortnum'] = 18080
c['debugPassword'] = "asdf"

BuildmasterConfig = c
--------

  I built the slave tap with --master localhost:18007 and am able to
run the master & slave.  When I access the web-page, I can see when
the slave connects.  However, if I ping the slave, the web log shows
"pinging" then "ping failed", although the slave's log doesn't show
anything odd:-
2004/09/13 13:39 MEST [Broker,client] message from master: attached
2004/09/13 13:39 MEST [Broker,client] setBuilderList [('TServInv',
'/home/gwyeva1/BuildBot/Bot-TServInv')]
2004/09/13 13:39 MEST [Broker,client] builder 'TServInv' message from
master: attached
2004/09/13 13:39 MEST [Broker,client] builder 'TServInv' message from
master: ping

  If I force a build, the web page shows "running 'pwd'" with the
'log' link there showing
command '['pwd']' in dir /home/gwyeva1/BuildBot/Bot-TServInv/. [0 96342]
/home/gwyeva1/BuildBot/Bot-TServInv

and the slaves's log showing :-
2004/09/13 13:46 MEST [Broker,client] startBuild
2004/09/13 13:46 MEST [Broker,client]  startCommand:shell [id 0 96342]
2004/09/13 13:46 MEST [Broker,client]   command '['pwd']' in dir
/home/gwyeva1/BuildBot/Bot-TServInv/. [0 96342]

but nothing more happens 'till the command times out and it's killed
"command timed out: 1200 seconds without output, killing pid NNNN"

  Any ideas or anything look odd?

-------
  If I delete the pwd, printenv, date steps, then try, I get the following:-

2004/09/13 13:56 MEST [Broker,client] startBuild
2004/09/13 13:56 MEST [Broker,client]  startCommand:shell [id 0 317672]
2004/09/13 13:56 MEST [Broker,client]   command '['cleartool',
'setview', 'gwyeva1']' in dir /home/gwyeva1/BuildBot/Bot-TServInv/. [0
317672]
2004/09/13 13:56 MEST [Broker,client] Peer will receive following PB traceback:
2004/09/13 13:56 MEST [Broker,client] Traceback (most recent call last):
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/banana.py",
line 320, in dataReceived
            processed = cBanana.dataReceived(self.state, buffer,
self.callExpressionReceived)
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/banana.py",
line 93, in callExpressionReceived
            self.expressionReceived(obj)
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/pb.py",
line 568, in expressionReceived
            method(*sexp[1:])
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/pb.py",
line 879, in proto_message
            self._recvMessage(self.localObjectForID, requestID,
objectID, message, answerRequired, netArgs, netKw)
        --- <exception caught here> ---
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/pb.py",
line 893, in _recvMessage
            netResult = object.remoteMessageReceived(self, message,
netArgs, netKw)
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/spread/flavors.py",
line 124, in remoteMessageReceived
            state = method(*args, **kw)
          File "/home/gwyeva1/lib/python2.3/site-packages/buildbot/bot.py",
line 129, in remote_startCommand
            d = self.command.startCommand()
          File "/home/gwyeva1/lib/python2.3/site-packages/buildbot/slavecommand.py",
line 61, in startCommand
            self.start()
          File "/home/gwyeva1/lib/python2.3/site-packages/buildbot/slavecommand.py",
line 189, in start
            self.dir, usePTY=usePTY)
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/internet/default.py",
line 166, in spawnProcess
            processProtocol, uid, gid, usePTY)
          File "/home/gwyeva1/lib/python2.3/site-packages/twisted/internet/process.py",
line 681, in __init__
            stderr.flush()
        exceptions.IOError: [Errno 9] Bad file number

2004/09/13 13:56 MEST [-] Malformed file descriptor found.  Preening lists.
2004/09/13 13:56 MEST [-] bad descriptor <twisted.internet.tcp.Client
to ('localhost', 18007) at 2fa918>
2004/09/13 13:56 MEST [-] bad descriptor <twisted.internet.tcp.Client
to ('localhost', 18007) at 2fa918>

  I was originally trying to seperate the cleartool from the steps to
see where the error was, but it didn't clarify anything for me, so
I've put them both in here!

  Any help gratefully received!

Gwyn




More information about the devel mailing list