k8sshim

package
v0.0.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	GroupName                        = "clusterlink"
	Version                          = "v1alpha1"
	PrivilegedConnectivityPolicyKind = "PrivilegedConnectivityPolicy"
	ConnectivityPolicyKind           = "ConnectivityPolicy"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ConnectionAttrs

type ConnectionAttrs struct {
	Protocol string `json:"protocol"`       // TODO: only string or also int?
	Port     *int32 `json:"port,omitempty"` // if set to nil, all ports are allowed
}

ConnectionAttrs describes the combination of protocol and port used by a given connection.

type ConnectivityPolicy

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

	Spec ConnectivityPolicySpec `json:"spec"`
}

ConnectivityPolicy represents a lower-priority connectivity policy. It defines allowed/denied connectivity between two sets of workloads. Among all instances of ConnectivityPolicy, instances with Spec.Action==PolicyActionDeny take precedence over instances with Spec.Action==PolicyActionAllow.

func (*ConnectivityPolicy) ToInternal

ToInternal converts a ConnectivityPolicy into the built-in (non-k8s) ConnectivityPolicy type.

type ConnectivityPolicySpec

type ConnectivityPolicySpec struct {
	Action          policytypes.PolicyAction
	From            policytypes.WorkloadSetOrSelectorList `json:"from"`
	To              policytypes.WorkloadSetOrSelectorList `json:"to"`
	ConnectionAttrs []ConnectionAttrs                     `json:"connectionAttrs,omitempty"`
}

ConnectivityPolicySpec is a common spec for both PrivilegedConnectivityPolicy and ConnectivityPolicy.

type PrivilegedConnectivityPolicy

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

	Spec ConnectivityPolicySpec `json:"spec"`
}

PrivilegedConnectivityPolicy represents a high-priority connectivity policy which takes precedence over a regular connectivity policy. It defines allowed/denied connectivity between two sets of workloads. Among all instances of PrivilegedConnectivityPolicy, instances with Spec.Action==PolicyActionDeny take precedence over instances with Spec.Action==PolicyActionAllow.

func (*PrivilegedConnectivityPolicy) ToInternal

ToInternal converts a PrivilegedConnectivityPolicy into the built-in (non-k8s) ConnectivityPolicy type.

Jump to

Keyboard shortcuts

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