v1alpha1

package
v0.9.5 Latest Latest
Warning

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

Go to latest
Published: Feb 24, 2025 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

+groupName=natz.zeiss.com +k8s:deepcopy-gen=package,register

Index

Constants

View Source
const (
	ConditionTypeSynchronizing = "Sychronizing"
	ConditionTypeSynchronized  = "Synchronized"
	ConditionTypeFailed        = "Failed"
)
View Source
const (
	ConditionReasonCreated      = "Created"
	ConditionReasonSynchronized = "Synchronized"
	ConditionReasonFailed       = "Failed"
)
View Source
const (
	FinalizerName              = "natz.zeiss.com/finalizer"
	AccountServerFinalizerName = "natz.zeiss.com/account-server-finalizer"
	OwnerAnnotation            = "natz.zeiss.com/owner"
)
View Source
const (
	SecretNameKey             = "natz.zeiss.com/nats-key"
	SecretUserCredentialsName = "natz.zeiss.com/nats-user-credentials"
	SecretConfigKey           = "natz.zeiss.com/nats-config"
)
View Source
const (
	// SecretSeedDataKey ...
	SecretSeedDataKey = "seed.nk"
	// SecretPublicKeyDataKey ...
	SecretPublicKeyDataKey = "key.pub"
)
View Source
const (
	// SecretUserJWTKey is the key for the JWT in the secret
	SecretUserJWTKey = "user.jwt"
	// SecretUserCredsKey is the key for the credentials in the secret
	SecretUserCredsKey = "user.creds"
)
View Source
const (
	// AnnotationDeletePolicy is the annotation key for the delete policy
	AnnotationDeletePolicy = "natz.zeiss.com/delete-policy"
)
View Source
const AnnotationName = "natz.zeiss.com/name"

AnnotationName is an annotation that is used to indicate the name of a resource.

View Source
const AnnotationPartOf = "natz.zeiss.com/part-of"

AnnotationPartOf is an annotation that is used to indicate that a resource is part of another resource.

View Source
const (
	// SecretConfigDataKey is the key for the config in the secret
	SecretConfigDataKey = "nats.conf"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "natz.zeiss.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var ErrUnknownKeyType = errors.New("unknown key type")

Functions

This section is empty.

Types

type AccountPhase added in v0.9.0

type AccountPhase string
const (
	AccountPhaseNone         AccountPhase = ""
	AccountPhaseCreating     AccountPhase = "Creating"
	AccountPhaseSynchronized AccountPhase = "Synchronized"
	AccountPhaseFailed       AccountPhase = "Failed"
)

type ActivationPhase added in v0.9.3

type ActivationPhase string
const (
	ActivationPhaseNone     ActivationPhase = ""
	ActivationPhaseCreating ActivationPhase = "Creating"
	ActivationPhaseActive   ActivationPhase = "Active"
	ActivationSynchronized  ActivationPhase = "Synchronized"
	ActivationPhaseFailed   ActivationPhase = "Failed"
)

type AuthCallout added in v0.9.3

type AuthCallout struct {
	// Issuer ...
	Issuer string `json:"issuer"`
	// AuthUsers ...
	AuthUsers []string `json:"auth_users"`
	// Account ...
	Account string `json:"account"`
	// XKey ...
	XKey string `json:"xkey"`
}

AuthCallout ...

func (*AuthCallout) DeepCopy added in v0.9.3

func (in *AuthCallout) DeepCopy() *AuthCallout

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthCallout.

func (*AuthCallout) DeepCopyInto added in v0.9.3

func (in *AuthCallout) DeepCopyInto(out *AuthCallout)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Authorization added in v0.9.3

type Authorization struct {
	User        string      `json:"user,omitempty"`
	Password    string      `json:"password,omitempty"`
	Token       string      `json:"token,omitempty"`
	Timeout     int         `json:"timeout,omitempty"`
	AuthCallout AuthCallout `json:"auth_callout,omitempty"`
}

Authorization ...

func (*Authorization) DeepCopy added in v0.9.3

func (in *Authorization) DeepCopy() *Authorization

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authorization.

func (*Authorization) DeepCopyInto added in v0.9.3

func (in *Authorization) DeepCopyInto(out *Authorization)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Config added in v0.9.3

type Config struct {
	// Host ...
	Host string `json:"host,omitempty" default:"0.0.0.0"`
	// Port ...
	Port int `json:"port,omitempty" default:"4222"`
	// HTTPPort ...
	HTTPPort int `json:"http_port,omitempty" default:"8222"`
	// Gateway ...
	Gateway *Gateway `json:"gateway,omitempty"`
	// ClientAdvertise ...
	ClientAdvertise string `json:"client_advertise,omitempty"`
	// TLS ...
	TLS *TLS `json:"tls,omitempty"`
	// Authorization ...
	Authorization *Authorization `json:"authorization,omitempty"`
	// Resolver ...
	Resolver Resolver `json:"resolver,omitempty"`
	// ResolverPreload ...
	ResolverPreload ResolverPreload `json:"resolver_preload,omitempty"`
	// SystemAccount ...
	SystemAccount string `json:"system_account,omitempty"`
	// Operator ...
	Operator string `json:"operator,omitempty"`
	// PidFile ...
	PidFile string `json:"pid_file,omitempty" default:"/var/run/nats/nats.pid"`
	// JetStream ...
	JetStream *JetStream `json:"jetstream,omitempty"`
}

Config ...

func New added in v0.9.3

func New() *Config

New returns a new Config object.

func (*Config) DeepCopy added in v0.9.3

func (in *Config) DeepCopy() *Config

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Config.

func (*Config) DeepCopyInto added in v0.9.3

func (in *Config) DeepCopyInto(out *Config)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ConfigPhase added in v0.9.3

type ConfigPhase string
const (
	ConfigPhaseNone         ConfigPhase = ""
	ConfigPhasePending      ConfigPhase = "Pending"
	ConfigPhaseCreating     ConfigPhase = "Creating"
	ConfigPhaseSynchronized ConfigPhase = "Synchronized"
	ConfigPhaseFailed       ConfigPhase = "Failed"
)

type Export

type Export struct {
	Name                 string              `json:"name,omitempty"`
	Subject              jwt.Subject         `json:"subject,omitempty"`
	Type                 ExportType          `json:"type,omitempty"`
	TokenReq             bool                `json:"token_req,omitempty"`
	Revocations          jwt.RevocationList  `json:"revocations,omitempty"`
	ResponseType         jwt.ResponseType    `json:"response_type,omitempty"`
	ResponseThreshold    time.Duration       `json:"response_threshold,omitempty"`
	Latency              *jwt.ServiceLatency `json:"service_latency,omitempty"`
	AccountTokenPosition uint                `json:"account_token_position,omitempty"`
	Advertise            bool                `json:"advertise,omitempty"`
	jwt.Info             `json:",inline"`
}

Export ...

func (*Export) DeepCopy

func (in *Export) DeepCopy() *Export

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Export.

func (*Export) DeepCopyInto

func (in *Export) DeepCopyInto(out *Export)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ExportType added in v0.0.8

type ExportType int

ExportType defines the type of import/export.

const (
	// Unknown is used if we don't know the type
	Unknown ExportType = iota
	// Stream defines the type field value for a stream "stream"
	Stream
	// Service defines the type field value for a service "service"
	Service
)

type Gateway added in v0.9.3

type Gateway struct {
	// Name ...
	Name string `json:"name"`
	// RejectUnknownCluster ...
	RejectUnknownCluster bool `json:"reject_unknown_cluster,omitempty"`
	// Authorization ...
	Authorization Authorization `json:"authorization,omitempty"`
	// Host ...
	Host string `json:"host,omitempty"`
	// Port ...
	Port int `json:"port,omitempty"`
	// Listen ...
	Listen string `json:"listen,omitempty"`
	// Advertise ...
	Advertise string `json:"advertise,omitempty"`
	// ConnectTimeout ...
	ConnectRetries int `json:"connect_retries,omitempty"`
	// Gateways ...
	Gateways []GatewayEntry `json:"gateways,omitempty"`
}

Gateway ...

func (*Gateway) DeepCopy added in v0.9.3

func (in *Gateway) DeepCopy() *Gateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gateway.

func (*Gateway) DeepCopyInto added in v0.9.3

func (in *Gateway) DeepCopyInto(out *Gateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GatewayEntry added in v0.9.3

type GatewayEntry struct {
	// Name ...
	Name string `json:"name"`
	// URLS ...
	URLS []string `json:"urls"`
	// TLS ...
	TLS TLS `json:"tls,omitempty"`
}

GatewayEntry ...

func (*GatewayEntry) DeepCopy added in v0.9.3

func (in *GatewayEntry) DeepCopy() *GatewayEntry

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayEntry.

func (*GatewayEntry) DeepCopyInto added in v0.9.3

func (in *GatewayEntry) DeepCopyInto(out *GatewayEntry)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GatewayPhase added in v0.9.0

type GatewayPhase string
const (
	GatewayPhaseNone     GatewayPhase = ""
	GatewayPhaseCreating GatewayPhase = "Creating"
	GatewayPhaseActive   GatewayPhase = "Active"
	GatewaySynchronized  GatewayPhase = "Synchronized"
	GatewayPhaseFailed   GatewayPhase = "Failed"
)

type JetStream added in v0.9.3

type JetStream struct {
	// Enabled ...
	Enabled bool `json:"enabled" default:"true"`
	// StoreDir ...
	StoreDir string `json:"store_dir" default:"/tmp/nats/jetstream"`
	// MaxMemoryStore ...
	MaxMemoryStore int `json:"max_memory_store,omitempty"`
	// MaxFileStore ...
	MaxFileStore int `json:"max_file_store,omitempty"`
	// Domain ...
	Domain string `json:"domain,omitempty"`
	// EncryptionKey ...
	EncryptionKey string `json:"encryption_key,omitempty"`
	// Cipher ...
	Cipher string `json:"cipher,omitempty"`
	// ExtensionHint ...
	ExtensionHint string `json:"extension_hint,omitempty"`
	// Limits ...
	Limits JetStreamLimits `json:"limits,omitempty"`
	// UniqueTag ...
	UniqueTag string `json:"unique_tag,omitempty"`
	// MaxOutStandingCatchUp ...
	MaxOutStandingCatchUp string `json:"max_outstanding_catchup,omitempty" default:"32M"`
	// SyncInterval ...
	SyncInterval string `json:"sync_interval,omitempty" default:"2m"`
}

JetStream ...

func (*JetStream) DeepCopy added in v0.9.3

func (in *JetStream) DeepCopy() *JetStream

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JetStream.

func (*JetStream) DeepCopyInto added in v0.9.3

func (in *JetStream) DeepCopyInto(out *JetStream)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type JetStreamLimits added in v0.9.3

type JetStreamLimits struct {
	// MaxAckPending ...
	MaxAckPending int `json:"max_ack_pending,omitempty"`
	// MaxHaAssets ...
	MaxHaAssets int `json:"max_ha_assets,omitempty"`
	// MaxRequestBatch ...
	MaxRequestBatch int `json:"max_request_batch,omitempty"`
	// DuplicateWindow ...
	DuplicateWindow int `json:"duplicate_window,omitempty"`
}

JetStreamLimits ...

func (*JetStreamLimits) DeepCopy added in v0.9.3

func (in *JetStreamLimits) DeepCopy() *JetStreamLimits

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JetStreamLimits.

func (*JetStreamLimits) DeepCopyInto added in v0.9.3

func (in *JetStreamLimits) DeepCopyInto(out *JetStreamLimits)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KeyType added in v0.9.3

type KeyType string

KeyType is a type that represents the type of the N.

+enum +kubebuilder:validation:Enum={Operator,Account,User}

const (
	KeyTypeOperator KeyType = "Operator"
	KeyTypeAccount  KeyType = "Account"
	KeyTypeUser     KeyType = "User"
)

type Limits

type Limits struct {
	UserLimits     `json:",inline"`
	jwt.NatsLimits `json:",inline"`
}

func (*Limits) DeepCopy

func (in *Limits) DeepCopy() *Limits

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Limits.

func (*Limits) DeepCopyInto

func (in *Limits) DeepCopyInto(out *Limits)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsAccount

type NatsAccount struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsAccountSpec   `json:"spec,omitempty"`
	Status NatsAccountStatus `json:"status,omitempty"`
}

NatsAccount is the Schema for the natsaccounts API

func (*NatsAccount) DeepCopy

func (in *NatsAccount) DeepCopy() *NatsAccount

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsAccount.

func (*NatsAccount) DeepCopyInto

func (in *NatsAccount) DeepCopyInto(out *NatsAccount)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsAccount) DeepCopyObject

func (in *NatsAccount) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NatsAccount) IsFailed added in v0.9.3

func (a *NatsAccount) IsFailed() bool

IsFailed returns true if the account is failed.

func (*NatsAccount) IsPaused added in v0.9.3

func (a *NatsAccount) IsPaused() bool

IsPaused returns true if the account is paused.

func (*NatsAccount) IsSynchronized added in v0.9.3

func (a *NatsAccount) IsSynchronized() bool

IsSynchronized returns true if the account is synchronized.

type NatsAccountList

type NatsAccountList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsAccount `json:"items"`
}

NatsAccountList contains a list of NatsAccount

func (*NatsAccountList) DeepCopy

func (in *NatsAccountList) DeepCopy() *NatsAccountList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsAccountList.

func (*NatsAccountList) DeepCopyInto

func (in *NatsAccountList) DeepCopyInto(out *NatsAccountList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsAccountList) DeepCopyObject

func (in *NatsAccountList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsAccountReference added in v0.9.3

type NatsAccountReference struct {
	// Name is the name of the account.
	Name string `json:"name"`
	// Namespace is the namespace of the account.
	Namespace string `json:"namespace,omitempty"`
}

NatsAccountReference is a reference to a NatsAccount

func (*NatsAccountReference) DeepCopy added in v0.9.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsAccountReference.

func (*NatsAccountReference) DeepCopyInto added in v0.9.3

func (in *NatsAccountReference) DeepCopyInto(out *NatsAccountReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsAccountSpec

type NatsAccountSpec struct {
	// SignerKeyRef is the reference to the secret that contains the signing key
	SignerKeyRef NatsKeyReference `json:"signerKeyRef,omitempty"`
	// PrivateKey is a reference to a secret that contains the private key
	PrivateKey NatsKeyReference `json:"privateKey,omitempty"`
	// SigningKeys is a list of references to secrets that contain the signing keys
	SigningKeys []NatsKeyReference `json:"signingKeys,omitempty"`
	// OperatorSigningKey is the reference to the operator signing key
	OperatorSigningKey NatsKeyReference `json:"operatorSigningKey,omitempty"`
	// Namespaces that are allowed for user creation.
	// If a NatsUser is referencing this account outside of these namespaces, the operator will create an event for it saying that it's not allowed.
	AllowUserNamespaces []string `json:"allowedUserNamespaces,omitempty"`
	// These fields are directly mappejwtd into the NATS JWT claim
	Imports     []*jwt.Import      `json:"imports,omitempty"`
	Exports     []Export           `json:"exports,omitempty"`
	Limits      OperatorLimits     `json:"limits,omitempty"`
	Revocations jwt.RevocationList `json:"revocations,omitempty"`
}

NatsAccountSpec defines the desired state of NatsAccount

func (*NatsAccountSpec) DeepCopy

func (in *NatsAccountSpec) DeepCopy() *NatsAccountSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsAccountSpec.

func (*NatsAccountSpec) DeepCopyInto

func (in *NatsAccountSpec) DeepCopyInto(out *NatsAccountSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsAccountSpec) ToJWTAccount

func (s *NatsAccountSpec) ToJWTAccount() jwt.Account

type NatsAccountStatus

type NatsAccountStatus struct {
	// PublicKey is the public key that the account is currently using.
	PublicKey string `json:"publicKey,omitempty"`
	// JWT is the JWT that the account is currently using.
	JWT string `json:"jwt,omitempty"`
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase AccountPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

NatsAccountStatus defines the observed state of NatsAccount

func (*NatsAccountStatus) DeepCopy

func (in *NatsAccountStatus) DeepCopy() *NatsAccountStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsAccountStatus.

func (*NatsAccountStatus) DeepCopyInto

func (in *NatsAccountStatus) DeepCopyInto(out *NatsAccountStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsActivation added in v0.9.3

type NatsActivation struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsActivationSpec   `json:"spec,omitempty"`
	Status NatsActivationStatus `json:"status,omitempty"`
}

func (*NatsActivation) DeepCopy added in v0.9.3

func (in *NatsActivation) DeepCopy() *NatsActivation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsActivation.

func (*NatsActivation) DeepCopyInto added in v0.9.3

func (in *NatsActivation) DeepCopyInto(out *NatsActivation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsActivation) DeepCopyObject added in v0.9.3

func (in *NatsActivation) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsActivationList added in v0.9.3

type NatsActivationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsActivation `json:"items"`
}

NatsActivationList contains a list of NatsActivation

func (*NatsActivationList) DeepCopy added in v0.9.3

func (in *NatsActivationList) DeepCopy() *NatsActivationList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsActivationList.

func (*NatsActivationList) DeepCopyInto added in v0.9.3

func (in *NatsActivationList) DeepCopyInto(out *NatsActivationList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsActivationList) DeepCopyObject added in v0.9.3

func (in *NatsActivationList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsActivationReference added in v0.9.3

type NatsActivationReference struct {
	// Name is the name of the Activation
	Name string `json:"name"`
	// Namespace is the namespace of the Activation
	Namespace string `json:"namespace"`
}

NatsActivationRef is a reference to a NatsActivation

func (*NatsActivationReference) DeepCopy added in v0.9.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsActivationReference.

func (*NatsActivationReference) DeepCopyInto added in v0.9.3

func (in *NatsActivationReference) DeepCopyInto(out *NatsActivationReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsActivationSpec added in v0.9.3

type NatsActivationSpec struct {
	// AccountRef is a reference to the account that the activation is for.
	AccountRef NatsAccountReference `json:"accountRef"`
	// SignerKeyRef is a reference to a secret that contains the account signing key
	SignerKeyRef NatsKeyReference `json:"signerKeyRef"`
	// TargetAccountRef is a reference to the account that the activation is for.
	TargetAccountRef NatsAccountReference `json:"targetAccountRef"`
	// Expiry is the expiry time of the activation.
	Expiry metav1.Time `json:"expiry,omitempty"`
	// Start is the start time of the activation.
	Start metav1.Time `json:"start,omitempty"`
	// Subject is the subject that the activation is for.
	Subject string `json:"subject"`
	// ExportType is the type of export.
	ExportType ExportType `json:"exportType"`
}

NatsActivationSpec defines the desired state of NatsActivation

func (*NatsActivationSpec) DeepCopy added in v0.9.3

func (in *NatsActivationSpec) DeepCopy() *NatsActivationSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsActivationSpec.

func (*NatsActivationSpec) DeepCopyInto added in v0.9.3

func (in *NatsActivationSpec) DeepCopyInto(out *NatsActivationSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsActivationStatus added in v0.9.3

type NatsActivationStatus struct {
	// JWT is the JWT for the user
	JWT string `json:"jwt,omitempty"`
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase ActivationPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

NatsActivationStatus defines the observed state of NatsActivation

func (*NatsActivationStatus) DeepCopy added in v0.9.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsActivationStatus.

func (*NatsActivationStatus) DeepCopyInto added in v0.9.3

func (in *NatsActivationStatus) DeepCopyInto(out *NatsActivationStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsConfig added in v0.9.3

type NatsConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsConfigSpec   `json:"spec,omitempty"`
	Status NatsConfigStatus `json:"status,omitempty"`
}

func (*NatsConfig) DeepCopy added in v0.9.3

func (in *NatsConfig) DeepCopy() *NatsConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsConfig.

func (*NatsConfig) DeepCopyInto added in v0.9.3

func (in *NatsConfig) DeepCopyInto(out *NatsConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsConfig) DeepCopyObject added in v0.9.3

func (in *NatsConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsConfigList added in v0.9.3

type NatsConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsConfig `json:"items"`
}

NatsConfigList contains a list of NatsConfig

func (*NatsConfigList) DeepCopy added in v0.9.3

func (in *NatsConfigList) DeepCopy() *NatsConfigList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsConfigList.

func (*NatsConfigList) DeepCopyInto added in v0.9.3

func (in *NatsConfigList) DeepCopyInto(out *NatsConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsConfigList) DeepCopyObject added in v0.9.3

func (in *NatsConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsConfigSpec added in v0.9.3

type NatsConfigSpec struct {
	// OperatorRef is a reference to the operator that is managing the config.
	OperatorRef NatsOperatorReference `json:"operatorRef"`
	// SystemAccountRef is a reference to the system account.
	SystemAccountRef NatsAccountReference `json:"systemAccountRef"`
	// Gateways is a list of gateways that should be configured.
	Gateways []NatsgatewayReference `json:"gateways,omitempty"`
	// Config is the configuration that should be applied.
	Config Config `json:"config,omitempty"`
}

NatsConfigSpec defines the desired state of NatsConfig

func (*NatsConfigSpec) DeepCopy added in v0.9.3

func (in *NatsConfigSpec) DeepCopy() *NatsConfigSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsConfigSpec.

func (*NatsConfigSpec) DeepCopyInto added in v0.9.3

func (in *NatsConfigSpec) DeepCopyInto(out *NatsConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsConfigStatus added in v0.9.3

type NatsConfigStatus struct {
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase ConfigPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

NatsConfigStatus defines the observed state of NatsConfig

func (*NatsConfigStatus) DeepCopy added in v0.9.3

func (in *NatsConfigStatus) DeepCopy() *NatsConfigStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsConfigStatus.

func (*NatsConfigStatus) DeepCopyInto added in v0.9.3

func (in *NatsConfigStatus) DeepCopyInto(out *NatsConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsGateway added in v0.9.0

type NatsGateway struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsGatewaySpec   `json:"spec,omitempty"`
	Status NatsGatewayStatus `json:"status,omitempty"`
}

func (*NatsGateway) DeepCopy added in v0.9.0

func (in *NatsGateway) DeepCopy() *NatsGateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsGateway.

func (*NatsGateway) DeepCopyInto added in v0.9.0

func (in *NatsGateway) DeepCopyInto(out *NatsGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsGateway) DeepCopyObject added in v0.9.0

func (in *NatsGateway) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsGatewayList added in v0.9.0

type NatsGatewayList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsGateway `json:"items"`
}

NatsGatewayList contains a list of NatsGateway

func (*NatsGatewayList) DeepCopy added in v0.9.0

func (in *NatsGatewayList) DeepCopy() *NatsGatewayList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsGatewayList.

func (*NatsGatewayList) DeepCopyInto added in v0.9.0

func (in *NatsGatewayList) DeepCopyInto(out *NatsGatewayList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsGatewayList) DeepCopyObject added in v0.9.0

func (in *NatsGatewayList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsGatewaySpec added in v0.9.0

type NatsGatewaySpec struct {
	// URL is the URL of the gateway.
	URL string `json:"url"`
	// Username is the username of the gateway.
	Username SecretValueFromSource `json:"username,omitempty"`
	// Password is the password of the gateway.
	Password SecretValueFromSource `json:"password,omitempty"`
}

func (*NatsGatewaySpec) DeepCopy added in v0.9.0

func (in *NatsGatewaySpec) DeepCopy() *NatsGatewaySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsGatewaySpec.

func (*NatsGatewaySpec) DeepCopyInto added in v0.9.0

func (in *NatsGatewaySpec) DeepCopyInto(out *NatsGatewaySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsGatewayStatus added in v0.9.0

type NatsGatewayStatus struct {
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase GatewayPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

func (*NatsGatewayStatus) DeepCopy added in v0.9.0

func (in *NatsGatewayStatus) DeepCopy() *NatsGatewayStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsGatewayStatus.

func (*NatsGatewayStatus) DeepCopyInto added in v0.9.0

func (in *NatsGatewayStatus) DeepCopyInto(out *NatsGatewayStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsKey added in v0.9.3

type NatsKey struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsKeySpec   `json:"spec,omitempty"`
	Status NatsKeyStatus `json:"status,omitempty"`
}

NatsKey is the Schema for a NATS key.

func (*NatsKey) DeepCopy added in v0.9.3

func (in *NatsKey) DeepCopy() *NatsKey

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsKey.

func (*NatsKey) DeepCopyInto added in v0.9.3

func (in *NatsKey) DeepCopyInto(out *NatsKey)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsKey) DeepCopyObject added in v0.9.3

func (in *NatsKey) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NatsKey) IsPaused added in v0.9.3

func (pk *NatsKey) IsPaused() bool

IsPaused returns true if the private is paused.

func (*NatsKey) Keys added in v0.9.3

func (pk *NatsKey) Keys() (nkeys.KeyPair, error)

Keys returns a pair of keys based on the type of the N.

type NatsKeyList added in v0.9.3

type NatsKeyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsKey `json:"items"`
}

NatsKeyList contains a list of NATS keys.

func (*NatsKeyList) DeepCopy added in v0.9.3

func (in *NatsKeyList) DeepCopy() *NatsKeyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsKeyList.

func (*NatsKeyList) DeepCopyInto added in v0.9.3

func (in *NatsKeyList) DeepCopyInto(out *NatsKeyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsKeyList) DeepCopyObject added in v0.9.3

func (in *NatsKeyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsKeyPhase added in v0.9.3

type NatsKeyPhase string

NatsKeyPhase is a type that represents the phase of the N.

const (
	KeyPhaseNone         NatsKeyPhase = ""
	KeyPhasePending      NatsKeyPhase = "Pending"
	KeyPhaseCreating     NatsKeyPhase = "Creating"
	KeyPhaseSynchronized NatsKeyPhase = "Synchronized"
	KeyPhaseFailed       NatsKeyPhase = "Failed"
)

type NatsKeyReference added in v0.9.3

type NatsKeyReference struct {
	// Name is the name of the key as a reference
	Name string `json:"name"`
	// Namespace is the namespace of the key as a reference
	Namespace string `json:"namespace,omitempty"`
}

func (*NatsKeyReference) DeepCopy added in v0.9.3

func (in *NatsKeyReference) DeepCopy() *NatsKeyReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsKeyReference.

func (*NatsKeyReference) DeepCopyInto added in v0.9.3

func (in *NatsKeyReference) DeepCopyInto(out *NatsKeyReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsKeySpec added in v0.9.3

type NatsKeySpec struct {
	// Type is the type of the N.
	Type KeyType `json:"type"`
	// PreventDeletion is a flag that indicates if the  should be locked to prevent deletion.
	// +kubebuilder:default=false
	PreventDeletion bool `json:"prevent_deletion,omitempty"`
	// Paused is a flag that indicates if the  is paused.
	// +kubebuilder:default=false
	Paused bool `json:"paused,omitempty"`
}

NatsKeySpec defines the desired state of a NATS key.

func (*NatsKeySpec) DeepCopy added in v0.9.3

func (in *NatsKeySpec) DeepCopy() *NatsKeySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsKeySpec.

func (*NatsKeySpec) DeepCopyInto added in v0.9.3

func (in *NatsKeySpec) DeepCopyInto(out *NatsKeySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsKeyStatus added in v0.9.3

type NatsKeyStatus struct {
	// Conditions is an array of conditions that the private  is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the private .
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase NatsKeyPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

NatsKeyStatus defines the observed state of a NATS key.

func (*NatsKeyStatus) DeepCopy added in v0.9.3

func (in *NatsKeyStatus) DeepCopy() *NatsKeyStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsKeyStatus.

func (*NatsKeyStatus) DeepCopyInto added in v0.9.3

func (in *NatsKeyStatus) DeepCopyInto(out *NatsKeyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsOperator

type NatsOperator struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsOperatorSpec   `json:"spec,omitempty"`
	Status NatsOperatorStatus `json:"status,omitempty"`
}

func (*NatsOperator) DeepCopy

func (in *NatsOperator) DeepCopy() *NatsOperator

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsOperator.

func (*NatsOperator) DeepCopyInto

func (in *NatsOperator) DeepCopyInto(out *NatsOperator)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsOperator) DeepCopyObject

func (in *NatsOperator) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NatsOperator) IsFailed added in v0.9.3

func (o *NatsOperator) IsFailed() bool

IsFailed returns true if the operator is failed.

func (*NatsOperator) IsPaused added in v0.9.3

func (o *NatsOperator) IsPaused() bool

IsPaused returns true if the operator is paused.

func (*NatsOperator) IsSynchronized added in v0.9.3

func (o *NatsOperator) IsSynchronized() bool

IsSynchronized returns true if the operator is synchronized.

type NatsOperatorList

type NatsOperatorList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsOperator `json:"items"`
}

NatsOperatorList contains a list of NatsOperator

func (*NatsOperatorList) DeepCopy

func (in *NatsOperatorList) DeepCopy() *NatsOperatorList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsOperatorList.

func (*NatsOperatorList) DeepCopyInto

func (in *NatsOperatorList) DeepCopyInto(out *NatsOperatorList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsOperatorList) DeepCopyObject

func (in *NatsOperatorList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsOperatorReference added in v0.9.3

type NatsOperatorReference struct {
	// Name is the name of the operator.
	Name string `json:"name"`
	// Namespace is the namespace of the operator.
	Namespace string `json:"namespace,omitempty"`
}

OperatorReference is a reference to an operator.

func (*NatsOperatorReference) DeepCopy added in v0.9.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsOperatorReference.

func (*NatsOperatorReference) DeepCopyInto added in v0.9.3

func (in *NatsOperatorReference) DeepCopyInto(out *NatsOperatorReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsOperatorSpec

type NatsOperatorSpec struct {
	// PrivateKey is a reference to a secret that contains the private key
	PrivateKey NatsKeyReference `json:"privateKey,omitempty"`
	// EnableSystemAccount is a flag that indicates if the system account should be created.
	EnableSystemAccount bool `json:"enableSystemAccount,omitempty"`
	// SigningKeys is a list of references to secrets that contain the signing keys
	SigningKeys []NatsKeyReference `json:"signingKeys,omitempty"`
	// PreventDeletion is a flag that indicates if the  should be locked to prevent deletion.
	// +kubebuilder:default=false
	PreventDeletion bool `json:"prevent_deletion,omitempty"`
	// Paused is a flag that indicates if the  is paused.
	// +kubebuilder:default=false
	Paused bool `json:"paused,omitempty"`
}

func (*NatsOperatorSpec) DeepCopy

func (in *NatsOperatorSpec) DeepCopy() *NatsOperatorSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsOperatorSpec.

func (*NatsOperatorSpec) DeepCopyInto

func (in *NatsOperatorSpec) DeepCopyInto(out *NatsOperatorSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsOperatorStatus

type NatsOperatorStatus struct {
	// JWT is the JWT that the operator is currently using.
	JWT string `json:"jwt"`
	// PublicKey is the public key that the operator is currently using.
	PublicKey string `json:"publicKey"`
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase OperatorPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

func (*NatsOperatorStatus) DeepCopy

func (in *NatsOperatorStatus) DeepCopy() *NatsOperatorStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsOperatorStatus.

func (*NatsOperatorStatus) DeepCopyInto

func (in *NatsOperatorStatus) DeepCopyInto(out *NatsOperatorStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsReference added in v0.9.3

type NatsReference struct {
	// Name is the name of the
	Name string `json:"name"`
	// Namespace is the namespace of the private
	Namespace string `json:"namespace,omitempty"`
}

NatsReference is a reference to a .

func (*NatsReference) DeepCopy added in v0.9.3

func (in *NatsReference) DeepCopy() *NatsReference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsReference.

func (*NatsReference) DeepCopyInto added in v0.9.3

func (in *NatsReference) DeepCopyInto(out *NatsReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsUser

type NatsUser struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NatsUserSpec   `json:"spec,omitempty"`
	Status NatsUserStatus `json:"status,omitempty"`
}

NatsUser is the Schema for the natsusers API

func (*NatsUser) DeepCopy

func (in *NatsUser) DeepCopy() *NatsUser

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsUser.

func (*NatsUser) DeepCopyInto

func (in *NatsUser) DeepCopyInto(out *NatsUser)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsUser) DeepCopyObject

func (in *NatsUser) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsUserList

type NatsUserList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NatsUser `json:"items"`
}

NatsUserList contains a list of NatsUser

func (*NatsUserList) DeepCopy

func (in *NatsUserList) DeepCopy() *NatsUserList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsUserList.

func (*NatsUserList) DeepCopyInto

func (in *NatsUserList) DeepCopyInto(out *NatsUserList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsUserList) DeepCopyObject

func (in *NatsUserList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NatsUserSpec

type NatsUserSpec struct {
	// PrivateKey is a reference to a secret that contains the private key
	PrivateKey NatsKeyReference `json:"privateKey,omitempty"`
	// SignerKeyRef is a reference to a secret that contains the account signing key
	SignerKeyRef NatsKeyReference `json:"signerKeyRef"`
	// AccountRef is a reference to the account
	AccountRef NatsReference `json:"accountRef"`
	// Permissions define the permissions for the user
	Permissions Permissions `json:"permissions,omitempty"`
	// Limits define the limits for the user
	Limits Limits `json:"limits,omitempty"`
	// BearerToken is a flag that indicates if the user should be created with a bearer token
	BearerToken bool `json:"bearer_token,omitempty"`
	// AllowedConnectionTypes is a list of allowed connection types
	AllowedConnectionTypes jwt.StringList `json:"allowed_connection_types,omitempty"`
}

NatsUserSpec defines the desired state of NatsUser

func (*NatsUserSpec) DeepCopy

func (in *NatsUserSpec) DeepCopy() *NatsUserSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsUserSpec.

func (*NatsUserSpec) DeepCopyInto

func (in *NatsUserSpec) DeepCopyInto(out *NatsUserSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NatsUserSpec) ToNatsJWT

func (s *NatsUserSpec) ToNatsJWT() jwt.User

type NatsUserStatus

type NatsUserStatus struct {
	// PublicKey is the public key for the user
	PublicKey string `json:"publicKey,omitempty"`
	// JWT is the JWT for the user
	JWT string `json:"jwt,omitempty"`
	// Conditions is an array of conditions that the operator is currently in.
	Conditions []metav1.Condition `json:"conditions,omitempty" optional:"true"`
	// Phase is the current phase of the operator.
	//
	// +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}
	Phase UserPhase `json:"phase"`
	// ControlPaused is a flag that indicates if the operator is paused.
	ControlPaused bool `json:"controlPaused,omitempty" optional:"true"`
	// LastUpdate is the timestamp of the last update.
	LastUpdate metav1.Time `json:"lastUpdate,omitempty"`
}

NatsUserStatus defines the observed state of NatsUser

func (*NatsUserStatus) DeepCopy

func (in *NatsUserStatus) DeepCopy() *NatsUserStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsUserStatus.

func (*NatsUserStatus) DeepCopyInto

func (in *NatsUserStatus) DeepCopyInto(out *NatsUserStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NatsgatewayReference added in v0.9.3

type NatsgatewayReference struct {
	// Name is the name of the gateway
	Name string `json:"name"`
	// Namespace is the namespace of the gateway
	Namespace string `json:"namespace"`
}

NatsGatewayRef is a reference to a NatsGateway

func (*NatsgatewayReference) DeepCopy added in v0.9.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatsgatewayReference.

func (*NatsgatewayReference) DeepCopyInto added in v0.9.3

func (in *NatsgatewayReference) DeepCopyInto(out *NatsgatewayReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OperationPhase added in v0.9.3

type OperationPhase string
const (
	OperationSynchronized OperationPhase = "Synchronized"
	OperationTerminating  OperationPhase = "Terminating"
	OperationFailed       OperationPhase = "Failed"
	OperationError        OperationPhase = "Error"
	OperationSucceeded    OperationPhase = "Succeeded"
)

func (OperationPhase) Completed added in v0.9.3

func (os OperationPhase) Completed() bool

func (OperationPhase) Failed added in v0.9.3

func (os OperationPhase) Failed() bool

func (OperationPhase) Successful added in v0.9.3

func (os OperationPhase) Successful() bool

func (OperationPhase) Synchronized added in v0.9.3

func (os OperationPhase) Synchronized() bool

type OperatorLimits

type OperatorLimits struct {
	jwt.NatsLimits            `json:",inline"`
	jwt.AccountLimits         `json:",inline"`
	jwt.JetStreamLimits       `json:",inline"`
	jwt.JetStreamTieredLimits `json:"tiered_limits,omitempty"`
}

OperatorLimits are used to limit access by an account

func (*OperatorLimits) DeepCopy

func (in *OperatorLimits) DeepCopy() *OperatorLimits

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorLimits.

func (*OperatorLimits) DeepCopyInto

func (in *OperatorLimits) DeepCopyInto(out *OperatorLimits)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OperatorPhase added in v0.9.0

type OperatorPhase string

Phase is a type that represents the current phase of the operator.

+enum +kubebuilder:validation:Enum={None,Pending,Creating,Synchronized,Failed}

const (
	OperatorPhaseNone         OperatorPhase = ""
	OperatorPhasePending      OperatorPhase = "Pending"
	OperatorPhaseCreating     OperatorPhase = "Creating"
	OperatorPhaseSynchronized OperatorPhase = "Synchronized"
	OperatorPhaseFailed       OperatorPhase = "Failed"
)

type Permission

type Permission struct {
	Allow jwt.StringList `json:"allow,omitempty"`
	Deny  jwt.StringList `json:"deny,omitempty"`
}

func (*Permission) DeepCopy

func (in *Permission) DeepCopy() *Permission

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Permission.

func (*Permission) DeepCopyInto

func (in *Permission) DeepCopyInto(out *Permission)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Permissions

type Permissions struct {
	Pub  Permission              `json:"pub,omitempty"`
	Sub  Permission              `json:"sub,omitempty"`
	Resp *jwt.ResponsePermission `json:"resp,omitempty"`
}

func (*Permissions) DeepCopy

func (in *Permissions) DeepCopy() *Permissions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Permissions.

func (*Permissions) DeepCopyInto

func (in *Permissions) DeepCopyInto(out *Permissions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Resolver added in v0.9.3

type Resolver struct {
	// Type ...
	Type string `json:"type,omitempty" default:"full"`
	// Dir ...
	Dir string `json:"dir,omitempty" default:"/data/resolver"`
	// AllowDelete ...
	AllowDelete bool `json:"allow_delete,omitempty" default:"true"`
	// Interval ...
	Interval string `json:"interval,omitempty" default:"2m"`
	// Limit ...
	Limit int `json:"limit,omitzero"`
	// Timeout ...
	Timeout string `json:"timeout,omitempty" default:"5s"`
}

Resolver ...

func (*Resolver) DeepCopy added in v0.9.3

func (in *Resolver) DeepCopy() *Resolver

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resolver.

func (*Resolver) DeepCopyInto added in v0.9.3

func (in *Resolver) DeepCopyInto(out *Resolver)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResolverPreload added in v0.9.3

type ResolverPreload map[string]string

ResolverPreload ...

func (ResolverPreload) DeepCopy added in v0.9.3

func (in ResolverPreload) DeepCopy() ResolverPreload

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResolverPreload.

func (ResolverPreload) DeepCopyInto added in v0.9.3

func (in ResolverPreload) DeepCopyInto(out *ResolverPreload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretValueFromSource added in v0.9.0

type SecretValueFromSource struct {
	// The Secret key to select from.
	SecretKeyRef *corev1.SecretKeySelector `json:"secretKeyRef,omitempty"`
}

SecretValueFromSource represents the source of a secret value

func (*SecretValueFromSource) DeepCopy added in v0.9.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretValueFromSource.

func (*SecretValueFromSource) DeepCopyInto added in v0.9.0

func (in *SecretValueFromSource) DeepCopyInto(out *SecretValueFromSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TLS added in v0.9.3

type TLS struct {
	// CertFile ...
	CertFile string `json:"cert_file"`
	// KeyFile ...
	KeyFile string `json:"key_file"`
	// CAFile ...
	CAFile string `json:"ca_file"`
	// CipherSuites ...
	CipherSuites string `json:"cipher_suites"`
	// CurvePreferences ...
	CurvePreferences string `json:"curve_preferences,omitempty"`
	// Insecure ...
	Insecure bool `json:"insecure,omitempty"`
	// Verify ...
	Verify bool `json:"verify"`
	// VerifyAndMap ...
	VerifyAndMap bool `json:"verify_and_map"`
	// VerifyCertAndCheckKnownURLs ...
	VerifyCertAndCheckKnownURLs bool `json:"verify_cert_and_check_known_urls,omitempty"`
	// ConnectionRateLimit ...
	ConnectionRateLimit int `json:"connection_rate_limit,omitempty"`
	// PinnedCerts ...
	PinnedCerts []string `json:"pinned_certs"`
}

TLS ...

func (*TLS) DeepCopy added in v0.9.3

func (in *TLS) DeepCopy() *TLS

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLS.

func (*TLS) DeepCopyInto added in v0.9.3

func (in *TLS) DeepCopyInto(out *TLS)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UserLimits

type UserLimits struct {
	Src    jwt.CIDRList    `json:"src,omitempty"`
	Times  []jwt.TimeRange `json:"times,omitempty"`
	Locale string          `json:"times_location,omitempty"`
}

func (*UserLimits) DeepCopy

func (in *UserLimits) DeepCopy() *UserLimits

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserLimits.

func (*UserLimits) DeepCopyInto

func (in *UserLimits) DeepCopyInto(out *UserLimits)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UserPhase added in v0.9.0

type UserPhase string
const (
	UserPhaseNone         UserPhase = ""
	UserPhasePending      UserPhase = "Pending"
	UserPhaseCreating     UserPhase = "Creating"
	UserPhaseSynchronized UserPhase = "Synchronized"
	UserPhaseFailed       UserPhase = "Failed"
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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