scenarios

package
v0.8.1 Latest Latest
Warning

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

Go to latest
Published: Oct 29, 2026 License: Apache-2.0 Imports: 51 Imported by: 0

Documentation

Overview

Package scenarios implements the cluster scenarios invoked by native Make targets.

Index

Constants

View Source
const CertManagerVersion = "v1.21.2"

renovate: datasource=github-releases depName=cert-manager/cert-manager

Variables

This section is empty.

Functions

func CheckGitHubUpgradeMatrix

func CheckGitHubUpgradeMatrix(published []string, content []byte) error

func DiscoverUpgradeBaselines

func DiscoverUpgradeBaselines(ctx context.Context, client *http.Client, target string) ([]string, error)

func UpgradeBaselines

func UpgradeBaselines(tags []string, target string) ([]string, error)

Types

type ConfigSnapshot

type ConfigSnapshot struct {
	Fingerprint string
	Content     []byte
}

func (*ConfigSnapshot) RequireUnchanged

func (snapshot *ConfigSnapshot) RequireUnchanged(current *ConfigSnapshot) error

type DefaultsOptions

type DefaultsOptions struct {
	Image              string
	CertManagerVersion string
	SPOATag            string
	Timeout            time.Duration
}

type GitOpsOptions

type GitOpsOptions struct{ Provider, Certificates, Image string }

type PhaseError

type PhaseError struct {
	Code  int
	Phase string
	Err   error
}

func (*PhaseError) Error

func (e *PhaseError) Error() string

func (*PhaseError) Unwrap

func (e *PhaseError) Unwrap() error

type Session

type Session struct {
	Runner          process.Runner
	Cluster         *kindutil.Cluster
	Client          kubeexec.Client
	Root            string
	Namespace       string
	Release         string
	Artifacts       string
	ImageRepository string
	ImageTag        string
	HAProxyVersion  string
	SPOAImage       string
	Log             io.Writer
	CommandTimeout  time.Duration
	// contains filtered or unexported fields
}

func (*Session) Apply

func (s *Session) Apply(ctx context.Context, object any) error

func (*Session) ChartUpgrade

func (s *Session) ChartUpgrade(ctx context.Context, baseline, certManager string) error

func (*Session) CheckControllerOutput

func (s *Session) CheckControllerOutput(ctx context.Context) error

func (*Session) ConfigSnapshot

func (s *Session) ConfigSnapshot(ctx context.Context) (*ConfigSnapshot, error)

func (*Session) ControllerRollout

func (s *Session) ControllerRollout(ctx context.Context) error

func (*Session) Deployment

func (s *Session) Deployment(ctx context.Context, suffix string) (*appsv1.Deployment, error)

func (*Session) Diagnostics

func (s *Session) Diagnostics(ctx context.Context)

func (*Session) EnsureHelmDiff

func (s *Session) EnsureHelmDiff(ctx context.Context) error

func (*Session) GitOps

func (s *Session) GitOps(ctx context.Context, options *GitOpsOptions) error

func (*Session) Helm

func (s *Session) Helm(ctx context.Context, args ...string) (process.Result, error)

func (*Session) HelmDefaults

func (s *Session) HelmDefaults(ctx context.Context, options *DefaultsOptions) error

func (*Session) ImageValues

func (s *Session) ImageValues() []string

func (*Session) Infof

func (s *Session) Infof(format string, args ...any)

func (*Session) InstallWithoutGatewayAPI

func (s *Session) InstallWithoutGatewayAPI(ctx context.Context) error

func (*Session) Kube

func (s *Session) Kube(ctx context.Context, input io.Reader, args ...string) (process.Result, error)

func (*Session) KubeUnscoped

func (s *Session) KubeUnscoped(ctx context.Context, input io.Reader, args ...string) (process.Result, error)

KubeUnscoped lets each manifest retain its declared namespace.

func (*Session) LoadControllerImage

func (s *Session) LoadControllerImage(ctx context.Context) error

func (*Session) LoadSPOAImage

func (s *Session) LoadSPOAImage(ctx context.Context) error

LoadSPOAImage loads the chart's SPOA image, which a CI build has only locally.

func (*Session) Pods

func (s *Session) Pods(ctx context.Context, component string) ([]corev1.Pod, error)

func (*Session) ReleaseNamespaceSecrets added in v0.7.0

func (s *Session) ReleaseNamespaceSecrets(ctx context.Context) error

ReleaseNamespaceSecrets installs the chart with releaseNamespaceSecretsOnly and proves the controller can read Secrets only in its release namespace, still serves TLS from there, and rejects references elsewhere at admission and, past admission, at reconciliation.

func (*Session) RequireNoControllerRestarts

func (s *Session) RequireNoControllerRestarts(ctx context.Context) error

func (*Session) Run

func (s *Session) Run(ctx context.Context, name string, args ...string) (process.Result, error)

func (*Session) RunInput

func (s *Session) RunInput(ctx context.Context, input io.Reader, name string, args ...string) (process.Result, error)

func (*Session) Save

func (s *Session) Save(name string, object any) error

func (*Session) UpgradeTraffic

func (s *Session) UpgradeTraffic(ctx context.Context, phase string) error

func (*Session) WaitControllerReady

func (s *Session) WaitControllerReady(ctx context.Context, timeout time.Duration) error

func (*Session) WaitHAProxyReady

func (s *Session) WaitHAProxyReady(ctx context.Context, timeout time.Duration) error

func (*Session) WaitValidated

func (s *Session) WaitValidated(ctx context.Context, timeout time.Duration) error

Jump to

Keyboard shortcuts

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