[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