Added -R option for PIT CLI.
This commit is contained in:
parent
c01eaa0255
commit
0441f3c510
@ -4,8 +4,10 @@ FileIssue is not formatting output in the same way it parses input.
|
||||
`FileIssue.formatIssue(Issue)` introduces at least one extra line to the end
|
||||
of the issue body compared to what is parsed in using the PegParser.
|
||||
|
||||
|
||||
----
|
||||
|
||||
======== ===================
|
||||
Created: 2011-12-18T22:53:45
|
||||
======== ===================
|
||||
========= ===================
|
||||
Created : 2011-12-18T22:53:45
|
||||
Resolved: 2011-12-19T16:09:50
|
||||
========= ===================
|
@ -11,6 +11,10 @@
|
||||
<echo message="GROOVY_HOME: ${env.GROOVY_HOME}"/>
|
||||
</target>
|
||||
|
||||
<target name="clean-all" depends="clean">
|
||||
<delete dir="${release.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="release" depends="build">
|
||||
<mkdir dir="${release.dir}/lib"/>
|
||||
<copy file="${build.dir}/${name}-${version}.${build.number}.jar"
|
||||
|
@ -1,11 +1,11 @@
|
||||
#Sun, 11 Dec 2011 21:03:38 -0600
|
||||
#Mon, 19 Dec 2011 16:07:10 -0600
|
||||
#Sat Apr 24 17:08:00 CDT 2010
|
||||
build.dir=build
|
||||
src.dir=src
|
||||
lib.shared.dir=../shared-libs
|
||||
test.dir=test
|
||||
build.number=3
|
||||
version=3.2.3
|
||||
version=3.3.0
|
||||
name=libpit
|
||||
lib.dir=lib
|
||||
lib.local=true
|
||||
|
@ -20,6 +20,10 @@
|
||||
</fail>
|
||||
</target>
|
||||
|
||||
<target name="clean-all">
|
||||
<delete dir="${release.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="lib">
|
||||
<copy todir="${build.dir}/lib/compile/jar"
|
||||
file="${basedir}/../libpit/release/libpit-${version}.jar"/>
|
||||
|
@ -1,9 +1,9 @@
|
||||
#Sun, 11 Dec 2011 21:04:03 -0600
|
||||
#Mon, 19 Dec 2011 16:07:16 -0600
|
||||
build.dir=build
|
||||
src.dir=src
|
||||
build.jar=pit-cli-${application.version}.${build.number}.jar
|
||||
build.number=2
|
||||
version=3.2.3
|
||||
build.number=3
|
||||
version=3.3.0
|
||||
name=pit-cli
|
||||
lib.dir=lib
|
||||
lib.local=true
|
||||
|
@ -13,8 +13,7 @@ import static java.lang.Math.min
|
||||
def cli = new CliBuilder(usage: 'pit-cli [options]')
|
||||
cli.h(longOpt: 'help', 'Show help information.')
|
||||
cli.v(longOpt: 'verbose', 'Show verbose task information')
|
||||
cli.l(longOpt: 'list', 'List issues. Unless otherwise specified it lists all '
|
||||
+ 'sub projects and all unclosed issue categories.')
|
||||
cli.l(longOpt: 'list', 'List issues in the current project.')
|
||||
cli.i(argName: 'id', longOpt: 'id', args: 1,
|
||||
'Filter issues by id. Accepts a comma-delimited list.')
|
||||
cli.c(argName: 'category', longOpt: 'category', args: 1,
|
||||
@ -29,6 +28,7 @@ cli.p(argName: 'priority', longOpt: 'priority', args: 1,
|
||||
cli.r(argName: 'project', longOpt: 'project', args: 1,
|
||||
'Filter issues by project (relative to the current directory). Accepts a '
|
||||
+ 'comma-delimited list.')
|
||||
cli.R(longOpt: 'recursive', 'Include subprojects.')
|
||||
cli.e(argName: 'extended-property', args: 1, 'Filter for issues by extended ' +
|
||||
'property. Format is "-e <propname>=<propvalue>".')
|
||||
/*cli.s(longOpt: 'show-subprojects',
|
||||
@ -83,7 +83,7 @@ cli._(longOpt: 'version', 'Display PIT version information.')
|
||||
// ======== Parse CLI Options ======== //
|
||||
// =================================== //
|
||||
|
||||
def VERSION = "3.2.3"
|
||||
def VERSION = "3.3.0"
|
||||
def opts = cli.parse(args)
|
||||
def issuedb = [:]
|
||||
def workingDir = new File('.')
|
||||
@ -260,8 +260,10 @@ if (opts.l) {
|
||||
|
||||
// print all the issues in the root of this db
|
||||
issuedb.eachIssue(filter) { printIssue(it, "") }
|
||||
// print all projects
|
||||
issuedb.eachProject(filter) { printProject(it, "") } }
|
||||
|
||||
if (opts.R) {
|
||||
// print all projects
|
||||
issuedb.eachProject(filter) { printProject(it, "") }} }
|
||||
|
||||
// daily list second
|
||||
else if (opts.D) {
|
||||
@ -294,7 +296,11 @@ else if (opts.D) {
|
||||
if (!opts.o) { filter.issueSorter = [ {it.due}, {it.priority}, {it.id} ] }
|
||||
|
||||
// Get our issues
|
||||
def allIssues = issuedb.getAllIssues(filter)
|
||||
def allIssues = opts.R ?
|
||||
// If -R passed, get all issues, including subprojects.
|
||||
issuedb.getAllIssues(filter) :
|
||||
// Otherwise, just use the issues for this project.
|
||||
issuedb.issues.values().findAll { filter ? filter.accept(it) : true }
|
||||
|
||||
// Set up our time interval.
|
||||
def today = new DateMidnight()
|
||||
@ -430,11 +436,16 @@ else if (assignOpts.size() > 0) {
|
||||
case Status.REJECTED: assignOpts.rejected = new DateTime(); break
|
||||
default: break }}
|
||||
|
||||
issuedb.walkProject(filter) { issue ->
|
||||
def processIssue = { issue ->
|
||||
println issue
|
||||
assignOpts.each { propName, value ->
|
||||
issue[propName] = value
|
||||
def formattedValue = ExtendedPropertyHelp.format(value)
|
||||
println " set ${propName} to ${formattedValue}" } }}
|
||||
|
||||
println " set ${propName} to ${formattedValue}" } }
|
||||
|
||||
if (opts.R) { issuedb.walkProject(filter, processIssue) }
|
||||
else {
|
||||
issuedb.issues.values()
|
||||
.findAll { filter ? filter.accept(it) : true }
|
||||
.each(processIssue) }}
|
||||
else { cli.usage(); return -1 }}
|
||||
|
Loading…
x
Reference in New Issue
Block a user