Hi, thanks for the kind words. As the example went bigger and bigger, skelly suggested to test it and I moved it to the smoke tests to ensure that the example is always working.
Its referenced in the doc with the help of this line + a symlink from the smoke tests to the docs +.. literalinclude:: mydashboard.html The examples are here: https://github.com/tardyp/buildbot/blob/23ff8caa598a80ff3963ccbb5e87e8651acad881/smokes/mydashboard.py https://github.com/tardyp/buildbot/blob/23ff8caa598a80ff3963ccbb5e87e8651acad881/smokes/templates/mydashboard.html Hopefully the story will be easier when the PR will be merged, and 0.9.5 released. Pierre Le jeu. 16 mars 2017 à 20:11, Gelonida <[email protected]> a écrit : > Hi Pierre, > > > I cloned, checked out the branch, built master, worker and frontend and > built my first hello world bottle ap. > This is great!!! Exactly what will help me adding some specific views very > quickly. > > One small thing though. I thought, that I saw yesterday or this morning a > sample config file and a sample app somewhere in the doc. > Today I didn't find it anymore. > > After some searching / grepping I found the only documentation about > parameters in the file smokes/mydashboard.py, which was > sufficient for me to know how to hook in my wsgi app. > The file > master/docs/manual/customization.rst#writing-dashboards-with-flask-or-bottle > contains a section about implementing dashboard, but doesn't link to any > example snippet (In my opinion always the best way to 'quickly' learn) and > doesn't mention the params. > > > thanks again for the wsgi_dashboard > > > G > > > On 03/16/2017 09:23 AM, Gelonida wrote: > > Hi Pierre, > > > Thanks a lot. > Yesterday I pulled your PR, built it, but didn't have time to check. So I > repulled today, rebuilt and hope I have some spare time at work. > > This looks very interesting and should really simplify to implement small > uwsgi plugins. > > > > On 14/03/2017 18:25, Pierre Tardy wrote: > > Hi Gelonida, > > Here is a first version of the flash_dashboard plugin > https://github.com/buildbot/buildbot/pull/3041 > > there are still needs to be some polishing, but the main ideas are there. > > See documentation to get an idea on how to use it > > https://github.com/buildbot/buildbot/pull/3041/files#diff-eea13d1ebd483f573175b4da8762a6e5 > > Please let me know if this is the right level of abstraction for you. > > You can use requests to get the REST api, but you can also use > app.buildbot_api.dataGet to bypass the REST api layer (and the > authorization layer) > > Pierre > > On Tue, Mar 14, 2017 at 12:05 PM Gelonida <[email protected]> wrote: > > Hi Pierre, > > Thanks for your reply, > > In our context we don't need a real time dashboard (at least for the start) > > I think I will start with a server side created bottle or flask > implementation and play with angular at a later time. > The idea is to have a view quickly for some users and Angular views are > not quickly to develop if you don't have the habit. > I did not try with buildbot (and it's js dependencies), but often just > getting the node / grunt / gulp build environment up and > running can already be painful. So an attractive Angular web front end > only later. > > Do I already need a web-dev build environment for hooking up a single url > into the buildbot env or is there some plugin magic, > that will avoid this. > > > I'd appreciate a lot if you could point me to information of how to > integrate any url (static / server side) into the buildbot webif. > > If easier to integrate, then the dynamic web script could just yield some > JSON file but I'd be curious of how to integrate > some non Angular HTML. > > > My dynamic script could either yield something like: > <html> > <body> > <h1>all release branches<h1> > <form> > <select name = "branchgroups"> > <option value="all">all</option> > <option value="release">release</option> > <option value="develop">develop</option> > </select> > </form> > <table> > . . . . > </table> > </body> > </html> > > or just a json with something similar to: > { "title": "all release branches", > "header_row": [ "project", "branch", "builder", "builds"], > "rows" : [ > [ "pjt one", "rls/v1.0", "lint_results", [ {"buildid": 4, "status": > "pass"}, {"buildid": 3, "status": "pass"}, {"buildid": 1, "status": > "fail"}] ], > [ "pjt one", "rls/v1.0", "quick_unittests", [ {"buildid": 4, "status": > "pass"}, {"buildid": 3, "status": "pass"}, {"buildid": 1, "status": > "fail"}] ], > [ "pjt one", "rls/v2.0", "lint_results", [ {"buildid": 6, "status": > "fail"}, {"buildid": 5, "status": "pass"}, {"buildid": 2, "status": > "fail"}] ] > ] > } > > whatever is easier to integrate. > > > At the moment I start looking at the REST-API calls, and the amount of > calls, that I would need to implement such view. > On a first glance this seems quite costly. > > I'll follow up. > > > On 03/12/2017 05:48 PM, Pierre Tardy wrote: > > Question(s): > ---------------- > Did anyone already implement something similar? > > Well console view and waterfall views are such dashboards or showing the > builds in specific manner. > > > Does anyone have a similar issue? If yes how do you solve this problem? > What would be the easiest way to create such a page > > The easiest way if you know angularjs is to indeed write a UI plugin. > buildbot UI has been designed for this, and this is the only way you can > write a real time updated dashboard. > > > I'm not very good with web development and never tried to change the > buildbot web front end. > Would it be simpler to create a standalone page, which constructs this > contents with the help of the web api? > > Server side servers are indeed a bit easier. You could indeed create a > separate flask application that would access the REST api using > python-requests. > This can help you to write a dashboard to look exactly as you wish. > > I usually recommend to take the effort to learn angularJS and front end > development as I find it did unlock a lot of opportunities. > I do realize it is not practical for everybody, and we should have an > easier story for custom dashboard creation that does not require front end > development mastery. > > I will be happy to help reviewing your flask application, and will help > you integrate it as a dashboard in the main UI. I think it can work with > some JS magic to embed a flask application into a Buildbot UI plugin. > > Regards > Pierre > > > > >
_______________________________________________ users mailing list [email protected] https://lists.buildbot.net/mailman/listinfo/users
