test

package
v0.0.0-...-841f565 Latest Latest
Warning

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

Go to latest
Published: Sep 28, 2022 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const Type = "test"

Type is the string value of the Target type

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action struct {
	Artifact    *Artifact
	Target      *Target
	ManifestDir string
	K8sClient   kube.Client
	Logger      logz.FieldLogger
}

Action is the executor for implementing a test

func (Action) Execute

func (a Action) Execute(ctx context.Context) (err error)

Execute runs the action and produces a test.Artifact

func (*Action) UseK8sClient

func (a *Action) UseK8sClient(client kube.Client)

UseK8sClient injects the Kubernetes client

func (*Action) UseLogger

func (a *Action) UseLogger(logger logz.FieldLogger)

UseLogger injects a logger into the target's action

type Artifact

type Artifact struct {
	ark.RawArtifact `mapstructure:",squash"`
}

Artifact the result of a successful test.Produce() call

func (Artifact) Cacheable

func (a Artifact) Cacheable() bool

Cacheable currently returns false as caching for a test is very nebulous and needs more thought

func (Artifact) LocallyCached

func (a Artifact) LocallyCached(_ context.Context) (bool, error)

LocallyCached currently does nothing as caching is disabled

func (Artifact) Pull

func (a Artifact) Pull(_ context.Context) error

Pull currently does nothing as caching is disabled

func (Artifact) Push

func (a Artifact) Push(_ context.Context) error

Push currently does nothing as caching is disabled

func (Artifact) RemotelyCached

func (a Artifact) RemotelyCached(_ context.Context) (bool, error)

RemotelyCached currently does nothing as caching is disabled

type Target

type Target struct {
	ark.RawTarget    `mapstructure:",squash"`
	Command          []string          `json:"command" mapstructure:"command"`
	Args             []string          `json:"args" mapstructure:"args"`
	Image            string            `json:"image" mapstructure:"image"`
	Environment      map[string]string `json:"environment" mapstructure:"environment"`
	WorkingDirectory string            `json:"workingDirectory" mapstructure:"workingDirectory"`
	TimeoutSeconds   int               `json:"timeoutSeconds" mapstructure:"timeoutSeconds"`
	DisableCleanup   bool              `json:"disableCleanup" mapstructure:"disableCleanup"`
}

Target expresses the intention to implement a Test target

func (*Target) Produce

func (t *Target) Produce(checksum hash.Hash) (ark.Artifact, error)

Produce should produce Artifact

func (*Target) Validate

func (t *Target) Validate() error

Validate checks if the Target fields are valid

Jump to

Keyboard shortcuts

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