vaultcrt

package
v3.4.0 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2024 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PrometheusNamespace = "cert_operator"
	PrometheusSubsystem = "vaultcrt_resource"
)
View Source
const (
	// AllowSubDomains defines whether to allow the generated root CA of the PKI
	// backend to allow sub domains as common names.
	AllowSubDomains = true
	Name            = "vaultcrt"
	// ConfigHashAnnotation is the annotation key used to track the hash
	// representation of the cert config. This is used to identify changes of the
	// config to trigger renewals.
	ConfigHashAnnotation = "cert.giantswarm.io/config-hash"
	// UpdateTimestampAnnotation is the annotation key used to track the last
	// update timestamp of certificates contained in the Kubernetes secrets.
	UpdateTimestampAnnotation = "giantswarm.io/update-timestamp"
	// UpdateTimestampLayout is the time layout used to format and parse the
	// update timestamps tracked in the annotations of the Kubernetes secrets.
	UpdateTimestampLayout = "2006-01-02T15:04:05.000000Z"
)

Variables

This section is empty.

Functions

func IsInvalidConfig

func IsInvalidConfig(err error) bool

IsInvalidConfig asserts invalidConfigError.

func IsMissingAnnotation

func IsMissingAnnotation(err error) bool

IsMissingAnnotation asserts missingAnnotationError.

func IsNotFound

func IsNotFound(err error) bool

IsNotFound asserts notFoundError.

func IsWrongTypeError

func IsWrongTypeError(err error) bool

IsWrongTypeError asserts wrongTypeError.

Types

type Config

type Config struct {
	CurrentTimeFactory func() time.Time
	CtrlClient         client.Client
	K8sClient          kubernetes.Interface
	Logger             micrologger.Logger
	VaultCrt           vaultcrt.Interface

	ExpirationThreshold time.Duration
	Namespace           string
}

func DefaultConfig

func DefaultConfig() Config

type Resource

type Resource struct {
	// contains filtered or unexported fields
}

func New

func New(config Config) (*Resource, error)

func (*Resource) ApplyCreateChange

func (r *Resource) ApplyCreateChange(ctx context.Context, obj, createChange interface{}) error

func (*Resource) ApplyDeleteChange

func (r *Resource) ApplyDeleteChange(ctx context.Context, obj, deleteChange interface{}) error

func (*Resource) ApplyUpdateChange

func (r *Resource) ApplyUpdateChange(ctx context.Context, obj, updateChange interface{}) error

func (*Resource) GetCurrentState

func (r *Resource) GetCurrentState(ctx context.Context, obj interface{}) (interface{}, error)

func (*Resource) GetDesiredState

func (r *Resource) GetDesiredState(ctx context.Context, obj interface{}) (interface{}, error)

func (*Resource) Name

func (r *Resource) Name() string

func (*Resource) NewDeletePatch

func (r *Resource) NewDeletePatch(ctx context.Context, obj, currentState, desiredState interface{}) (*crud.Patch, error)

func (*Resource) NewUpdatePatch

func (r *Resource) NewUpdatePatch(ctx context.Context, obj, currentState, desiredState interface{}) (*crud.Patch, error)

Jump to

Keyboard shortcuts

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