Help us shape the future of Go! Take the 2026 Go Developer Survey

run

package
v1.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package run contains business logic for run-level operations.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Approve added in v1.8.0

func Approve(ctx context.Context, client *apiclient.Client, a PendingApproval) error

Approve approves a pending approval job.

func Cancel

func Cancel(ctx context.Context, client *apiclient.Client, runID uuid.UUID) error

Cancel cancels a run by cancelling each of its active workflows. The CircleCI API has no run-level cancel endpoint; cancellation operates at the workflow level via POST /api/v3/workflows/{id}/cancel.

Returns ErrNothingToCancel when the run exists but all workflows are already in a terminal state.

Types

type ErrNothingToCancel

type ErrNothingToCancel struct {
	RunID uuid.UUID
}

ErrNothingToCancel is returned by Cancel when the run exists but all of its workflows are already in a terminal state.

func (*ErrNothingToCancel) Error

func (e *ErrNothingToCancel) Error() string

type PendingApproval added in v1.8.0

type PendingApproval struct {
	WorkflowID   uuid.UUID
	WorkflowName string
	JobID        uuid.UUID
	JobName      string
}

PendingApproval is an approval job that is on hold, waiting to be approved.

func MatchApprovals added in v1.8.0

func MatchApprovals(pending []PendingApproval, job string) []PendingApproval

MatchApprovals returns the pending approvals that job identifies, by job name or job UUID. A name can match more than one approval when two workflows in the run have an approval job of the same name.

func PendingApprovals added in v1.8.0

func PendingApprovals(ctx context.Context, client *apiclient.Client, runID uuid.UUID) ([]PendingApproval, error)

PendingApprovals returns the approval jobs in a run that are on hold, in workflow order. Ended workflows are skipped: nothing in them can be approved.

The V3 jobs API reports an approval job that is waiting for approval as phase "started". One whose required jobs have not finished yet is not started, and cannot be approved until they have.

func (PendingApproval) Label added in v1.8.0

func (a PendingApproval) Label() string

Label names the approval for prompts and messages, e.g. "hold (workflow deploy)". Job names are only unique within a workflow, so the workflow is always included.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL