Skip to content
2 changes: 1 addition & 1 deletion tools/prow-job-executor/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ require (
github.com/go-logr/logr v1.4.3
github.com/google/uuid v1.6.0
github.com/spf13/cobra v1.10.2
google.golang.org/protobuf v1.36.11
k8s.io/apimachinery v0.35.3
sigs.k8s.io/prow v0.0.0-20251030184004-0e4d5be4200d
sigs.k8s.io/yaml v1.6.0
Expand Down Expand Up @@ -170,7 +171,6 @@ require (
google.golang.org/genproto/googleapis/api v0.0.0-20260128011058-8636f8732409 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260128011058-8636f8732409 // indirect
google.golang.org/grpc v1.78.0 // indirect
google.golang.org/protobuf v1.36.11 // indirect
gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect
gopkg.in/fsnotify.v1 v1.4.7 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
Expand Down
9 changes: 7 additions & 2 deletions tools/prow-job-executor/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@
BaseRef: defaultBaseRef,
Org: defaultOrg,
Repo: defaultRepo,
AbortOnCancel: true,
}
}

Expand All @@ -84,6 +85,7 @@
cmd.Flags().StringVar(&o.ProwURL, "prow-url", o.ProwURL, "Prow API URL for job status monitoring")
cmd.Flags().BoolVar(&o.DryRun, "dry-run", o.DryRun, "Print which job would be started, but do not start one.")
cmd.Flags().BoolVar(&o.GatePromotion, "gate-promotion", o.GatePromotion, "Exit with an error code if the job fails.")
cmd.Flags().BoolVar(&o.AbortOnCancel, "abort-on-cancel", o.AbortOnCancel, "Abort the running Prow job if the executor is cancelled (e.g. the rollout is cancelled and the process receives SIGTERM).")
cmd.Flags().StringVar(&o.BaseSha, "base-sha", o.BaseSha, "Git commit SHA to test against. When set, the job is triggered as a postsubmit with this specific commit instead of HEAD.")
cmd.Flags().StringVar(&o.BaseRef, "base-ref", o.BaseRef, "Git base ref (branch) for the postsubmit job (requires --base-sha)")
cmd.Flags().StringVar(&o.Org, "org", o.Org, "GitHub org for the postsubmit job (requires --base-sha)")
Expand Down Expand Up @@ -123,6 +125,7 @@
ProwURL string
DryRun bool
GatePromotion bool
AbortOnCancel bool

Check failure on line 128 in tools/prow-job-executor/options.go

View workflow job for this annotation

GitHub Actions / verify

File is not properly formatted (gci)

// Git ref options for postsubmit execution pinned to a specific commit.
// When BaseSha is set, the job is triggered as a postsubmit instead of a periodic.
Expand Down Expand Up @@ -163,6 +166,7 @@
ProwURL string
DryRun bool
GatePromotion bool
AbortOnCancel bool

// Git ref options for postsubmit execution
BaseSha string
Expand Down Expand Up @@ -295,6 +299,7 @@
ProwURL: o.ProwURL,
DryRun: o.DryRun,
GatePromotion: o.GatePromotion,
AbortOnCancel: o.AbortOnCancel,
BaseSha: o.BaseSha,
BaseRef: o.BaseRef,
Org: o.Org,
Expand All @@ -313,7 +318,7 @@
client := prowjob.NewClient(o.ProwToken, o.GangwayURL, o.ProwURL)

// Create job monitor
monitor := prowjob.NewMonitor(client, o.PollInterval, o.Timeout, o.DryRun, o.GatePromotion)
monitor := prowjob.NewMonitor(client, o.PollInterval, o.Timeout, o.DryRun, o.GatePromotion, o.AbortOnCancel)

// Prepare environment variables, including the region
envs := make(map[string]string)
Expand Down Expand Up @@ -516,7 +521,7 @@
func (o *MonitorOptions) Monitor(ctx context.Context, logger logr.Logger) error {
// Create Prow client and monitor
client := prowjob.NewClient(o.ProwToken, o.GangwayURL, o.ProwURL)
monitor := prowjob.NewMonitor(client, o.PollInterval, o.Timeout, false, false)
monitor := prowjob.NewMonitor(client, o.PollInterval, o.Timeout, false, false, false)

// Monitor existing job using shared polling logic
logger.Info("Starting to monitor existing job", "jobExecutionID", o.JobExecutionID)
Expand Down
Loading
Loading