v1alpha1

package
v0.6.1 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the nats v1alpha1 API group. +kubebuilder:object:generate=true +groupName=nauth.io

Index

Constants

View Source
const (
	// ResponseTypeSingleton is used for a service that sends a single response only
	ResponseTypeSingleton = "Singleton"

	// ResponseTypeStream is used for a service that will send multiple responses
	ResponseTypeStream = "Stream"

	// ResponseTypeChunked is used for a service that sends a single response in chunks (so not quite a stream)
	ResponseTypeChunked = "Chunked"
)
View Source
const MaxInfoLength = 8 * 1024

Variables

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

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Account

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

	Spec   AccountSpec   `json:"spec,omitempty"`
	Status AccountStatus `json:"status,omitempty"`
}

Account is the Schema for the accounts API.

func (*Account) DeepCopy

func (in *Account) DeepCopy() *Account

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

func (*Account) DeepCopyInto

func (in *Account) DeepCopyInto(out *Account)

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

func (*Account) DeepCopyObject

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

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

func (*Account) GetConditions

func (a *Account) GetConditions() *[]metav1.Condition

type AccountClaims

type AccountClaims struct {
	// +optional
	AccountLimits *AccountLimits `json:"accountLimits,omitempty"`
	// +optional
	DisplayName string `json:"displayName,omitempty"`
	// +optional
	SigningKeys SigningKeys `json:"signingKeys,omitempty"`
	// +optional
	Exports Exports `json:"exports,omitempty"`
	// +optional
	Imports Imports `json:"imports,omitempty"`
	// +optional
	JetStreamLimits *JetStreamLimits `json:"jetStreamLimits,omitempty"`
	// +optional
	NatsLimits *NatsLimits `json:"natsLimits,omitempty"`
}

func (*AccountClaims) DeepCopy

func (in *AccountClaims) DeepCopy() *AccountClaims

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

func (*AccountClaims) DeepCopyInto

func (in *AccountClaims) DeepCopyInto(out *AccountClaims)

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

type AccountLimits

type AccountLimits struct {
	// +optional
	// +kubebuilder:default=-1
	Imports *int64 `json:"imports,omitempty"` // Max number of imports
	// +optional
	// +kubebuilder:default=-1
	Exports *int64 `json:"exports,omitempty"` // Max number of exports
	// +optional
	// +kubebuilder:default=true
	WildcardExports *bool `json:"wildcards,omitempty"` // Are wildcards allowed in exports
	// +optional
	// +kubebuilder:default=-1
	Conn *int64 `json:"conn,omitempty"` // Max number of active connections
	// +optional
	// +kubebuilder:default=-1
	LeafNodeConn *int64 `json:"leaf,omitempty"` // Max number of active leaf node connections
}

func (*AccountLimits) DeepCopy

func (in *AccountLimits) DeepCopy() *AccountLimits

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

func (*AccountLimits) DeepCopyInto

func (in *AccountLimits) DeepCopyInto(out *AccountLimits)

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

type AccountList

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

AccountList contains a list of Account.

func (*AccountList) DeepCopy

func (in *AccountList) DeepCopy() *AccountList

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

func (*AccountList) DeepCopyInto

func (in *AccountList) DeepCopyInto(out *AccountList)

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

func (*AccountList) DeepCopyObject

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

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

type AccountRef

type AccountRef struct {
	Name      string `json:"name"`
	Namespace string `json:"namespace"`
}

func (*AccountRef) DeepCopy

func (in *AccountRef) DeepCopy() *AccountRef

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

func (*AccountRef) DeepCopyInto

func (in *AccountRef) DeepCopyInto(out *AccountRef)

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

type AccountSpec

type AccountSpec struct {
	// NatsClusterRef references the NatsCluster to use for this account
	// If not specified, defaults to legacy behavior
	// +optional
	NatsClusterRef *NatsClusterRef `json:"natsClusterRef,omitempty"`
	// DisplayName is an optional name for the NATS resource representing the account. May be derived if absent.
	// +optional
	DisplayName string `json:"displayName,omitempty"`
	// +optional
	AccountLimits *AccountLimits `json:"accountLimits,omitempty"`
	// +optional
	Exports Exports `json:"exports,omitempty"`
	// +optional
	Imports Imports `json:"imports,omitempty"`
	// +optional
	JetStreamLimits *JetStreamLimits `json:"jetStreamLimits,omitempty"`
	// +optional
	NatsLimits *NatsLimits `json:"natsLimits,omitempty"`
}

AccountSpec defines the desired state of Account.

func (*AccountSpec) DeepCopy

func (in *AccountSpec) DeepCopy() *AccountSpec

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

func (*AccountSpec) DeepCopyInto

func (in *AccountSpec) DeepCopyInto(out *AccountSpec)

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

type AccountStatus

type AccountStatus struct {
	// +optional
	Claims AccountClaims `json:"claims,omitempty"`
	// +listType=map
	// +listMapKey=type
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	ReconcileTimestamp metav1.Time `json:"reconcileTimestamp,omitempty"`
	// +optional
	OperatorVersion string `json:"operatorVersion,omitempty"`
}

AccountStatus defines the observed state of Account.

func (*AccountStatus) DeepCopy

func (in *AccountStatus) DeepCopy() *AccountStatus

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

func (*AccountStatus) DeepCopyInto

func (in *AccountStatus) DeepCopyInto(out *AccountStatus)

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

type CIDRList

type CIDRList TagList

func (*CIDRList) Add

func (c *CIDRList) Add(p ...string)

func (*CIDRList) Contains

func (c *CIDRList) Contains(p string) bool

func (CIDRList) DeepCopy

func (in CIDRList) DeepCopy() CIDRList

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

func (CIDRList) DeepCopyInto

func (in CIDRList) DeepCopyInto(out *CIDRList)

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

func (*CIDRList) Remove

func (c *CIDRList) Remove(p ...string)

func (*CIDRList) Set

func (c *CIDRList) Set(values string)

func (*CIDRList) UnmarshalJSON

func (c *CIDRList) UnmarshalJSON(body []byte) (err error)

type Export

type Export struct {
	Name                 string          `json:"name,omitempty"`
	Subject              Subject         `json:"subject,omitempty"`
	Type                 ExportType      `json:"type,omitempty"`
	TokenReq             bool            `json:"tokenReq,omitempty"`
	Revocations          RevocationList  `json:"revocations,omitempty"`
	ResponseType         ResponseType    `json:"responseType,omitempty"`
	ResponseThreshold    time.Duration   `json:"responseThreshold,omitempty"`
	Latency              *ServiceLatency `json:"serviceLatency,omitempty"`
	AccountTokenPosition uint            `json:"accountTokenPosition,omitempty"`
	Advertise            bool            `json:"advertise,omitempty"`
	AllowTrace           bool            `json:"allowTrace,omitempty"`
}

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

type ExportType string

ExportType defines the type of import/export. +kubebuilder:validation:Enum=stream;service +kubebuilder:default=stream

const (
	// Stream defines the type field value for a stream "stream"
	Stream ExportType = "stream"
	// Service defines the type field value for a service "service"
	Service ExportType = "service"
)

func (ExportType) ToInt

func (e ExportType) ToInt() int

ToInt converts the ExportType to an int value: Stream=1, Service=2

type Exports

type Exports []*Export

func (Exports) DeepCopy

func (in Exports) DeepCopy() Exports

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

func (Exports) DeepCopyInto

func (in Exports) DeepCopyInto(out *Exports)

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

type Import

type Import struct {
	// AccountRefName references the account used to create the user.
	AccountRef AccountRef `json:"accountRef"`
	Name       string     `json:"name,omitempty"`
	// Subject field in an import is always from the perspective of the
	// initial publisher - in the case of a stream it is the account owning
	// the stream (the exporter), and in the case of a service it is the
	// account making the request (the importer).
	Subject Subject `json:"subject,omitempty"`
	Account string  `json:"account,omitempty"`
	// Local subject used to subscribe (for streams) and publish (for services) to.
	// This value only needs setting if you want to change the value of Subject.
	// If the value of Subject ends in > then LocalSubject needs to end in > as well.
	// LocalSubject can contain $<number> wildcard references where number references the nth wildcard in Subject.
	// The sum of wildcard reference and * tokens needs to match the number of * token in Subject.
	LocalSubject RenamingSubject `json:"localSubject,omitempty"`
	Type         ExportType      `json:"type,omitempty"`
	Share        bool            `json:"share,omitempty"`
	AllowTrace   bool            `json:"allowTrace,omitempty"`
}

func (*Import) DeepCopy

func (in *Import) DeepCopy() *Import

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

func (*Import) DeepCopyInto

func (in *Import) DeepCopyInto(out *Import)

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

type Imports

type Imports []*Import

func (Imports) DeepCopy

func (in Imports) DeepCopy() Imports

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

func (Imports) DeepCopyInto

func (in Imports) DeepCopyInto(out *Imports)

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

type Info

type Info struct {
	Description string `json:"description,omitempty"`
	InfoURL     string `json:"info_url,omitempty"`
}

func (*Info) DeepCopy

func (in *Info) DeepCopy() *Info

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

func (*Info) DeepCopyInto

func (in *Info) DeepCopyInto(out *Info)

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

type JetStreamLimits

type JetStreamLimits struct {
	// +optional
	// +kubebuilder:default=-1
	MemoryStorage *int64 `json:"memStorage,omitempty"` // Max number of bytes stored in memory across all streams. (0 means disabled)
	// +optional
	// +kubebuilder:default=-1
	DiskStorage *int64 `json:"diskStorage,omitempty"` // Max number of bytes stored on disk across all streams. (0 means disabled)
	// +optional
	// +kubebuilder:default=-1
	Streams *int64 `json:"streams,omitempty"` // Max number of streams
	// +optional
	// +kubebuilder:default=-1
	Consumer *int64 `json:"consumer,omitempty"` // Max number of consumers
	// +optional
	// +kubebuilder:default=-1
	MaxAckPending *int64 `json:"maxAckPending,omitempty"` // Max ack pending of a Stream
	// +optional
	// +kubebuilder:default=-1
	MemoryMaxStreamBytes *int64 `json:"memMaxStreamBytes,omitempty"` // Max bytes a memory backed stream can have. (0 means disabled/unlimited)
	// +optional
	// +kubebuilder:default=-1
	DiskMaxStreamBytes *int64 `json:"diskMaxStreamBytes,omitempty"` // Max bytes a disk backed stream can have. (0 means disabled/unlimited)
	// +optional
	// +kubebuilder:default=false
	MaxBytesRequired bool `json:"maxBytesRequired,omitempty"` // Max bytes required by all Streams
}

func (*JetStreamLimits) DeepCopy

func (in *JetStreamLimits) DeepCopy() *JetStreamLimits

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

func (*JetStreamLimits) DeepCopyInto

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

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

type NatsCluster added in v0.6.0

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

	Spec   NatsClusterSpec   `json:"spec,omitempty"`
	Status NatsClusterStatus `json:"status,omitempty"`
}

NatsCluster is the Schema for the natsclusters API

func (*NatsCluster) DeepCopy added in v0.6.0

func (in *NatsCluster) DeepCopy() *NatsCluster

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

func (*NatsCluster) DeepCopyInto added in v0.6.0

func (in *NatsCluster) DeepCopyInto(out *NatsCluster)

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

func (*NatsCluster) DeepCopyObject added in v0.6.0

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

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

func (*NatsCluster) GetConditions added in v0.6.1

func (n *NatsCluster) GetConditions() *[]metav1.Condition

type NatsClusterList added in v0.6.0

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

NatsClusterList contains a list of NatsCluster

func (*NatsClusterList) DeepCopy added in v0.6.0

func (in *NatsClusterList) DeepCopy() *NatsClusterList

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

func (*NatsClusterList) DeepCopyInto added in v0.6.0

func (in *NatsClusterList) DeepCopyInto(out *NatsClusterList)

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

func (*NatsClusterList) DeepCopyObject added in v0.6.0

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

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

type NatsClusterRef added in v0.6.0

type NatsClusterRef struct {
	// Name of the NatsCluster
	Name string `json:"name"`
	// Namespace of the NatsCluster
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

NatsClusterRef references a NatsCluster resource

func (*NatsClusterRef) DeepCopy added in v0.6.0

func (in *NatsClusterRef) DeepCopy() *NatsClusterRef

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

func (*NatsClusterRef) DeepCopyInto added in v0.6.0

func (in *NatsClusterRef) DeepCopyInto(out *NatsClusterRef)

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

type NatsClusterSpec added in v0.6.0

type NatsClusterSpec struct {
	// URL is the NATS server URL for this cluster. Mutually exclusive with urlFrom.
	// +optional
	URL string `json:"url,omitempty"`

	// URLFrom loads the NATS URL from a ConfigMap or Secret. Mutually exclusive with url.
	// +optional
	URLFrom *URLFromReference `json:"urlFrom,omitempty"`

	OperatorSigningKeySecretRef     SecretKeyReference `json:"operatorSigningKeySecretRef"`
	SystemAccountUserCredsSecretRef SecretKeyReference `json:"systemAccountUserCredsSecretRef"`
}

NatsClusterSpec defines the desired state of NatsCluster +kubebuilder:validation:XValidation:rule="has(self.url) != has(self.urlFrom)",message="exactly one of url or urlFrom must be specified"

func (*NatsClusterSpec) DeepCopy added in v0.6.0

func (in *NatsClusterSpec) DeepCopy() *NatsClusterSpec

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

func (*NatsClusterSpec) DeepCopyInto added in v0.6.0

func (in *NatsClusterSpec) DeepCopyInto(out *NatsClusterSpec)

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

type NatsClusterStatus added in v0.6.1

type NatsClusterStatus struct {
	// +listType=map
	// +listMapKey=type
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	ReconcileTimestamp metav1.Time `json:"reconcileTimestamp,omitempty"`
	// +optional
	OperatorVersion string `json:"operatorVersion,omitempty"`
}

NatsClusterStatus defines the observed state of NatsCluster.

func (*NatsClusterStatus) DeepCopy added in v0.6.1

func (in *NatsClusterStatus) DeepCopy() *NatsClusterStatus

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

func (*NatsClusterStatus) DeepCopyInto added in v0.6.1

func (in *NatsClusterStatus) DeepCopyInto(out *NatsClusterStatus)

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

type NatsLimits

type NatsLimits struct {
	// +optional
	// +kubebuilder:default=-1
	Subs *int64 `json:"subs,omitempty"` // Max number of subscriptions
	// +optional
	// +kubebuilder:default=-1
	Data *int64 `json:"data,omitempty"` // Max number of bytes
	// +optional
	// +kubebuilder:default=-1
	Payload *int64 `json:"payload,omitempty"` // Max message payload
}

func (*NatsLimits) DeepCopy

func (in *NatsLimits) DeepCopy() *NatsLimits

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

func (*NatsLimits) DeepCopyInto

func (in *NatsLimits) DeepCopyInto(out *NatsLimits)

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

type Permission

type Permission struct {
	// +optional
	Allow StringList `json:"allow,omitempty"`
	// +optional
	Deny StringList `json:"deny,omitempty"`
}

Permission defines allow/deny subjects

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.

func (*Permission) Empty

func (p *Permission) Empty() bool

type Permissions

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

Permissions are used to restrict subject access, either on a user or for everyone on a server by default

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 RenamingSubject

type RenamingSubject Subject

type ResponsePermission

type ResponsePermission struct {
	// +optional
	MaxMsgs int `json:"max"`
	// +optional
	Expires time.Duration `json:"ttl"`
}

ResponsePermission can be used to allow responses to any reply subject that is received on a valid subscription.

func (*ResponsePermission) DeepCopy

func (in *ResponsePermission) DeepCopy() *ResponsePermission

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

func (*ResponsePermission) DeepCopyInto

func (in *ResponsePermission) DeepCopyInto(out *ResponsePermission)

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

type ResponseType

type ResponseType string

ResponseType is used to store an export response type +kubebuilder:validation:Enum=Singleton;Stream;Chunked

type RevocationList

type RevocationList map[string]int64

func (RevocationList) DeepCopy

func (in RevocationList) DeepCopy() RevocationList

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

func (RevocationList) DeepCopyInto

func (in RevocationList) DeepCopyInto(out *RevocationList)

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

type SamplingRate

type SamplingRate int

type SecretKeyReference added in v0.6.0

type SecretKeyReference struct {
	// Name of the Secret.
	// +required
	Name string `json:"name"`

	// Key in the Secret, when not specified an implementation-specific default key is used.
	// +optional
	Key string `json:"key,omitempty"`
}

SecretKeyReference contains information to locate a secret in the same namespace

func (*SecretKeyReference) DeepCopy added in v0.6.0

func (in *SecretKeyReference) DeepCopy() *SecretKeyReference

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

func (*SecretKeyReference) DeepCopyInto added in v0.6.0

func (in *SecretKeyReference) DeepCopyInto(out *SecretKeyReference)

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

type ServiceLatency

type ServiceLatency struct {
	Sampling SamplingRate `json:"sampling"`
	Results  Subject      `json:"results"`
}

func (*ServiceLatency) DeepCopy

func (in *ServiceLatency) DeepCopy() *ServiceLatency

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

func (*ServiceLatency) DeepCopyInto

func (in *ServiceLatency) DeepCopyInto(out *ServiceLatency)

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

type SigningKey added in v0.6.1

type SigningKey struct {
	Key string `json:"key,omitempty"`
}

func (*SigningKey) DeepCopy added in v0.6.1

func (in *SigningKey) DeepCopy() *SigningKey

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

func (*SigningKey) DeepCopyInto added in v0.6.1

func (in *SigningKey) DeepCopyInto(out *SigningKey)

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

type SigningKeys added in v0.6.1

type SigningKeys []*SigningKey

func (SigningKeys) DeepCopy added in v0.6.1

func (in SigningKeys) DeepCopy() SigningKeys

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

func (SigningKeys) DeepCopyInto added in v0.6.1

func (in SigningKeys) DeepCopyInto(out *SigningKeys)

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

type StringList

type StringList []string

StringList is a wrapper for an array of strings

func (*StringList) Add

func (u *StringList) Add(p ...string)

Add appends 1 or more strings to a list

func (*StringList) Contains

func (u *StringList) Contains(p string) bool

Contains returns true if the list contains the string

func (StringList) DeepCopy

func (in StringList) DeepCopy() StringList

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

func (StringList) DeepCopyInto

func (in StringList) DeepCopyInto(out *StringList)

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

func (*StringList) Remove

func (u *StringList) Remove(p ...string)

Remove removes 1 or more strings from a list

type Subject

type Subject string

Subject is a string that represents a NATS subject

type TagList

type TagList []string

TagList is a unique array of lower case strings All tag list methods lower case the strings in the arguments

func (*TagList) Add

func (u *TagList) Add(p ...string)

Add appends 1 or more tags to a list

func (*TagList) Contains

func (u *TagList) Contains(p string) bool

Contains returns true if the list contains the tags

func (TagList) DeepCopy

func (in TagList) DeepCopy() TagList

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

func (TagList) DeepCopyInto

func (in TagList) DeepCopyInto(out *TagList)

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

func (*TagList) Remove

func (u *TagList) Remove(p ...string)

Remove removes 1 or more tags from a list

type TimeRange

type TimeRange struct {
	Start string `json:"start,omitempty"`
	End   string `json:"end,omitempty"`
}

TimeRange is used to represent a start and end time

func (*TimeRange) DeepCopy

func (in *TimeRange) DeepCopy() *TimeRange

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

func (*TimeRange) DeepCopyInto

func (in *TimeRange) DeepCopyInto(out *TimeRange)

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

type URLFromKind added in v0.6.0

type URLFromKind string

URLFromKind is the type of resource to load the NATS URL from. +kubebuilder:validation:Enum=ConfigMap;Secret

const (
	URLFromKindConfigMap URLFromKind = "ConfigMap"
	URLFromKindSecret    URLFromKind = "Secret"
)

type URLFromReference added in v0.6.0

type URLFromReference struct {
	// Kind is the type of resource to load from: ConfigMap or Secret.
	// +required
	Kind URLFromKind `json:"kind"`

	// Name of the ConfigMap or Secret.
	// +required
	Name string `json:"name"`

	// Namespace of the resource. When empty, defaults to the NatsCluster's namespace.
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// Key in the ConfigMap or Secret whose value is the NATS URL.
	// +required
	Key string `json:"key"`
}

URLFromReference describes how to load the NATS URL from a ConfigMap or Secret.

func (*URLFromReference) DeepCopy added in v0.6.0

func (in *URLFromReference) DeepCopy() *URLFromReference

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

func (*URLFromReference) DeepCopyInto added in v0.6.0

func (in *URLFromReference) DeepCopyInto(out *URLFromReference)

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

type User

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

	Spec   UserSpec   `json:"spec,omitempty"`
	Status UserStatus `json:"status,omitempty"`
}

User is the Schema for the users API.

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject

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

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

func (*User) GetConditions

func (u *User) GetConditions() *[]metav1.Condition

func (*User) GetUserSecretName

func (u *User) GetUserSecretName() string

type UserClaims

type UserClaims struct {
	// Deprecated. Will be removed in a future release (>v0.5.0). Ref: https://github.com/WirelessCar/nauth/issues/102
	// +optional
	AccountName string `json:"accountName"`
	// DisplayName is an optional name for the NATS resource representing the user.
	// +optional
	DisplayName string `json:"displayName,omitempty"`
	// +optional
	Permissions *Permissions `json:"permissions,omitempty"`
	// +optional
	NatsLimits *NatsLimits `json:"natsLimits,omitempty"`
	// +optional
	UserLimits *UserLimits `json:"userLimits,omitempty"`
}

func (*UserClaims) DeepCopy

func (in *UserClaims) DeepCopy() *UserClaims

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

func (*UserClaims) DeepCopyInto

func (in *UserClaims) DeepCopyInto(out *UserClaims)

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

type UserLimits

type UserLimits struct {
	// +optional
	// Src is a comma separated list of CIDR specifications
	Src CIDRList `json:"src,omitempty"`
	// +optional
	Times []TimeRange `json:"times,omitempty"`
	// +optional
	Locale string `json:"timesLocation,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.

func (*UserLimits) Empty

func (u *UserLimits) Empty() bool

func (*UserLimits) IsUnlimited

func (u *UserLimits) IsUnlimited() bool

type UserList

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

UserList contains a list of User.

func (*UserList) DeepCopy

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject

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

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

type UserSpec

type UserSpec struct {
	// AccountName references the account used to create the user.
	AccountName string `json:"accountName"`
	// DisplayName is an optional name for the NATS resource representing the user. May be derived if absent.
	// +optional
	DisplayName string `json:"displayName,omitempty"`
	// +optional
	Permissions *Permissions `json:"permissions,omitempty"`
	// +optional
	UserLimits *UserLimits `json:"userLimits,omitempty"`
	// +optional
	NatsLimits *NatsLimits `json:"natsLimits,omitempty"`
}

UserSpec defines the desired state of User.

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus

type UserStatus struct {
	// +listType=map
	// +listMapKey=type
	// +patchStrategy=merge
	// +patchMergeKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
	// +optional
	Claims UserClaims `json:"claims,omitempty"`
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	ReconcileTimestamp metav1.Time `json:"reconcileTimestamp,omitempty"`
	// +optional
	OperatorVersion string `json:"operatorVersion,omitempty"`
}

UserStatus defines the observed state of User.

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

Jump to

Keyboard shortcuts

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