entrypoint

package
v0.50.5 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2023 License: Apache-2.0 Imports: 16 Imported by: 11

Documentation

Index

Constants

View Source
const (
	ContinueOnError = "continue"
	FailOnError     = "stopAndFail"
)

RFC3339 with millisecond

Variables

This section is empty.

Functions

This section is empty.

Types

type Entrypointer

type Entrypointer struct {
	// Command is the original specified command and args.
	Command []string

	// WaitFiles is the set of files to wait for. If empty, execution
	// begins immediately.
	WaitFiles []string
	// WaitFileContent indicates the WaitFile should have non-zero size
	// before continuing with execution.
	WaitFileContent bool
	// PostFile is the file to write when complete. If not specified, no
	// file is written.
	PostFile string

	// Termination path is the path of a file to write the starting time of this endpopint
	TerminationPath string

	// Waiter encapsulates waiting for files to exist.
	Waiter Waiter
	// Runner encapsulates running commands.
	Runner Runner
	// PostWriter encapsulates writing files when complete.
	PostWriter PostWriter

	// Results is the set of files that might contain task results
	Results []string
	// Timeout is an optional user-specified duration within which the Step must complete
	Timeout *time.Duration
	// BreakpointOnFailure helps determine if entrypoint execution needs to adapt debugging requirements
	BreakpointOnFailure bool
	// OnError defines exiting behavior of the entrypoint
	// set it to "stopAndFail" to indicate the entrypoint to exit the taskRun if the container exits with non zero exit code
	// set it to "continue" to indicate the entrypoint to continue executing the rest of the steps irrespective of the container exit code
	OnError string
	// StepMetadataDir is the directory for a step where the step related metadata can be stored
	StepMetadataDir string
	// SpireWorkloadAPI connects to spire and does obtains SVID based on taskrun
	SpireWorkloadAPI spire.EntrypointerAPIClient
	// ResultsDirectory is the directory to find results, defaults to pipeline.DefaultResultPath
	ResultsDirectory string
	// ResultExtractionMethod is the method using which the controller extracts the results from the task pod.
	ResultExtractionMethod string
}

Entrypointer holds fields for running commands with redirected entrypoints.

func (Entrypointer) BreakpointExitCode added in v0.26.0

func (e Entrypointer) BreakpointExitCode(breakpointExitPostFile string) (int, error)

BreakpointExitCode reads the post file and returns the exit code it contains

func (Entrypointer) Go

func (e Entrypointer) Go() error

Go optionally waits for a file, runs the command, and writes a post file.

func (Entrypointer) WriteExitCodeFile added in v0.27.0

func (e Entrypointer) WriteExitCodeFile(stepPath, content string)

WriteExitCodeFile write the exitCodeFile

func (Entrypointer) WritePostFile added in v0.2.0

func (e Entrypointer) WritePostFile(postFile string, err error)

WritePostFile write the postfile

type PostWriter

type PostWriter interface {
	// Write writes to the path when complete.
	Write(file, content string)
}

PostWriter encapsulates writing a file when complete.

type Runner

type Runner interface {
	Run(ctx context.Context, args ...string) error
}

Runner encapsulates running commands.

type Waiter

type Waiter interface {
	// Wait blocks until the specified file exists.
	Wait(file string, expectContent bool, breakpointOnFailure bool) error
}

Waiter encapsulates waiting for files to exist.

Jump to

Keyboard shortcuts

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