[Buildbot-devel] First impressions with 0.9.0b1
Bob Hood
bhood2 at comcast.net
Sun Jun 28 17:38:17 UTC 2015
Thank you for your efforts in discovering and documenting all of this,
Vitali. It will certainly help to make for a better release.
On 6/27/2015 10:00 PM, Vitali Lovich wrote:
> Here are my notes of the changes I encountered migrating to 0.9.0 from 0.8.12.
> TLDR: It can be a non-trivial amount of work to get the server to actually
> start. It can be even more non-trivial work to get builds to actually run
> properly.
> The UI currently is too much of a usability regression to migrate my
> existing user-base. Yes I could write my own but I have no guarantee that
> I’ll even be able to get to feature-parity with the old UI.
>
> *First Impression*
>
> * Beta packages might have issues (as raised in separate thread)
> o change hooks are missing
> o can’t seem to get buildbot-www to install properly via setup.py
> develop. Had to pip install it manually.
> * There should be a package that provides a default usable experience.
> o It’s a training issue but needing 3 or 4 other packages just to get
> a minimally usable system isn’t a great first experience (even
> though it was called out explicitly in the e-mail, it was not in the
> release notes).
> o Ideally some kind of single meta-package you could install to get
> the equivalent experience in 0.9 as 0.8. Potentially even install
> the slave too. Would also avoid any kind of “you need this package
> first” issues.
> * Took about *8 hours*to get a moderately complex 0.8.12 configuration to
> startup with 0.9.0. It was not particularly pleasant but it is do-able
> (mostly straightforward).
> o This is just to get it to start to the point where I can see the Web UI
> o In other words the server starts but I doubt that any builders can
> successfully build (i.e. I know at least 1 project fails to build).
> * Force schedulers are either broken or I can’t figure out how to use them.
> * Rebuild button is removed/missing from web UI.
> * Change-hook/gitlab processing change? Deleted branches are no longer
> ignored…
> * Some of migration notes are called out in release notes. Many are missing.
> o Release notes are long, talk about other things. Some notes are
> difficult to connect the dots to as the cause.
> o A lot of times things are mentioned as removed with no-to minimal
> discussion about how to replace them. The obvious one is how to
> migrate messageFormatter in MailNotifier.
> o An explicit migration guide may be needed depending on other
> people’s experiences
> * It’s possible to have 0.9 & 0.8.12 code mostly live side-by-side
> o Would be nice if there were an explicit buildbot.IS_NINE boolean in
> both 0.8 & 0.9
> o Usually possible to reverse engineer some kind of signal of whether
> running in 0.9
> o Doing this helps reduce the maintenance cost of migration; otherwise
> merge conflicts would be a PITA.
> * The UI, while pretty, has a lot of usability annoyances, regressions & bugs.
> o Don’t get me wrong. Lots of things are improved. In terms of
> deploying it to my users though it’s too premature.
> o Yes, I could probably re-write/modify the UI now that it’s much
> easier. I want to know however that there’s a reference UI that is
> minimally usable as a fallback.
> o The main one is that force schedulers don’t seem to work (could be
> something to do with my setup because the UI does appear in the
> reference page).
> o The UI locks up at random times. For some reason the Websocket
> connection randomly gets lost & then it looks like it then tries to
> reconnect to a lot of things (many that potentially seem irrelevant).
> o The sidebar scrolling in/out & resetting to this behavior is really
> annoying
>
> *Migration pain-points that can be mined from release notes*
>
> * MailNotifier moved to: *buildbot.reporters.mail*
> * messageFormatter argument to MailNotifier is gone. Replacement
> buildbot.status.message.MessageFormatter doesn’t appear to have any
> documentation.
> * Getting the status from the build/buildstep doesn’t actually return a
> populated object? Something like that.
> o Thankfully the non-status objects contained enough information for
> this not to be an issue (e.g. executedSteps in the process.build.Build)
>
> *Migration surprises*
>
> * ‘status’ key is not allowed in configuration - any appearance of it will
> cause startup to fail. No notes about where things are supposed to be.
> Had to go spelunking through the manual.
> o MailNotifier needs to be added to ‘services’ not ‘status’
> o PBChangeSource goes into ‘change_source’ not ‘status’
> o I’m sure there are others
> * GitLab web hook moved to *buildbot.www.hooks.gitlab* was
> *buildbot.status.web.hooks.gitlab* (normally probably wouldn’t care
> since these are normally accessed by name but my gitlab change-hook
> extends the built-in one).
> * mergeRequests option no longer understood by Builder
> * Had a doIf that performed an action if the previous step failed. It was
> doing build.getStatus() & looking for the matching step that way. Build
> now has executedSteps so was able to migrate.
> * BuildStep#describe is not allowed for new-style steps in 0.9 but is in
> 0.8.12
> * authz is gone with no apparent replacement. In other words, no way to
> allow certain actions or disallow others. Unclear if this is actually
> important.
>
> -Vitali
>
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
>
>
> _______________________________________________
> 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/20150628/1d8b1417/attachment.html>
More information about the devel
mailing list