Grokbase Groups Lucene dev May 2016
FAQ
: 1. I think if used this will become the de facto source of RM
: documentation, so it will have to be able to do a full listing of all
: steps, maybe also the steps that *aren’t* included too for the given
: release type, so that the RM can see/verify the full context.

wouldn't that just be a matter of reading the "original" JSON that's
commited into dev-tools (ie: not hte copy currently being worked through)

: 2. The JSON file shouldn’t be stored in the source tree; several steps
: look for/assure clean checkouts. Maybe a configurable location with a
: default uner /tmp/releases/X.Y.Z/ (already used by at least one release
: script now).

ok, sure ... i was suggesting it could be explicitly .gitignored, but i'm
not hung up on the details.

: 3. Some things can be safely done out of order, while others have
: prerequisites. Maybe the script could somehow make these dependencies
: visible? Skipping and out of order completion (and progress for some
: manual multi-step things) should be supported as well.

sure ... again: these seem like minor details to the boarder goal of
"script everything, including the checklist"

If this is a goal folks think make sense, then frankly scripting the
checklist itself seems like it should be something we worry about waaaay
down the road.

Starting with "add more scripts that echo the exact commands to
copy/paste based on the version# + RC# of the release" seems like where
the first big wins could come from...

Examples:

updateVersionNumbersOnAllAffectedBranches.py 6.2.0 ~/lucene/my-checkout
  1. looks at the list of branches/tags in ~/lucene/my-checkout
  2. echos the exact list of "git co", "addVersion.py",
     and "git commit" commands you should run based on 6.2.0 being
     a minor release
  3. warns you if any expected backcompat indexes are missing on
     any branches
  4. echos the "git push origin ..." command listing all affected
     branches
  5. if you run it again, after running some of the commands,
     only echos the commands that are still needed

tagAndPublish.py lucene-solr-6.2.0-RC2 DEADBEEF
  1. echos the exact tag command to run
  2. echos the exact svm mv && svn rm commands for the dist repo
     - including rm'ing RC0 and RC1 if they still exist
  3. echos the exact ant commands to publish to maven
  4. echos the instructions/url to close & release on maven central
  5. echos the "git push origin ..." command for the tag
  6. if you run it again, after running some of the commands,
     checks that the tag matches DEADBEEF, and only echos the commands
     that are still needed

etc...





-Hoss
http://www.lucidworks.com/

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 9 of 12 | next ›
Discussion Overview
groupdev @
categorieslucene
postedMay 28, '16 at 2:51p
activeJun 1, '16 at 11:38p
posts12
users6
websitelucene.apache.org

People

Translate

site design / logo © 2017 Grokbase