IN-147: Add attempts support to run-hooks command
Change-Id: Ic6c8cb42581b0812915e0581934a222e7f0fe39e
diff --git a/cmd/jiri/run_hooks.go b/cmd/jiri/run_hooks.go
index d537957..41b4e23 100644
--- a/cmd/jiri/run_hooks.go
+++ b/cmd/jiri/run_hooks.go
@@ -14,6 +14,7 @@
var runHooksFlags struct {
localManifest bool
hookTimeout uint
+ attempts uint
}
var cmdRunHooks = &cmdline.Command{
@@ -30,6 +31,7 @@
tool.InitializeProjectFlags(&cmdRunHooks.Flags)
cmdRunHooks.Flags.BoolVar(&runHooksFlags.localManifest, "local-manifest", false, "Use local checked out manifest.")
cmdRunHooks.Flags.UintVar(&runHooksFlags.hookTimeout, "hook-timeout", project.DefaultHookTimeout, "Timeout in minutes for running the hooks operation.")
+ cmdRunHooks.Flags.UintVar(&runHooksFlags.attempts, "attempts", 1, "Number of attempts before failing.")
}
func runHooks(jirix *jiri.X, args []string) error {
@@ -37,6 +39,10 @@
if err != nil {
return err
}
+ if runHooksFlags.attempts < 1 {
+ return jirix.UsageErrorf("Number of attempts should be >= 1")
+ }
+ jirix.Attempts = runHooksFlags.attempts
// Get hooks.
_, hooks, err := project.LoadManifestFile(jirix, jirix.JiriManifestFile(), localProjects, runHooksFlags.localManifest)