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