v1alpha1

package
v0.0.0-...-7c54378 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=nsxtfirewall.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "nsxtfirewall.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	Firewall_Kind             = "Firewall"
	Firewall_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Firewall_Kind}.String()
	Firewall_KindAPIVersion   = Firewall_Kind + "." + CRDGroupVersion.String()
	Firewall_GroupVersionKind = CRDGroupVersion.WithKind(Firewall_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

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

Functions

This section is empty.

Types

type Firewall

type Firewall struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.edgeGatewayId)",message="edgeGatewayId is a required parameter"
	// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.rule)",message="rule is a required parameter"
	Spec   FirewallSpec   `json:"spec"`
	Status FirewallStatus `json:"status,omitempty"`
}

Firewall is the Schema for the Firewalls API. Provides a resource to manage NSX-T Firewall. Firewalls allow user to control the incoming and outgoing network traffic to and from an NSX-T Data Center Edge Gateway. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vcd}

func (*Firewall) DeepCopy

func (in *Firewall) DeepCopy() *Firewall

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

func (*Firewall) DeepCopyInto

func (in *Firewall) DeepCopyInto(out *Firewall)

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

func (*Firewall) DeepCopyObject

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

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

func (*Firewall) GetCondition

func (mg *Firewall) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Firewall.

func (*Firewall) GetConnectionDetailsMapping

func (tr *Firewall) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Firewall

func (*Firewall) GetDeletionPolicy

func (mg *Firewall) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Firewall.

func (*Firewall) GetID

func (tr *Firewall) GetID() string

GetID returns ID of underlying Terraform resource of this Firewall

func (*Firewall) GetManagementPolicy

func (mg *Firewall) GetManagementPolicy() xpv1.ManagementPolicy

GetManagementPolicy of this Firewall.

func (*Firewall) GetObservation

func (tr *Firewall) GetObservation() (map[string]any, error)

GetObservation of this Firewall

func (*Firewall) GetParameters

func (tr *Firewall) GetParameters() (map[string]any, error)

GetParameters of this Firewall

func (*Firewall) GetProviderConfigReference

func (mg *Firewall) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Firewall.

func (*Firewall) GetProviderReference

func (mg *Firewall) GetProviderReference() *xpv1.Reference

GetProviderReference of this Firewall. Deprecated: Use GetProviderConfigReference.

func (*Firewall) GetPublishConnectionDetailsTo

func (mg *Firewall) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Firewall.

func (*Firewall) GetTerraformResourceType

func (mg *Firewall) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Firewall

func (*Firewall) GetTerraformSchemaVersion

func (tr *Firewall) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Firewall) GetWriteConnectionSecretToReference

func (mg *Firewall) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Firewall.

func (*Firewall) LateInitialize

func (tr *Firewall) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Firewall using its observed tfState. returns True if there are any spec changes for the resource.

func (*Firewall) SetConditions

func (mg *Firewall) SetConditions(c ...xpv1.Condition)

SetConditions of this Firewall.

func (*Firewall) SetDeletionPolicy

func (mg *Firewall) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Firewall.

func (*Firewall) SetManagementPolicy

func (mg *Firewall) SetManagementPolicy(r xpv1.ManagementPolicy)

SetManagementPolicy of this Firewall.

func (*Firewall) SetObservation

func (tr *Firewall) SetObservation(obs map[string]any) error

SetObservation for this Firewall

func (*Firewall) SetParameters

func (tr *Firewall) SetParameters(params map[string]any) error

SetParameters for this Firewall

func (*Firewall) SetProviderConfigReference

func (mg *Firewall) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Firewall.

func (*Firewall) SetProviderReference

func (mg *Firewall) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Firewall. Deprecated: Use SetProviderConfigReference.

func (*Firewall) SetPublishConnectionDetailsTo

func (mg *Firewall) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Firewall.

func (*Firewall) SetWriteConnectionSecretToReference

func (mg *Firewall) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Firewall.

type FirewallList

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

FirewallList contains a list of Firewalls

func (*FirewallList) DeepCopy

func (in *FirewallList) DeepCopy() *FirewallList

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

func (*FirewallList) DeepCopyInto

func (in *FirewallList) DeepCopyInto(out *FirewallList)

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

func (*FirewallList) DeepCopyObject

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

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

func (*FirewallList) GetItems

func (l *FirewallList) GetItems() []resource.Managed

GetItems of this FirewallList.

type FirewallObservation

type FirewallObservation struct {

	// The ID of the Edge Gateway (NSX-T only). Can be looked up using
	// vcd_nsxt_edgegateway datasource
	// Edge Gateway ID in which Firewall Rule are located
	EdgeGatewayID *string `json:"edgeGatewayId,omitempty" tf:"edge_gateway_id,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of organization to use, optional if defined at provider level. Useful
	// when connected as sysadmin working across different organisations.
	// The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organizations
	Org *string `json:"org,omitempty" tf:"org,omitempty"`

	// One or more blocks with Firewall Rule definitions
	// Ordered list of firewall rules
	Rule []RuleObservation `json:"rule,omitempty" tf:"rule,omitempty"`

	// The name of VDC to use, optional if defined at provider level
	Vdc *string `json:"vdc,omitempty" tf:"vdc,omitempty"`
}

func (*FirewallObservation) DeepCopy

func (in *FirewallObservation) DeepCopy() *FirewallObservation

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

func (*FirewallObservation) DeepCopyInto

func (in *FirewallObservation) DeepCopyInto(out *FirewallObservation)

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

type FirewallParameters

type FirewallParameters struct {

	// The ID of the Edge Gateway (NSX-T only). Can be looked up using
	// vcd_nsxt_edgegateway datasource
	// Edge Gateway ID in which Firewall Rule are located
	// +kubebuilder:validation:Optional
	EdgeGatewayID *string `json:"edgeGatewayId,omitempty" tf:"edge_gateway_id,omitempty"`

	// The name of organization to use, optional if defined at provider level. Useful
	// when connected as sysadmin working across different organisations.
	// The name of organization to use, optional if defined at provider level. Useful when connected as sysadmin working across different organizations
	// +kubebuilder:validation:Optional
	Org *string `json:"org,omitempty" tf:"org,omitempty"`

	// One or more blocks with Firewall Rule definitions
	// Ordered list of firewall rules
	// +kubebuilder:validation:Optional
	Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"`

	// The name of VDC to use, optional if defined at provider level
	// +kubebuilder:validation:Optional
	Vdc *string `json:"vdc,omitempty" tf:"vdc,omitempty"`
}

func (*FirewallParameters) DeepCopy

func (in *FirewallParameters) DeepCopy() *FirewallParameters

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

func (*FirewallParameters) DeepCopyInto

func (in *FirewallParameters) DeepCopyInto(out *FirewallParameters)

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

type FirewallSpec

type FirewallSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     FirewallParameters `json:"forProvider"`
}

FirewallSpec defines the desired state of Firewall

func (*FirewallSpec) DeepCopy

func (in *FirewallSpec) DeepCopy() *FirewallSpec

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

func (*FirewallSpec) DeepCopyInto

func (in *FirewallSpec) DeepCopyInto(out *FirewallSpec)

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

type FirewallStatus

type FirewallStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        FirewallObservation `json:"atProvider,omitempty"`
}

FirewallStatus defines the observed state of Firewall.

func (*FirewallStatus) DeepCopy

func (in *FirewallStatus) DeepCopy() *FirewallStatus

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

func (*FirewallStatus) DeepCopyInto

func (in *FirewallStatus) DeepCopyInto(out *FirewallStatus)

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

type RuleObservation

type RuleObservation struct {

	// Defines if it should ALLOW or DROP traffic
	// Defines if the rule should 'ALLOW' or 'DROP' matching traffic
	Action *string `json:"action,omitempty" tf:"action,omitempty"`

	// A set of Application Port Profiles. Leaving it empty matches Any (all)
	// A set of Application Port Profile IDs. Leaving it empty means 'Any'
	AppPortProfileIds []*string `json:"appPortProfileIds,omitempty" tf:"app_port_profile_ids,omitempty"`

	// A set of source object Firewall Groups (IP Sets or Security groups).
	// Leaving it empty matches Any (all)
	// A set of Destination Firewall Group IDs (IP Sets or Security Groups). Leaving it empty means 'Any'
	DestinationIds []*string `json:"destinationIds,omitempty" tf:"destination_ids,omitempty"`

	// One of IN, OUT, or IN_OUT
	// Direction on which Firewall Rule applies (One of 'IN', 'OUT', 'IN_OUT')
	Direction *string `json:"direction,omitempty" tf:"direction,omitempty"`

	// Defines if the rule is enabled (default true)
	// Defined if Firewall Rule is active
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Firewall Rule ID
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// One of IPV4,  IPV6, or IPV4_IPV6
	// Firewall Rule Protocol (One of 'IPV4', 'IPV6', 'IPV4_IPV6')
	IPProtocol *string `json:"ipProtocol,omitempty" tf:"ip_protocol,omitempty"`

	// Defines if logging for this rule is enabled (default false)
	// Defines if matching traffic should be logged
	Logging *bool `json:"logging,omitempty" tf:"logging,omitempty"`

	// Explanatory name for firewall rule (uniqueness not enforced)
	// Firewall Rule name
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A set of source object Firewall Groups (IP Sets or Security groups).
	// Leaving it empty matches Any (all)
	// A set of Source Firewall Group IDs (IP Sets or Security Groups). Leaving it empty means 'Any'
	SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"`
}

func (*RuleObservation) DeepCopy

func (in *RuleObservation) DeepCopy() *RuleObservation

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

func (*RuleObservation) DeepCopyInto

func (in *RuleObservation) DeepCopyInto(out *RuleObservation)

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

type RuleParameters

type RuleParameters struct {

	// Defines if it should ALLOW or DROP traffic
	// Defines if the rule should 'ALLOW' or 'DROP' matching traffic
	// +kubebuilder:validation:Required
	Action *string `json:"action" tf:"action,omitempty"`

	// A set of Application Port Profiles. Leaving it empty matches Any (all)
	// A set of Application Port Profile IDs. Leaving it empty means 'Any'
	// +kubebuilder:validation:Optional
	AppPortProfileIds []*string `json:"appPortProfileIds,omitempty" tf:"app_port_profile_ids,omitempty"`

	// A set of source object Firewall Groups (IP Sets or Security groups).
	// Leaving it empty matches Any (all)
	// A set of Destination Firewall Group IDs (IP Sets or Security Groups). Leaving it empty means 'Any'
	// +kubebuilder:validation:Optional
	DestinationIds []*string `json:"destinationIds,omitempty" tf:"destination_ids,omitempty"`

	// One of IN, OUT, or IN_OUT
	// Direction on which Firewall Rule applies (One of 'IN', 'OUT', 'IN_OUT')
	// +kubebuilder:validation:Required
	Direction *string `json:"direction" tf:"direction,omitempty"`

	// Defines if the rule is enabled (default true)
	// Defined if Firewall Rule is active
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// One of IPV4,  IPV6, or IPV4_IPV6
	// Firewall Rule Protocol (One of 'IPV4', 'IPV6', 'IPV4_IPV6')
	// +kubebuilder:validation:Required
	IPProtocol *string `json:"ipProtocol" tf:"ip_protocol,omitempty"`

	// Defines if logging for this rule is enabled (default false)
	// Defines if matching traffic should be logged
	// +kubebuilder:validation:Optional
	Logging *bool `json:"logging,omitempty" tf:"logging,omitempty"`

	// Explanatory name for firewall rule (uniqueness not enforced)
	// Firewall Rule name
	// +kubebuilder:validation:Required
	Name *string `json:"name" tf:"name,omitempty"`

	// A set of source object Firewall Groups (IP Sets or Security groups).
	// Leaving it empty matches Any (all)
	// A set of Source Firewall Group IDs (IP Sets or Security Groups). Leaving it empty means 'Any'
	// +kubebuilder:validation:Optional
	SourceIds []*string `json:"sourceIds,omitempty" tf:"source_ids,omitempty"`
}

func (*RuleParameters) DeepCopy

func (in *RuleParameters) DeepCopy() *RuleParameters

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

func (*RuleParameters) DeepCopyInto

func (in *RuleParameters) DeepCopyInto(out *RuleParameters)

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