[users at bb.net] buildbot-data issue

Pierre Tardy tardyp at gmail.com
Fri Nov 6 20:31:27 UTC 2015


Looks like a plan!

Le ven. 6 nov. 2015 21:29, Greg MacDonald <gmacdonald at trionworlds.com> a
écrit :

> Hi Pierre,
>
>
>
> Thanks for illuminating things; I’ll definitely take your suggestions. The
> possible multi-master path to ensure responsiveness is just what I need. So
> now the plan is to take a step back and learn the webstack and coffeescript
> and go from there with extending the stock web page. Thx!
>
>
>
> -Greg
>
>
>
> *From:* Pierre Tardy [mailto:tardyp at gmail.com]
> *Sent:* Friday, November 06, 2015 4:24 AM
>
>
> *To:* Greg MacDonald; users at buildbot.net
> *Subject:* Re: [users at bb.net] buildbot-data issue
>
>
>
> Hi Greg,
>
> With angularJS, the server that serves the javascript files is not very
> loaded, and contributes slightly in the responsiveness of the UI.
>
> The server that serves the REST api is however important for
> responsiveness.
>
> If I understand the setup you want to do, you are not addressing the
> problem of REST api responsiveness.
>
>
>
> However, with buildbot nine multi-master design, you can create a master
> which only serves the UI and the REST api, and has no slave connected, and
> thus less source of reactor hangs.
>
>
>
> Multi master is implemented in b2 via the wamp message queue, and need a
> crossbar.io router to synchronise the masters
>
> http://docs.buildbot.net/latest/manual/cfg-global.html#wamp
>
>
>
> I would recommend to keep that in mind, and only implement multimaster if
> it is needed as you scale up.
>
> It is the power of buildbot, you can start small, and know that the system
> is designed to scale later. You will be able to keep the same
> configuration, and enable the scalability features.
>
>
>
>
>
> As for the details of the data_module, it is written so that functions
> like getBuilds, loadBuilds, etc are automatically generated from the spec:
>
>
> https://github.com/buildbot/buildbot/blob/master/www/data_module/src/specification.constant.coffee
>
>
>
> So you will not find it in the source code.
>
> I would recommend if you want to hack on the UI to spend a few hours
> learning http://coffeescript.org/ . It helps a lot for writing needed
> asynchronous code.
>
> The equivalent javascript code is much more verbose, even if in 2015 we
> would have chosen ES6, which is the next standard for javascript, and has
> all the important syntax sugar features as coffee script.
>
>
>
> Regards,
>
>
>
> Le jeu. 5 nov. 2015 à 22:45, Greg MacDonald <gmacdonald at trionworlds.com>
> a écrit :
>
> I wanted to ensure the web UI’s responsiveness by keeping it on another
> machine. Our home grown solution has responsiveness problems that people
> have complained about (mostly from poorly written mysql queries I haven’t
> had time to fix). And the stock buildbot web page hangs on occasion
> (0.9.0b2), probably because of a bug and not contention but either way
> eliminating the possibility could save me some time if it happens to come
> up later. (We could use a team of build engineers, but it’s just me so I’m
> shooting for max flexibility and stability.) No hard reason though other
> than a little paranoid insurance. If it’s cheap enough to do I’d still like
> to try. I’ve already got the CORS issue sorted out for the REST API. Do you
> remember where those url’s are off the top of your head?
>
>
>
> BTW, has the code for data service been minified? I can’t seem to search
> for the getBuilds method. I’m new to all this (everything but python) and
> examples are the fastest way for me to catch up. It would’ve been helpful
> for me if the code examples were in javascript instead of coffee script,
> which I don’t know about.
>
>
>
> Thx again.
>
>
>
> -Greg
>
>
>
> *From:* Pierre Tardy [mailto:tardyp at gmail.com]
> *Sent:* Thursday, November 05, 2015 12:59 PM
>
>
> *To:* Greg MacDonald; users at buildbot.net
> *Subject:* Re: [users at bb.net] buildbot-data issue
>
>
>
> Greg,
>
>
>
> Indeed, it is not designed to be run from another machine. I think you may
> workaround the autoconfiguration for the ws and api urls, but then you will
> get CORS issues.
>
>
>
>
>
> I would be interrested to understand the use cases you are trying to
> achieve by putting a UI separately from the master
>
>
>
> Pierre
>
>
>
> Le jeu. 5 nov. 2015 à 21:41, Greg MacDonald <gmacdonald at trionworlds.com>
> a écrit :
>
> I had a typo and now I’m not getting the websocket error. But I still need
> to know how to point the web page at the master buildbot machine, or if
> it’s even possible to run them on different machines.
>
>
>
> -Greg
>
> *From:* users [mailto:users-bounces at buildbot.net] *On Behalf Of *Greg
> MacDonald
> *Sent:* Thursday, November 05, 2015 12:19 PM
> *To:* Pierre Tardy; users at buildbot.net
> *Subject:* Re: [users at bb.net] buildbot-data issue
>
>
>
> That got me a bit further, now I’m getting this:
>
>
>
> WebSocket connection to
> 'ws://localhost:63342/angular_sandbox/app/index.htmlws' failed: Error
> during WebSocket handshake: Unexpected response code: 404
>
>
>
> I’m guessing this is because it doesn’t know where the buildbot master is
> and it’s on another machine. Where does that get specified?
>
>
>
> -Greg
>
>
>
> *From:* Greg MacDonald
> *Sent:* Thursday, November 05, 2015 11:27 AM
> *To:* 'Pierre Tardy'; users at buildbot.net
> *Subject:* RE: [users at bb.net] buildbot-data issue
>
>
>
> Thanks a lot! I just couldn’t see it for some reason. J
>
>
>
> *From:* Pierre Tardy [mailto:tardyp at gmail.com <tardyp at gmail.com>]
> *Sent:* Wednesday, November 04, 2015 11:53 PM
> *To:* Greg MacDonald; users at buildbot.net
> *Subject:* Re: [users at bb.net] buildbot-data issue
>
>
>
> Hi greg,
>
>
>
> as per http://docs.buildbot.net/latest/developer/www.html#dataservice
>
> What you need to inject is the dataService. the module is called bbData
> (what you need to depend in you angular,module), and the service is
> dataService.
>
>
>
> so you should replace this line
>
>             controller: ['$scope', '$attrs', 'bbData', function($scope,
> $attrs, dataService) {
>
> by
>
>             controller: ['$scope', '$attrs', '*dataService*',
> function($scope, $attrs, dataService) {
>
> Cheers
>
> Pierre
>
>
>
>
>
> Le jeu. 5 nov. 2015 à 03:15, Greg MacDonald <gmacdonald at trionworlds.com>
> a écrit :
>
> Hi Everyone,
>
>
>
> I’m trying to use the buildbot-data angular service (for 0.9.0b2) for a
> separate web ui and I’m having problems getting started. Bower installs
> buildbot-data fine, but I get an error when I try to use it:
>
>
>
> Error: [$injector:unpr] Unknown provider: bbDataProvider <- bbData
>
>
>
>
>
> Here’s the code that tries to use it. It’s not getting past the dependency
> injection.
>
>
>
> angular.module('myApp.buildStatus', ['bbData', 'bbData'])
>
>     .directive("buildStatus", function() {
>
>         return {
>
>             restrict: "E",
>
>             replace: true,
>
>             scope: {
>
>                 name: '@',
>
>                 builder: '@',
>
>                 status: '='
>
>             },
>
>             templateUrl: 'directives/build_status/build_status.html',
>
>             controller: ['$scope', '$attrs', 'bbData', function($scope,
> $attrs, dataService) {
>
>                 $scope.builder = $attrs.builder;
>
>                 $scope.name = $attrs.name;
>
>                 $scope.status = 'unknown';
>
>
>
>             }]
>
>         }
>
>     });
>
>
>
>
>
> App dependency works:
>
>
>
> angular.module('myApp', [
>
>     'bbData',
>
>     'ngMaterial',
>
>     'ngRoute',
>
>     'myApp.view1',
>
>     'myApp.view2',
>
>     'myApp.version',
>
>     'myApp.buildStatus'
>
> ]).
>
> config(['$routeProvider', '$httpProvider', function($routeProvider,
> $httpProvider) {
>
>     $routeProvider.otherwise({redirectTo: '/view1'});
>
>     $httpProvider.defaults.useXDomain = true;
>
>     delete $httpProvider.defaults.headers.common['X-Requested-With'];
>
> }]);
>
>
>
>
>
> And It’s being included like this in index.html
>
>
>
>   <script src="bower_components/buildbot-data/dist/scripts.js"></script>
>
>
>
> I’m not sure where to go from here. Any help is greatly appreciated. Thx!
> J
>
>
>
> -Greg
>
>
>
> _______________________________________________
> users mailing list
> users at buildbot.net
> https://lists.buildbot.net/mailman/listinfo/users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.buildbot.net/pipermail/users/attachments/20151106/28feb22f/attachment.html>


More information about the users mailing list