v1alpha2

package
v0.0.0-...-f60092b Latest Latest
Warning

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

Go to latest
Published: Nov 18, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the tor v1alpha2 API group +kubebuilder:object:generate=true +groupName=tor.k8s.torproject.org

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "tor.k8s.torproject.org", Version: "v1alpha2"}

	// 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 BalancerTemplate

type BalancerTemplate struct {
	// Metadata of the pods created from this template.
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// Spec defines the behavior of a pod.
	// +optional
	Spec corev1.PodSpec `json:"spec,omitempty"`

	// Default resources for tor containers
	// +optional
	TorResources corev1.ResourceRequirements `json:"torResources,omitempty" protobuf:"bytes,8,opt,name=resources"`

	// Default resources for onionbalance containers
	// +optional
	BalancerResources corev1.ResourceRequirements `json:"balancerResources,omitempty" protobuf:"bytes,8,opt,name=resources"`
}

Template for the daemon pods.

func (*BalancerTemplate) DeepCopy

func (in *BalancerTemplate) DeepCopy() *BalancerTemplate

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

func (*BalancerTemplate) DeepCopyInto

func (in *BalancerTemplate) DeepCopyInto(out *BalancerTemplate)

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

type OnionBalancedService

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

	Spec   OnionBalancedServiceSpec   `json:"spec,omitempty"`
	Status OnionBalancedServiceStatus `json:"status,omitempty"`
}

OnionBalancedService is the Schema for the onionbalancedservices API.

func (*OnionBalancedService) BalancerResources

func (s *OnionBalancedService) BalancerResources() corev1.ResourceRequirements

func (*OnionBalancedService) ConfigMapName

func (s *OnionBalancedService) ConfigMapName() string

func (*OnionBalancedService) DeepCopy

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

func (*OnionBalancedService) DeepCopyInto

func (in *OnionBalancedService) DeepCopyInto(out *OnionBalancedService)

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

func (*OnionBalancedService) DeepCopyObject

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

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

func (*OnionBalancedService) DeploymentLabels

func (s *OnionBalancedService) DeploymentLabels() map[string]string

func (*OnionBalancedService) DeploymentName

func (s *OnionBalancedService) DeploymentName() string

func (*OnionBalancedService) IsSynced

func (s *OnionBalancedService) IsSynced() bool

func (*OnionBalancedService) OnionServiceBackendName

func (s *OnionBalancedService) OnionServiceBackendName(n int32) string

func (*OnionBalancedService) PodTemplate

func (s *OnionBalancedService) PodTemplate() corev1.PodTemplateSpec

func (*OnionBalancedService) RoleName

func (s *OnionBalancedService) RoleName() string

func (*OnionBalancedService) SecretName

func (s *OnionBalancedService) SecretName() string

func (*OnionBalancedService) ServiceAccountName

func (s *OnionBalancedService) ServiceAccountName() string

func (*OnionBalancedService) ServiceMetricsName

func (s *OnionBalancedService) ServiceMetricsName() string

func (*OnionBalancedService) ServiceMetricsSelector

func (s *OnionBalancedService) ServiceMetricsSelector() map[string]string

func (*OnionBalancedService) ServiceName

func (s *OnionBalancedService) ServiceName() string

func (*OnionBalancedService) ServiceSelector

func (s *OnionBalancedService) ServiceSelector() map[string]string

func (*OnionBalancedService) TorResources

type OnionBalancedServiceList

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

OnionBalancedServiceList contains a list of OnionBalancedService.

func (*OnionBalancedServiceList) DeepCopy

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

func (*OnionBalancedServiceList) DeepCopyInto

func (in *OnionBalancedServiceList) DeepCopyInto(out *OnionBalancedServiceList)

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

func (*OnionBalancedServiceList) DeepCopyObject

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

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

type OnionBalancedServiceSpec

type OnionBalancedServiceSpec struct {

	// +kubebuilder:validation:Minimum:=1
	// +kubebuilder:validation:Maximum:=8
	Backends int32 `json:"backends"`

	// +optional
	PrivateKeySecret SecretReference `json:"privateKeySecret,omitempty"`

	// +optional
	// +kubebuilder:validation:Enum=3
	// +kubebuilder:default:=3
	Version int32 `json:"version"`

	// +optional
	// +kubebuilder:default:=false
	ServiceMonitor bool `json:"serviceMonitor,omitempty"`

	// +optional
	Template TemplateReference `json:"template,omitempty"`

	// Template describes the balancer daemon pods that will be created.
	// +optional
	BalancerTemplate BalancerTemplate `json:"balancerTemplate,omitempty"`
}

OnionBalancedServiceSpec defines the desired state of OnionBalancedService.

func (*OnionBalancedServiceSpec) DeepCopy

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

func (*OnionBalancedServiceSpec) DeepCopyInto

func (in *OnionBalancedServiceSpec) DeepCopyInto(out *OnionBalancedServiceSpec)

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

func (*OnionBalancedServiceSpec) GetBackends

func (s *OnionBalancedServiceSpec) GetBackends() int

func (*OnionBalancedServiceSpec) GetVersion

func (s *OnionBalancedServiceSpec) GetVersion() int

type OnionBalancedServiceStatus

type OnionBalancedServiceStatus struct {
	// +optional
	Hostname string `json:"hostname,omitempty"`

	// +optional
	TargetClusterIP string `json:"targetClusterIP,omitempty"`

	// +optional
	Backends map[string]OnionServiceStatus `json:"backends,omitempty"`
}

OnionBalancedServiceStatus defines the observed state of OnionBalancedService.

func (*OnionBalancedServiceStatus) DeepCopy

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

func (*OnionBalancedServiceStatus) DeepCopyInto

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

type OnionService

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

	Spec   OnionServiceSpec   `json:"spec,omitempty"`
	Status OnionServiceStatus `json:"status,omitempty"`
}

OnionService is the Schema for the onionservices API.

func (*OnionService) AuthorizedClientsSecretName

func (s *OnionService) AuthorizedClientsSecretName() string

func (*OnionService) DeepCopy

func (in *OnionService) DeepCopy() *OnionService

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

func (*OnionService) DeepCopyInto

func (in *OnionService) DeepCopyInto(out *OnionService)

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

func (*OnionService) DeepCopyObject

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

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

func (*OnionService) DeploymentLabels

func (s *OnionService) DeploymentLabels() map[string]string

func (*OnionService) DeploymentName

func (s *OnionService) DeploymentName() string

func (*OnionService) PodTemplate

func (s *OnionService) PodTemplate() corev1.PodTemplateSpec

func (*OnionService) Resources

func (s *OnionService) Resources() corev1.ResourceRequirements

func (*OnionService) RoleName

func (s *OnionService) RoleName() string

func (*OnionService) SecretName

func (s *OnionService) SecretName() string

func (*OnionService) ServiceAccountName

func (s *OnionService) ServiceAccountName() string

func (*OnionService) ServiceMetricsName

func (s *OnionService) ServiceMetricsName() string

func (*OnionService) ServiceMetricsSelector

func (s *OnionService) ServiceMetricsSelector() map[string]string

func (*OnionService) ServiceName

func (s *OnionService) ServiceName() string

func (*OnionService) ServiceSelector

func (s *OnionService) ServiceSelector() map[string]string

type OnionServiceList

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

OnionServiceList contains a list of OnionService.

func (*OnionServiceList) DeepCopy

func (in *OnionServiceList) DeepCopy() *OnionServiceList

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

func (*OnionServiceList) DeepCopyInto

func (in *OnionServiceList) DeepCopyInto(out *OnionServiceList)

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

func (*OnionServiceList) DeepCopyObject

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

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

type OnionServiceSpec

type OnionServiceSpec struct {
	// +patchMergeKey=port
	// +patchStrategy=merge
	Rules []ServiceRule `json:"rules,omitempty" pathchStrategy:"merge" patchMergeKey:"port"`

	// Template describes the pods that will be created.
	// +optional
	Template ServicePodTemplate `json:"template,omitempty"`

	// +optional
	PrivateKeySecret SecretReference `json:"privateKeySecret,omitempty"`

	// +optional
	AuthorizedClients []SecretReference `json:"authorizedClients,omitempty"`

	// +optional
	// +kubebuilder:validation:Enum=0;2;3
	// +kubebuilder:default:=3
	Version int32 `json:"version,omitempty"`

	// +optional
	MasterOnionAddress string `json:"masterOnionAddress,omitempty"`

	// +optional
	// +kubebuilder:default:=false
	ServiceMonitor bool `json:"serviceMonitor,omitempty"`

	// +optional
	ExtraConfig string `json:"extraConfig,omitempty"`
}

OnionServiceSpec defines the desired state of OnionService.

func (*OnionServiceSpec) DeepCopy

func (in *OnionServiceSpec) DeepCopy() *OnionServiceSpec

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

func (*OnionServiceSpec) DeepCopyInto

func (in *OnionServiceSpec) DeepCopyInto(out *OnionServiceSpec)

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

func (*OnionServiceSpec) GetVersion

func (s *OnionServiceSpec) GetVersion() int

type OnionServiceStatus

type OnionServiceStatus struct {
	// +optional
	Hostname string `json:"hostname,omitempty"`

	// +optional
	TargetClusterIP string `json:"targetClusterIP,omitempty"`
}

OnionServiceStatus defines the observed state of OnionService.

func (*OnionServiceStatus) DeepCopy

func (in *OnionServiceStatus) DeepCopy() *OnionServiceStatus

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

func (*OnionServiceStatus) DeepCopyInto

func (in *OnionServiceStatus) DeepCopyInto(out *OnionServiceStatus)

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

type SecretReference

type SecretReference struct {
	// Name is unique within a namespace to reference a secret resource.
	Name string `json:"name,omitempty"`

	Key string `json:"key,omitempty"`
}

SecretReference represents a Secret Reference.

func (*SecretReference) DeepCopy

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto

func (in *SecretReference) DeepCopyInto(out *SecretReference)

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

type ServicePodTemplate

type ServicePodTemplate struct {
	// Metadata of the pods created from this template.
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// Spec defines the behavior of a pod.
	// +optional
	Spec corev1.PodSpec `json:"spec,omitempty"`

	// Default resources for containers
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"`
}

func (*ServicePodTemplate) DeepCopy

func (in *ServicePodTemplate) DeepCopy() *ServicePodTemplate

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

func (*ServicePodTemplate) DeepCopyInto

func (in *ServicePodTemplate) DeepCopyInto(out *ServicePodTemplate)

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

type ServicePort

type ServicePort struct {
	// Optional if only one ServicePort is defined on this service.
	// +optional
	Name string `json:"name,omitempty"`

	// The port that will be exposed by this service.
	PublicPort int32 `json:"publicPort"`
	// Number or name of the port to access on the pods targeted by the service.
	// Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
	// If this is a string, it will be looked up as a named port in the
	// target Pod's container ports. If this is not specified, the value
	// of the 'port' field is used (an identity map).
	// This field is ignored for services with clusterIP=None, and should be
	// omitted or set equal to the 'port' field.
	// More info: https://kubernetes.io/docs/concepts/services-networking/service/#defining-a-service
	// +optional
	TargetPort int32 `json:"targetPort,omitempty"`
}

func (*ServicePort) DeepCopy

func (in *ServicePort) DeepCopy() *ServicePort

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

func (*ServicePort) DeepCopyInto

func (in *ServicePort) DeepCopyInto(out *ServicePort)

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

type ServiceRule

type ServiceRule struct {
	// Port publish as
	Port networkingv1.ServiceBackendPort `json:"port,omitempty"`

	// Backend selector
	Backend networkingv1.IngressBackend `json:"backend,omitempty"`
}

func (*ServiceRule) DeepCopy

func (in *ServiceRule) DeepCopy() *ServiceRule

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

func (*ServiceRule) DeepCopyInto

func (in *ServiceRule) DeepCopyInto(out *ServiceRule)

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

type TemplateReference

type TemplateReference struct {
	// +optional
	Spec OnionServiceSpec `json:"spec,omitempty"`
}

func (*TemplateReference) DeepCopy

func (in *TemplateReference) DeepCopy() *TemplateReference

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

func (*TemplateReference) DeepCopyInto

func (in *TemplateReference) DeepCopyInto(out *TemplateReference)

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

type Tor

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

	Spec   TorSpec   `json:"spec,omitempty"`
	Status TorStatus `json:"status,omitempty"`
}

Tor is the Schema for the tor API.

func (*Tor) ConfigMapName

func (tor *Tor) ConfigMapName() string

func (*Tor) DeepCopy

func (in *Tor) DeepCopy() *Tor

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

func (*Tor) DeepCopyInto

func (in *Tor) DeepCopyInto(out *Tor)

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

func (*Tor) DeepCopyObject

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

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

func (*Tor) DeploymentLabels

func (tor *Tor) DeploymentLabels() map[string]string

func (*Tor) DeploymentName

func (tor *Tor) DeploymentName() string

func (*Tor) GetAllPorts

func (tor *Tor) GetAllPorts() []TorGenericPortDef

Retrieves an array of TorGenericPortDef with their protocols and port details.

func (*Tor) InstanceName

func (tor *Tor) InstanceName() string

func (*Tor) PodTemplate

func (tor *Tor) PodTemplate() corev1.PodTemplateSpec

func (*Tor) Resources

func (tor *Tor) Resources() corev1.ResourceRequirements

func (*Tor) RoleName

func (tor *Tor) RoleName() string

func (*Tor) SecretName

func (tor *Tor) SecretName() string

func (*Tor) ServiceAccountName

func (tor *Tor) ServiceAccountName() string

func (*Tor) ServiceMetricsName

func (tor *Tor) ServiceMetricsName() string

func (*Tor) ServiceMetricsSelector

func (tor *Tor) ServiceMetricsSelector() map[string]string

func (*Tor) ServiceName

func (tor *Tor) ServiceName() string

func (*Tor) ServiceSelector

func (tor *Tor) ServiceSelector() map[string]string

func (*Tor) SetTorDefaults

func (tor *Tor) SetTorDefaults()

Set default vaules port all the Tor ports.

type TorClientSpec

type TorClientSpec struct {
	// DNSPort [address:]port|auto [isolation flags]
	// +optional
	DNS TorGenericPortWithFlagSpec `json:"dns,omitempty"`

	// NATDPort [address:]port|auto [isolation flags]
	// +optional
	NATD TorGenericPortWithFlagSpec `json:"natd,omitempty"`

	// SocksPort [address:]port|unix:path|auto [flags] [isolation flags]
	// +optional
	Socks TorGenericPortWithFlagSpec `json:"socks,omitempty"`

	// HTTPTunnelPort [address:]port|auto [isolation flags]
	// +optional
	HTTPTunnel TorGenericPortWithFlagSpec `json:"httptunnel,omitempty"`

	// TransPort [address:]port|auto [isolation flags]
	// +optional
	Trans TorGenericPortWithFlagSpec `json:"trans,omitempty"`

	// TransProxyType default|TPROXY|ipfw|pf-divert
	// +optional
	TransProxyType string `json:"transproxytype,omitempty"`
}

func (*TorClientSpec) DeepCopy

func (in *TorClientSpec) DeepCopy() *TorClientSpec

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

func (*TorClientSpec) DeepCopyInto

func (in *TorClientSpec) DeepCopyInto(out *TorClientSpec)

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

type TorControlSpec

type TorControlSpec struct {
	TorGenericPortWithFlagSpec `json:",inline"`

	// Allowed control passwords as string
	// +optional
	Secret []string `json:"secret,omitempty"`

	// Allowed Control passwords as Secret object references
	// Reference to a key of a secret containing the hashed password
	// +optional
	SecretRef []corev1.SecretKeySelector `json:"secretRef,omitempty"`
}

func (*TorControlSpec) DeepCopy

func (in *TorControlSpec) DeepCopy() *TorControlSpec

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

func (*TorControlSpec) DeepCopyInto

func (in *TorControlSpec) DeepCopyInto(out *TorControlSpec)

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

type TorGenericPortDef

type TorGenericPortDef struct {
	Name     string
	Protocol string
	Port     TorGenericPortSpec
}

func (*TorGenericPortDef) DeepCopy

func (in *TorGenericPortDef) DeepCopy() *TorGenericPortDef

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

func (*TorGenericPortDef) DeepCopyInto

func (in *TorGenericPortDef) DeepCopyInto(out *TorGenericPortDef)

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

type TorGenericPortSpec

type TorGenericPortSpec struct {
	// +optional
	Enable bool `json:"enable,omitempty"`

	// +optional
	// +kubebuilder:default:=0
	Port int32 `json:"port,omitempty"`

	// +optional
	// +kubebuilder:default:={"0.0.0.0","::"}
	Address []string `json:"address,omitempty"`
}

func (*TorGenericPortSpec) DeepCopy

func (in *TorGenericPortSpec) DeepCopy() *TorGenericPortSpec

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

func (*TorGenericPortSpec) DeepCopyInto

func (in *TorGenericPortSpec) DeepCopyInto(out *TorGenericPortSpec)

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

type TorGenericPortWithFlagSpec

type TorGenericPortWithFlagSpec struct {
	TorGenericPortSpec `json:",inline"`
	Flags              []string `json:"flags,omitempty"`

	// Policy [address:]port|unix:path|auto [flags]
	// +kubebuilder:default:={"accept 0.0.0.0/0","accept ::/0"}
	// +optional
	Policy []string `json:"policy,omitempty"`
}

func (*TorGenericPortWithFlagSpec) DeepCopy

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

func (*TorGenericPortWithFlagSpec) DeepCopyInto

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

type TorList

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

TorList contains a list of Tor.

func (*TorList) DeepCopy

func (in *TorList) DeepCopy() *TorList

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

func (*TorList) DeepCopyInto

func (in *TorList) DeepCopyInto(out *TorList)

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

func (*TorList) DeepCopyObject

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

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

type TorPodTemplate

type TorPodTemplate struct {
	// Metadata of the pods created from this template.
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// Spec defines the behavior of a pod.
	// +optional
	Spec corev1.PodSpec `json:"spec,omitempty"`

	// Default resources for containers
	// +optional
	Resources corev1.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,8,opt,name=resources"`
}

func (*TorPodTemplate) DeepCopy

func (in *TorPodTemplate) DeepCopy() *TorPodTemplate

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

func (*TorPodTemplate) DeepCopyInto

func (in *TorPodTemplate) DeepCopyInto(out *TorPodTemplate)

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

type TorServerSpec

type TorServerSpec struct {
	TorGenericPortWithFlagSpec `json:",inline"`
}

func (*TorServerSpec) DeepCopy

func (in *TorServerSpec) DeepCopy() *TorServerSpec

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

func (*TorServerSpec) DeepCopyInto

func (in *TorServerSpec) DeepCopyInto(out *TorServerSpec)

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

type TorSpec

type TorSpec struct {
	// Replicas.
	// +kubebuilder:default:=1
	Replicas int32 `json:"replicas,omitempty"`

	// Template describes the pods that will be created.
	// +optional
	Template TorPodTemplate `json:"template,omitempty"`

	// Client type. Enabled by default if server options are not set.
	// +optional
	Client TorClientSpec `json:"client,omitempty"`

	// Server (ORPort)
	// +optional
	Server TorServerSpec `json:"server,omitempty"`

	// Control. Enabled by default.
	// +optional
	Control TorControlSpec `json:"control,omitempty"`

	// Metrics. Enabled by default.
	// +optional
	Metrics TorGenericPortWithFlagSpec `json:"metrics,omitempty"`

	// Create service monitor.
	// +optional
	// +kubebuilder:default:=false
	ServiceMonitor bool `json:"serviceMonitor,omitempty"`

	// Custom/advanced options.
	// Tor latest man page (asciidoc): https://gitlab.torproject.org/tpo/core/tor/-/blob/main/doc/man/tor.1.txt
	// +optional
	Config string `json:"config,omitempty"`

	// Custom/advanced options read from a ConfigMaps.
	// +optional
	ConfigMapKeyRef []corev1.ConfigMapKeySelector `json:"configMapKeyRef,omitempty"`

	// Extra arguments to pass Tor's executable
	// +optional
	ExtraArgs []string `json:"extraArgs,omitempty"`
}

TorSpec defines the desired state of Tor.

func (*TorSpec) DeepCopy

func (in *TorSpec) DeepCopy() *TorSpec

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

func (*TorSpec) DeepCopyInto

func (in *TorSpec) DeepCopyInto(out *TorSpec)

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

type TorStatus

type TorStatus struct {
	// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	Config string `json:"config,omitempty"`
}

TorStatus defines the observed state of Tor.

func (*TorStatus) DeepCopy

func (in *TorStatus) DeepCopy() *TorStatus

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

func (*TorStatus) DeepCopyInto

func (in *TorStatus) DeepCopyInto(out *TorStatus)

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