[Buildbot-devel] Filtering a rest request by a nested value

Francesco Di Mizio francescodimizio at gmail.com
Tue Mar 17 14:42:57 UTC 2015


Pretty sure the exampleis wrong again. It should be changes and not change.
when I send 'change' I get exceptions.InvalidPathError
Alsp the Json itself is wrong as double quotes are needed.

When I send the right one

{"req": "startConsuming", "options": {},"path" : ["buildsets"]}

I get:

2015-03-17 14:27:23+0000 [HTTPChannel,20,10.50.13.16] FRAME {"req":
"startConsuming", "options": {},"path" : ["buildsets"]}
2015-03-17 14:27:23+0000 [HTTPChannel,20,10.50.13.16] Unhandled Error
        Traceback (most recent call last):
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/python/log.py",
line 88, in callWithLogger
            return callWithContext({"system": lp}, func, *args, **kw)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/python/log.py",
line 73, in callWithContext
            return context.call({ILogContext: newCtx}, func, *args, **kw)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/python/context.py",
line 118, in callWithContext
            return self.currentContext().callWithContext(ctx, func, *args,
**kw)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/python/context.py",
line 81, in callWithContext
            return func(*args,**kw)
        --- <exception caught here> ---
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/internet/posixbase.py",
line 614, in _doReadOrWrite
            why = selectable.doRead()
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/internet/tcp.py",
line 215, in doRead
            return self._dataReceived(data)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/internet/tcp.py",
line 221, in _dataReceived
            rval = self.protocol.dataReceived(data)
          File
"/home/xxxxxxxxxxxx/buildbot-work/src/master/buildbot/www/websocket.py",
line 314, in dataReceived
            self.parseFrames()
          File
"/home/xxxxxxxxxxxx/buildbot-work/src/master/buildbot/www/websocket.py",
line 282, in parseFrames
            ProtocolWrapper.dataReceived(self, data)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/protocols/policies.py",
line 120, in dataReceived
            self.wrappedProtocol.dataReceived(data)
          File
"/home/xxxxxxxxxxxx/buildbot-work/src/master/buildbot/www/ws.py", line 52,
in dataReceived
            d.addErrback("while starting consumption")
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/internet/defer.py",
line 318, in addErrback
            errbackKeywords=kw)
          File
"/home/xxxxxxxxxxxx/buildbot-work/sandbox/local/lib/python2.7/site-packages/twisted/internet/defer.py",
line 290, in addCallbacks
            assert errback == None or callable(errback)
        exceptions.AssertionError:

An other issue to open? Thinking about switching back to 8 :)


On Tue, Mar 17, 2015 at 3:14 PM, Francesco Di Mizio <
francescodimizio at gmail.com> wrote:

> Thanks. I was also trying to use the websocket. I can connect ok.
>
> When subscribing with
>
> {'req': 'startConsuming', 'options': {}, 'path': ['change']}
>
> what does change look like? Could I get a working example? Then I could
> also update the docs with it.
>
> Francesco
>
>
>
> On Tue, Mar 17, 2015 at 2:42 AM, Dustin J. Mitchell <dustin at v.igoro.us>
> wrote:
>
>> That's not currently supported.  However, I just learned about
>> http://goessner.net/articles/JsonPath/ which may be a way to implement
>> this.
>>
>> Dustin
>>
>> On Mon, Mar 16, 2015 at 12:49 PM, Francesco Di Mizio
>> <francescodimizio at gmail.com> wrote:
>> > As an example, consider the sourcestamps endpoint.
>> >
>> > When accessed, it returns sourcestamps that may optionally have a patch
>> > filled with its own fields as well. Something like
>> >
>> > {
>> >       "branch": "main",
>> >       "codebase": "",
>> >       "created_at": 1426521061,
>> >       "patch": {
>> >         "author": "myself",
>> >         "body": "xxxxxxxxxxxHuge valuexxxxxxxxxx",
>> >         "comment": "patch for shelf 110179",
>> >         "level": 1,
>> >         "patchid": 29,
>> >         "subdir": ""
>> >       },
>> >
>> >
>> > Can I get the sourcestamps that only match a criteria on any of the
>> patche's
>> > value?
>> > Been checking the answer in the code without much luck.
>> >
>> > Cheers,
>> >  Francesco
>> >
>> >
>> ------------------------------------------------------------------------------
>> > Dive into the World of Parallel Programming The Go Parallel Website,
>> > sponsored
>> > by Intel and developed in partnership with Slashdot Media, is your hub
>> for
>> > all
>> > things parallel software development, from weekly thought leadership
>> blogs
>> > to
>> > news, videos, case studies, tutorials and more. Take a look and join the
>> > conversation now. http://goparallel.sourceforge.net/
>> > _______________________________________________
>> > Buildbot-devel mailing list
>> > Buildbot-devel at lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/buildbot-devel
>> >
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://buildbot.net/pipermail/devel/attachments/20150317/450307f6/attachment.html>


More information about the devel mailing list