Skip to content

Commit

Permalink
Ticket #2632 [nine] Use plurals in REST paths
Browse files Browse the repository at this point in the history
 - upgrade master to use plurals
   buildbot.test buildslave.test pass
 - migrate buildbot-www to use plurals
  • Loading branch information
delanne committed Jan 16, 2014
1 parent 805ccee commit aad36b5
Show file tree
Hide file tree
Showing 61 changed files with 443 additions and 443 deletions.
2 changes: 1 addition & 1 deletion master/buildbot/buildslave/base.py
Expand Up @@ -186,7 +186,7 @@ def _applySlaveInfo(self, info):
@defer.inlineCallbacks
def _getSlaveInfo(self):
buildslave = yield self.master.data.get(
('buildslave', self.buildslaveid))
('buildslaves', self.buildslaveid))
self._applySlaveInfo(buildslave['slaveinfo'])

def setServiceParent(self, parent):
Expand Down
18 changes: 9 additions & 9 deletions master/buildbot/data/builders.py
Expand Up @@ -22,8 +22,8 @@ class BuilderEndpoint(base.Endpoint):

isCollection = False
pathPatterns = """
/builder/n:builderid
/master/n:masterid/builder/n:builderid
/builders/n:builderid
/masters/n:masterid/builders/n:builderid
"""

@defer.inlineCallbacks
Expand All @@ -40,16 +40,16 @@ def get(self, resultSpec, kwargs):
defer.returnValue(
dict(builderid=builderid,
name=bdict['name'],
link=base.Link(('builder', str(kwargs['builderid'])))))
link=base.Link(('builders', str(kwargs['builderid'])))))


class BuildersEndpoint(base.Endpoint):

isCollection = True
rootLinkName = 'builders'
pathPatterns = """
/builder
/master/n:masterid/builder
/builders
/masters/n:masterid/builders
"""

@defer.inlineCallbacks
Expand All @@ -59,12 +59,12 @@ def get(self, resultSpec, kwargs):
defer.returnValue([
dict(builderid=bd['id'],
name=bd['name'],
link=base.Link(('builder', str(bd['id']))))
link=base.Link(('builders', str(bd['id']))))
for bd in bdicts])

def startConsuming(self, callback, options, kwargs):
return self.master.mq.startConsuming(callback,
('builder', None, None))
('builders', None, None))


class Builder(base.ResourceType):
Expand Down Expand Up @@ -102,7 +102,7 @@ def updateBuilderList(self, masterid, builderNames):
builderid = bldr['id']
yield self.master.db.builders.removeBuilderMaster(
masterid=masterid, builderid=builderid)
self.master.mq.produce(('builder', str(builderid), 'stopped'),
self.master.mq.produce(('builders', str(builderid), 'stopped'),
dict(builderid=builderid, masterid=masterid,
name=bldr['name']))
else:
Expand All @@ -113,7 +113,7 @@ def updateBuilderList(self, masterid, builderNames):
builderid = yield self.master.db.builders.findBuilderId(name)
yield self.master.db.builders.addBuilderMaster(
masterid=masterid, builderid=builderid)
self.master.mq.produce(('builder', str(builderid), 'started'),
self.master.mq.produce(('builders', str(builderid), 'started'),
dict(builderid=builderid, masterid=masterid, name=name))

@defer.inlineCallbacks
Expand Down
14 changes: 7 additions & 7 deletions master/buildbot/data/buildrequests.py
Expand Up @@ -28,7 +28,7 @@ def db2data(self, dbdict):
data = {
'buildrequestid': dbdict['buildrequestid'],
'buildsetid': dbdict['buildsetid'],
'buildset_link': base.Link(('buildset', str(dbdict['buildsetid']))),
'buildset_link': base.Link(('buildsets', str(dbdict['buildsetid']))),
'builderid': dbdict['builderid'],
'buildername': dbdict['buildername'],
'priority': dbdict['priority'],
Expand All @@ -40,7 +40,7 @@ def db2data(self, dbdict):
'submitted_at': dbdict['submitted_at'],
'complete_at': dbdict['complete_at'],
'waited_for': dbdict['waited_for'],
'link': base.Link(('buildrequest', str(dbdict['buildrequestid']))),
'link': base.Link(('buildrequests', str(dbdict['buildrequestid']))),
}
return defer.succeed(data)

Expand All @@ -49,7 +49,7 @@ class BuildRequestEndpoint(Db2DataMixin, base.Endpoint):

isCollection = False
pathPatterns = """
/buildrequest/n:buildrequestid
/buildrequests/n:buildrequestid
"""

@defer.inlineCallbacks
Expand All @@ -69,9 +69,9 @@ class BuildRequestsEndpoint(Db2DataMixin, base.Endpoint):

isCollection = True
pathPatterns = """
/buildrequest
/builder/i:buildername/buildrequest
/builder/n:builderid/buildrequest
/buildrequests
/builders/i:buildername/buildrequests
/builders/n:builderid/buildrequests
"""
rootLinkName = 'buildrequests'

Expand Down Expand Up @@ -124,7 +124,7 @@ def appendBuilderid(br):

def startConsuming(self, callback, options, kwargs):
return self.master.mq.startConsuming(callback,
('buildrequest', None, None, None, None))
('buildrequests', None, None, None, None))


class BuildRequest(base.ResourceType):
Expand Down
36 changes: 18 additions & 18 deletions master/buildbot/data/builds.py
Expand Up @@ -25,20 +25,20 @@ def db2data(self, dbdict):
'buildid': dbdict['id'],
'number': dbdict['number'],
'builderid': dbdict['builderid'],
'builder_link': base.Link(('builder', str(dbdict['builderid']))),
'builder_link': base.Link(('builders', str(dbdict['builderid']))),
'buildrequestid': dbdict['buildrequestid'],
'buildrequest_link': base.Link(('buildrequest',
'buildrequest_link': base.Link(('buildrequests',
str(dbdict['buildrequestid']))),
'buildslaveid': dbdict['buildslaveid'],
'slave_link': base.Link(('slave', str(dbdict['buildslaveid']))),
'slave_link': base.Link(('slaves', str(dbdict['buildslaveid']))),
'masterid': dbdict['masterid'],
'master_link': base.Link(('master', str(dbdict['masterid']))),
'master_link': base.Link(('masters', str(dbdict['masterid']))),
'started_at': dbdict['started_at'],
'complete_at': dbdict['complete_at'],
'complete': dbdict['complete_at'] is not None,
'state_strings': dbdict['state_strings'],
'results': dbdict['results'],
'link': base.Link(('build', str(dbdict['id']))),
'link': base.Link(('builds', str(dbdict['id']))),
}
return defer.succeed(data)

Expand All @@ -47,8 +47,8 @@ class BuildEndpoint(Db2DataMixin, base.Endpoint):

isCollection = False
pathPatterns = """
/build/n:buildid
/builder/n:builderid/build/n:number
/builds/n:buildid
/builders/n:builderid/builds/n:number
"""

@defer.inlineCallbacks
Expand All @@ -68,19 +68,19 @@ def startConsuming(self, callback, options, kwargs):
buildid = kwargs.get('buildid')
if builderid is not None:
return self.master.mq.startConsuming(callback,
('builder', str(builderid), 'build', str(number), None))
('builders', str(builderid), 'builds', str(number), None))
else:
return self.master.mq.startConsuming(callback,
('build', str(buildid), None))
('builds', str(buildid), None))


class BuildsEndpoint(Db2DataMixin, base.Endpoint):

isCollection = True
pathPatterns = """
/build
/builder/n:builderid/build
/buildrequest/n:buildrequestid/build
/builds
/builders/n:builderid/builds
/buildrequests/n:buildrequestid/builds
"""
rootLinkName = 'builds'

Expand All @@ -98,14 +98,14 @@ def startConsuming(self, callback, options, kwargs):
if builderid is not None:
return self.master.mq.startConsuming(
callback,
('builder', str(builderid), 'build', None, None))
('builders', str(builderid), 'builds', None, None))
elif buildrequestid is not None:
# XXX these messages are never produced
return self.master.mq.startConsuming(callback,
('buildrequest', buildrequestid, 'build', None))
('buildrequests', str(buildrequestid), 'builds', None))
else:
return self.master.mq.startConsuming(callback,
('build', None, None, None))
('builds', None, None, None))


class Build(base.ResourceType):
Expand All @@ -115,8 +115,8 @@ class Build(base.ResourceType):
endpoints = [BuildEndpoint, BuildsEndpoint]
keyFields = ['builderid', 'buildid']
eventPathPatterns = """
/builder/:builderid/build/:number
/build/:buildid
/builders/:builderid/builds/:number
/builds/:buildid
"""

class EntityType(types.Entity):
Expand All @@ -141,7 +141,7 @@ class EntityType(types.Entity):
@defer.inlineCallbacks
def generateEvent(self, _id, event):
# get the build and munge the result for the notification
build = yield self.master.data.get(('build', str(_id)))
build = yield self.master.data.get(('builds', str(_id)))
self.produceEvent(build, event)

@base.updateMethod
Expand Down
26 changes: 13 additions & 13 deletions master/buildbot/data/buildsets.py
Expand Up @@ -42,7 +42,7 @@ def db2data(self, bsdict):

@defer.inlineCallbacks
def getSs(ssid):
ss = yield self.master.data.get(('sourcestamp', str(ssid)))
ss = yield self.master.data.get(('sourcestamps', str(ssid)))
sourcestamps.append(ss)
yield defer.DeferredList([getSs(id)
for id in buildset['sourcestamps']],
Expand All @@ -52,7 +52,7 @@ def getSs(ssid):
# minor modifications
buildset['submitted_at'] = datetime2epoch(buildset['submitted_at'])
buildset['complete_at'] = datetime2epoch(buildset['complete_at'])
buildset['link'] = base.Link(('buildset', str(buildset['bsid'])))
buildset['link'] = base.Link(('buildsets', str(buildset['bsid'])))

defer.returnValue(buildset)

Expand All @@ -61,7 +61,7 @@ class BuildsetEndpoint(Db2DataMixin, base.Endpoint):

isCollection = False
pathPatterns = """
/buildset/n:bsid
/buildsets/n:bsid
"""

def get(self, resultSpec, kwargs):
Expand All @@ -71,14 +71,14 @@ def get(self, resultSpec, kwargs):

def startConsuming(self, callback, options, kwargs):
return self.master.mq.startConsuming(callback,
('buildset', str(kwargs['bsid']), 'complete'))
('buildsets', str(kwargs['bsid']), 'complete'))


class BuildsetsEndpoint(Db2DataMixin, base.Endpoint):

isCollection = True
pathPatterns = """
/buildset
/buildsets
"""
rootLinkName = 'buildset'

Expand All @@ -99,7 +99,7 @@ def getResults(res):

def startConsuming(self, callback, options, kwargs):
return self.master.mq.startConsuming(callback,
('buildset', None, 'new'))
('buildsets', None, 'new'))


class Buildset(base.ResourceType):
Expand Down Expand Up @@ -137,7 +137,7 @@ def addBuildset(self, waited_for, scheduler=None, sourcestamps=[], reason=u'',
# get each of the sourcestamps for this buildset (sequentially)
bsdict = yield self.master.db.buildsets.getBuildset(bsid)
sourcestamps = [
(yield self.master.data.get(('sourcestamp', str(ssid)))).copy()
(yield self.master.data.get(('sourcestamps', str(ssid)))).copy()
for ssid in bsdict['sourcestamps']]

# strip the links from those sourcestamps
Expand All @@ -153,9 +153,9 @@ def addBuildset(self, waited_for, scheduler=None, sourcestamps=[], reason=u'',
bsid=bsid,
buildername=bn,
builderid=builderid)
self.master.mq.produce(('buildset', str(bsid),
'builder', str(builderid),
'buildrequest', str(brid),
self.master.mq.produce(('buildsets', str(bsid),
'builders', str(builderid),
'buildrequests', str(brid),
'new'), msg)
# TODO
#~ self.master.mq.produce(('buildrequest', None, None, None, 'new'), dict(buildername=bn))
Expand All @@ -172,7 +172,7 @@ def addBuildset(self, waited_for, scheduler=None, sourcestamps=[], reason=u'',
scheduler=scheduler,
sourcestamps=sourcestamps)
# TODO: properties=properties)
self.master.mq.produce(("buildset", str(bsid), "new"), msg)
self.master.mq.produce(("buildsets", str(bsid), "new"), msg)

log.msg("added buildset %d to database" % bsid)

Expand Down Expand Up @@ -225,7 +225,7 @@ def maybeBuildsetComplete(self, bsid, _reactor=reactor):
bsdict = yield self.master.db.buildsets.getBuildset(bsid)
sourcestamps = [
copy.deepcopy((yield self.master.data.get(
('sourcestamp', str(ssid)))))
('sourcestamps', str(ssid)))))
for ssid in bsdict['sourcestamps']]

# strip the links from those sourcestamps
Expand All @@ -242,4 +242,4 @@ def maybeBuildsetComplete(self, bsid, _reactor=reactor):
complete_at=complete_at,
results=cumulative_results)
# TODO: properties=properties)
self.master.mq.produce(('buildset', str(bsid), 'complete'), msg)
self.master.mq.produce(('buildsets', str(bsid), 'complete'), msg)
36 changes: 18 additions & 18 deletions master/buildbot/data/buildslaves.py
Expand Up @@ -26,30 +26,30 @@ def db2data(self, dbdict):
'name': dbdict['name'],
'slaveinfo': dbdict['slaveinfo'],
'connected_to': [
{'masterid': id, 'link': base.Link(('master', str(id)))}
{'masterid': id, 'link': base.Link(('masters', str(id)))}
for id in dbdict['connected_to']],
'configured_on': [
{'masterid': c['masterid'],
'builderid': c['builderid'],
'link': base.Link(('master', str(c['masterid']),
'builder', str(c['builderid'])))}
'link': base.Link(('masters', str(c['masterid']),
'builders', str(c['builderid'])))}
for c in dbdict['configured_on']],
'link': base.Link(('buildslave', str(dbdict['id']))),
'link': base.Link(('buildslaves', str(dbdict['id']))),
}


class BuildslaveEndpoint(Db2DataMixin, base.Endpoint):

isCollection = False
pathPatterns = """
/buildslave/n:buildslaveid
/buildslave/i:name
/master/n:masterid/buildslave/n:buildslaveid
/master/n:masterid/buildslave/i:name
/master/n:masterid/builder/n:builderid/buildslave/n:buildslaveid
/master/n:masterid/builder/n:builderid/buildslave/i:name
/builder/n:builderid/buildslave/n:buildslaveid
/builder/n:builderid/buildslave/i:name
/buildslaves/n:buildslaveid
/buildslaves/i:name
/masters/n:masterid/buildslaves/n:buildslaveid
/masters/n:masterid/buildslaves/i:name
/masters/n:masterid/builders/n:builderid/buildslaves/n:buildslaveid
/masters/n:masterid/builders/n:builderid/buildslaves/i:name
/builders/n:builderid/buildslaves/n:buildslaveid
/builders/n:builderid/buildslaves/i:name
"""

@defer.inlineCallbacks
Expand All @@ -68,10 +68,10 @@ class BuildslavesEndpoint(Db2DataMixin, base.Endpoint):
isCollection = True
rootLinkName = 'slaves'
pathPatterns = """
/buildslave
/master/n:masterid/buildslave
/master/n:masterid/builder/n:builderid/buildslave
/builder/n:builderid/buildslave
/buildslaves
/masters/n:masterid/buildslaves
/masters/n:masterid/builders/n:builderid/buildslaves
/builders/n:builderid/buildslaves
"""

@defer.inlineCallbacks
Expand Down Expand Up @@ -121,7 +121,7 @@ def buildslaveConnected(self, buildslaveid, masterid, slaveinfo):
buildslaveid=buildslaveid,
masterid=masterid,
slaveinfo=slaveinfo)
bs = yield self.master.data.get(('buildslave', buildslaveid))
bs = yield self.master.data.get(('buildslaves', buildslaveid))
self.produceEvent(bs, 'connected')

@base.updateMethod
Expand All @@ -130,5 +130,5 @@ def buildslaveDisconnected(self, buildslaveid, masterid):
yield self.master.db.buildslaves.buildslaveDisconnected(
buildslaveid=buildslaveid,
masterid=masterid)
bs = yield self.master.data.get(('buildslave', buildslaveid))
bs = yield self.master.data.get(('buildslaves', buildslaveid))
self.produceEvent(bs, 'disconnected')

0 comments on commit aad36b5

Please sign in to comment.