args

package
v0.13.1 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2023 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package args just holds the type definitions for pipeline / cmd arguments to avoid cyclic imports

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArgMap

type ArgMap map[string]string

func (*ArgMap) Get

func (a *ArgMap) Get(key string) (string, error)

func (*ArgMap) Set

func (a *ArgMap) Set(val string) error

func (*ArgMap) String

func (a *ArgMap) String() string

func (*ArgMap) Type

func (a *ArgMap) Type() string

type OptionalInt

type OptionalInt struct {
	Value int64
	Valid bool
}

func (*OptionalInt) Set

func (o *OptionalInt) Set(v string) error

func (*OptionalInt) String

func (o *OptionalInt) String() string

func (*OptionalInt) Type

func (o *OptionalInt) Type() string

type PipelineArgs

type PipelineArgs struct {
	Client string

	// Path is provided in every execution to the scribe run command,
	// and contians the user-supplied location of the scribe pipeline (or "." / "$PWD") by default.
	Path    string
	Version string

	// Step defines a specific step to run. Typically this is used in a generated third-party config
	// If Step is nil, then all steps are ran
	Step *int64

	// BuildID is a unique identifier typically assigned by a CI system.
	// In Dagger / CLI clients, this will likely be populated by a random UUID if not provided.
	BuildID string

	// CanStdinPrompt is true if the pipeline can prompt for absent arguments via stdin
	CanStdinPrompt bool

	// ArgMap is a map populated by arguments provided using the `-arg` flag.
	// Example usage: `-arg={key}={value}
	ArgMap ArgMap

	// LogLevel defines how detailed the output logs in the pipeline should be.
	// Possible options are [debug, info, warn, error].
	// The default value is warn.
	LogLevel logrus.Level

	// State is a URL where the build state is stored.
	// Examples:
	// * 'fs:///var/scribe/state.json' - Uses a JSON file to store the state.
	// * 'fs:///c:/scribe/state.json' - Uses a JSON file to store the state, but on Windows.
	// * 'fs:///var/scribe/state/' - Stores the state file in the given directory, using a randomly generated ID to store the state.
	//    * This might be a good option if implementing a Scribe client in a provider.
	// * 's3://bucket-name/path'
	// * 'gcs://bucket-name/path'
	// If 'State' is not provided, then one is created using os.Tmpdir.
	State string

	// PipelineName can be provided in a multi-pipeline setup to run an entire pipeline rather than the entire suite of pipelines.
	PipelineName []string

	// Event can be provided in a multi-pipeline setup locally to simulate an event.
	Event string
}

PipelineArgs are provided to the `scribe` command.

func ParseArguments

func ParseArguments(args []string) (*PipelineArgs, error)

Jump to

Keyboard shortcuts

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