Ticket #2214 (closed enhancement: fixed)

Opened 15 months ago

Last modified 9 months ago

BuildStep's for multi-repo should include sourcebase in the names

Reported by: jaredgrubb Owned by: jaredgrubb
Priority: major Milestone: 0.8.7
Version: 0.8.5 Keywords: projrepo
Cc:

Description

As per discussion for one of the multi-repo pull requests (starting here:  https://github.com/buildbot/buildbot/pull/318#issuecomment-3983180)

Basically, when adding in various source, build, test steps for multiple repositories, the names of the steps end up being ambigous. For example, you get things like "svn","svn_1", etc.

Would be great if the Steps automatically mixed in a tag (probably the codebase?) into the name and/or the description(Done) fields.

Change History

comment:1 Changed 15 months ago by dustin

  • Keywords projrepo added
  • Milestone changed from undecided to 0.8.+

Thanks for the bug!

comment:2 Changed 15 months ago by dustin

  • Milestone changed from 0.8.+ to 0.8.7

comment:3 Changed 15 months ago by jaredgrubb

My current suggestion is that every BuildStep? should take a sourcestamp parameter to indicate what it applies to, and the Status classes (like MailNotifier? or Waterfall) should mix that in somehow. What do you think?

comment:4 Changed 15 months ago by dustin

I think that source steps' default names (and descriptions) should include the codebase. However, I don't think that other steps should try to do this automatically. If users want to set these, they can set an explicit name=.

comment:5 Changed 15 months ago by jaredgrubb

I should have said "a BuildStep? can take a codebase" rather than should... I've experimented with this a bit, and here's my observations:

  • adding it to the name is annoying because you often want the original name of the step as well ... so your steps look like Build(name="build Foo"), Git(name="git Foo"), etc. You have to repeat yourself or do something very verbose like Git(name=Git.name+" Foo") which is weird.
  • adding it to the name works well with the Build Status page ("git Foo")
  • adding it to the description makes the waterfall work nicely ("building Foo", "updating Bar")
  • but adding to *both* name and waterfall makes the Build Status page noisy (you end up with "Git Foo: building Foo")

comment:6 Changed 15 months ago by dustin

I think we're talking past one another, so perhaps it's time to be explicit with code?

comment:7 Changed 15 months ago by jaredgrubb

Per discussion with Dustin, we converged on this for a first try:

  • SourceStep? : add the codebase to the name and description
  • BuildStep? in general : add a new optional parameter ("descriptionSuffix"?) to add to the description
Last edited 15 months ago by jaredgrubb (previous) (diff)

comment:8 Changed 15 months ago by jaredgrubb

Have this implemented; will post a pull request shortly.

comment:9 Changed 14 months ago by jaredgrubb

  • Owner set to jaredgrubb
  • Status changed from new to assigned

comment:10 Changed 13 months ago by Jared Grubb

  • Status changed from assigned to closed
  • Resolution set to fixed

Fixes #2214: Add 'codebase' to Source base; add 'descriptionSuffix' to Source and Shell

Changeset: 7ea9f954c77dbb9ae48ba49ed07d94c453f659c4

comment:11 Changed 13 months ago by Dustin J. Mitchell

Merge branch 'descriptionSuffix' of  git://github.com/jaredgrubb/buildbot

comment:12 Changed 13 months ago by Jared Grubb

Fixes #2214: Add 'codebase' to Source base; add 'descriptionSuffix' to Source and Shell

Changeset: 7ea9f954c77dbb9ae48ba49ed07d94c453f659c4

comment:13 Changed 13 months ago by Dustin J. Mitchell

Merge branch 'descriptionSuffix' of  git://github.com/jaredgrubb/buildbot

comment:14 Changed 13 months ago by Dustin J. Mitchell

Merge branch 'master' into nine

  • master: (78 commits) gotAllRevisions now returns an empty dict when the property is not set typo use empty dictionairy if no got_revisions found in transposed gridview filter out builds with more than 1 sourcestamp. Fixed transposed grid in gridview filter out builds with more than 1 sourcestamp Make sure category is properly updated when loading buildstatus from pickle. remove remaining deferredGenerator uses from buildmaster fix now-incorrect warning for an un-upgraded master release notes for multirepo Filter out all builds with more than one sourcestamp Support for multiple sourcestamps in build status Fixes #2214: Add 'codebase' to Source base; add 'descriptionSuffix' to Source and Shell fix pyflakes Corrected typo in ForceScheduler? example. Fixes #2294. Change fakesource according to real SourceStamp? always return new (cloned) objects if absolute sourcestamps have been requested Assign ?? to revision if unknown Add clone method to sourcestamp Include all sourcestamps as list of dicts in the build status dictionary. typo ...

Conflicts:

master/buildbot/schedulers/base.py master/buildbot/test/fake/fakedb.py master/buildbot/test/unit/test_status_mail.py master/docs/release-notes.rst

Changeset: 52f0e0cf2ddc5869e08d5698841b15d843935085

comment:15 Changed 9 months ago by Michael Thalmeier

ShellComnmand?: make description renderable

In commit 7ea9f954c77dbb9ae48ba49ed07d94c453f659c4:

Fixes #2214: Add 'codebase' to Source base; add 'descriptionSuffix' to Source and Shell

'description' and 'descriptionDone' got removed from renderables array of the ShellCommand? step. This patch makes using Properties in ShellCommand? descriptions working again.

Changeset: 3a6fbb5cdfbec5828af93ebbd4ed85fa8123e9e6

comment:16 Changed 9 months ago by Michael Thalmeier

ShellComnmand?: make description renderable

In commit 7ea9f954c77dbb9ae48ba49ed07d94c453f659c4:

Fixes #2214: Add 'codebase' to Source base; add 'descriptionSuffix' to Source and Shell

'description' and 'descriptionDone' got removed from renderables array of the ShellCommand? step. This patch makes using Properties in ShellCommand? descriptions working again.

Changeset: 3a6fbb5cdfbec5828af93ebbd4ed85fa8123e9e6

Note: See TracTickets for help on using tickets.