Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +groupName=transit.aviatrix.upbound.io +versionName=v1alpha1
Index ¶
- Constants
- Variables
- type BGPLanInterfacesObservation
- type BGPLanInterfacesParameters
- type Gateway
- func (in *Gateway) DeepCopy() *Gateway
- func (in *Gateway) DeepCopyInto(out *Gateway)
- func (in *Gateway) DeepCopyObject() runtime.Object
- func (mg *Gateway) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *Gateway) GetConnectionDetailsMapping() map[string]string
- func (mg *Gateway) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *Gateway) GetID() string
- func (tr *Gateway) GetObservation() (map[string]any, error)
- func (tr *Gateway) GetParameters() (map[string]any, error)
- func (mg *Gateway) GetProviderConfigReference() *xpv1.Reference
- func (mg *Gateway) GetProviderReference() *xpv1.Reference
- func (mg *Gateway) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *Gateway) GetTerraformResourceType() string
- func (tr *Gateway) GetTerraformSchemaVersion() int
- func (mg *Gateway) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *Gateway) LateInitialize(attrs []byte) (bool, error)
- func (mg *Gateway) SetConditions(c ...xpv1.Condition)
- func (mg *Gateway) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (tr *Gateway) SetObservation(obs map[string]any) error
- func (tr *Gateway) SetParameters(params map[string]any) error
- func (mg *Gateway) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *Gateway) SetProviderReference(r *xpv1.Reference)
- func (mg *Gateway) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *Gateway) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type GatewayList
- type GatewayObservation
- type GatewayParameters
- type GatewayPeering
- func (in *GatewayPeering) DeepCopy() *GatewayPeering
- func (in *GatewayPeering) DeepCopyInto(out *GatewayPeering)
- func (in *GatewayPeering) DeepCopyObject() runtime.Object
- func (mg *GatewayPeering) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (tr *GatewayPeering) GetConnectionDetailsMapping() map[string]string
- func (mg *GatewayPeering) GetDeletionPolicy() xpv1.DeletionPolicy
- func (tr *GatewayPeering) GetID() string
- func (tr *GatewayPeering) GetObservation() (map[string]any, error)
- func (tr *GatewayPeering) GetParameters() (map[string]any, error)
- func (mg *GatewayPeering) GetProviderConfigReference() *xpv1.Reference
- func (mg *GatewayPeering) GetProviderReference() *xpv1.Reference
- func (mg *GatewayPeering) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
- func (mg *GatewayPeering) GetTerraformResourceType() string
- func (tr *GatewayPeering) GetTerraformSchemaVersion() int
- func (mg *GatewayPeering) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (tr *GatewayPeering) LateInitialize(attrs []byte) (bool, error)
- func (mg *GatewayPeering) SetConditions(c ...xpv1.Condition)
- func (mg *GatewayPeering) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (tr *GatewayPeering) SetObservation(obs map[string]any) error
- func (tr *GatewayPeering) SetParameters(params map[string]any) error
- func (mg *GatewayPeering) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *GatewayPeering) SetProviderReference(r *xpv1.Reference)
- func (mg *GatewayPeering) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
- func (mg *GatewayPeering) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type GatewayPeeringList
- type GatewayPeeringObservation
- type GatewayPeeringParameters
- type GatewayPeeringSpec
- type GatewayPeeringStatus
- type GatewaySpec
- type GatewayStatus
- type HaBGPLanInterfacesObservation
- type HaBGPLanInterfacesParameters
Constants ¶
const ( CRDGroup = "transit.aviatrix.upbound.io" CRDVersion = "v1alpha1" )
Package type metadata.
Variables ¶
var ( Gateway_Kind = "Gateway" Gateway_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Gateway_Kind}.String() Gateway_KindAPIVersion = Gateway_Kind + "." + CRDGroupVersion.String() Gateway_GroupVersionKind = CRDGroupVersion.WithKind(Gateway_Kind) )
Repository type metadata.
var ( GatewayPeering_Kind = "GatewayPeering" GatewayPeering_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: GatewayPeering_Kind}.String() GatewayPeering_KindAPIVersion = GatewayPeering_Kind + "." + CRDGroupVersion.String() GatewayPeering_GroupVersionKind = CRDGroupVersion.WithKind(GatewayPeering_Kind) )
Repository type metadata.
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 BGPLanInterfacesObservation ¶
type BGPLanInterfacesObservation struct { }
func (*BGPLanInterfacesObservation) DeepCopy ¶
func (in *BGPLanInterfacesObservation) DeepCopy() *BGPLanInterfacesObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPLanInterfacesObservation.
func (*BGPLanInterfacesObservation) DeepCopyInto ¶
func (in *BGPLanInterfacesObservation) DeepCopyInto(out *BGPLanInterfacesObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BGPLanInterfacesParameters ¶
type BGPLanInterfacesParameters struct { // A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". NOTE: If using // Subnet Info. // +kubebuilder:validation:Required Subnet *string `json:"subnet" tf:"subnet,omitempty"` // VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq". // VPC-ID of GCP cloud provider. // +kubebuilder:validation:Required VPCID *string `json:"vpcId" tf:"vpc_id,omitempty"` }
func (*BGPLanInterfacesParameters) DeepCopy ¶
func (in *BGPLanInterfacesParameters) DeepCopy() *BGPLanInterfacesParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BGPLanInterfacesParameters.
func (*BGPLanInterfacesParameters) DeepCopyInto ¶
func (in *BGPLanInterfacesParameters) DeepCopyInto(out *BGPLanInterfacesParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Gateway ¶
type Gateway struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GatewaySpec `json:"spec"` Status GatewayStatus `json:"status,omitempty"` }
Gateway is the Schema for the Gateways API. Creates and manages the Aviatrix Transit Network gateways +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,aviatrix}
func (*Gateway) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gateway.
func (*Gateway) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Gateway) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Gateway) GetCondition ¶
func (mg *Gateway) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this Gateway.
func (*Gateway) GetConnectionDetailsMapping ¶
GetConnectionDetailsMapping for this Gateway
func (*Gateway) GetDeletionPolicy ¶
func (mg *Gateway) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this Gateway.
func (*Gateway) GetObservation ¶
GetObservation of this Gateway
func (*Gateway) GetParameters ¶
GetParameters of this Gateway
func (*Gateway) GetProviderConfigReference ¶
GetProviderConfigReference of this Gateway.
func (*Gateway) GetProviderReference ¶
GetProviderReference of this Gateway. Deprecated: Use GetProviderConfigReference.
func (*Gateway) GetPublishConnectionDetailsTo ¶
func (mg *Gateway) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this Gateway.
func (*Gateway) GetTerraformResourceType ¶
GetTerraformResourceType returns Terraform resource type for this Gateway
func (*Gateway) GetTerraformSchemaVersion ¶
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*Gateway) GetWriteConnectionSecretToReference ¶
func (mg *Gateway) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this Gateway.
func (*Gateway) LateInitialize ¶
LateInitialize this Gateway using its observed tfState. returns True if there are any spec changes for the resource.
func (*Gateway) SetConditions ¶
SetConditions of this Gateway.
func (*Gateway) SetDeletionPolicy ¶
func (mg *Gateway) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this Gateway.
func (*Gateway) SetObservation ¶
SetObservation for this Gateway
func (*Gateway) SetParameters ¶
SetParameters for this Gateway
func (*Gateway) SetProviderConfigReference ¶
SetProviderConfigReference of this Gateway.
func (*Gateway) SetProviderReference ¶
SetProviderReference of this Gateway. Deprecated: Use SetProviderConfigReference.
func (*Gateway) SetPublishConnectionDetailsTo ¶
func (mg *Gateway) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this Gateway.
func (*Gateway) SetWriteConnectionSecretToReference ¶
func (mg *Gateway) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this Gateway.
type GatewayList ¶
type GatewayList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Gateway `json:"items"` }
GatewayList contains a list of Gateways
func (*GatewayList) DeepCopy ¶
func (in *GatewayList) DeepCopy() *GatewayList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayList.
func (*GatewayList) DeepCopyInto ¶
func (in *GatewayList) DeepCopyInto(out *GatewayList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayList) DeepCopyObject ¶
func (in *GatewayList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GatewayList) GetItems ¶
func (l *GatewayList) GetItems() []resource.Managed
GetItems of this GatewayList.
type GatewayObservation ¶
type GatewayObservation struct { // List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+. // List of available BGP LAN interface IPs for transit external device connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+. BGPLanIPList []*string `json:"bgpLanIpList,omitempty" tf:"bgp_lan_ip_list,omitempty"` // Cloud instance ID of the transit gateway. // Instance ID of the transit gateway. CloudInstanceID *string `json:"cloudInstanceId,omitempty" tf:"cloud_instance_id,omitempty"` // List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+. // List of available BGP LAN interface IPs for transit external device HA connection creation. Only supports GCP and Azure. Available as of provider version R2.21.0+. HaBGPLanIPList []*string `json:"haBgpLanIpList,omitempty" tf:"ha_bgp_lan_ip_list,omitempty"` // Cloud instance ID of the HA transit gateway. // Cloud instance ID of HA transit gateway. HaCloudInstanceID *string `json:"haCloudInstanceId,omitempty" tf:"ha_cloud_instance_id,omitempty"` // Aviatrix transit gateway unique name of HA transit gateway. // Aviatrix transit gateway unique name of HA transit gateway. HaGwName *string `json:"haGwName,omitempty" tf:"ha_gw_name,omitempty"` // The image version of the HA gateway. Use aviatrix_gateway_image data source to programmatically retrieve this value for the desired ha_software_version. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the aviatrix_controller_config resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0. // ha_image_version can be used to set the desired image version of the HA gateway. If set, we will attempt to update the gateway to the specified version. HaImageVersion *string `json:"haImageVersion,omitempty" tf:"ha_image_version,omitempty"` // LAN interface CIDR of the HA transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.18+. // Transit gateway lan interface cidr for the HA gateway. HaLanInterfaceCidr *string `json:"haLanInterfaceCidr,omitempty" tf:"ha_lan_interface_cidr,omitempty"` // Private IP address of the HA transit gateway created. // Private IP address of HA transit gateway. HaPrivateIP *string `json:"haPrivateIp,omitempty" tf:"ha_private_ip,omitempty"` // Public IP address of the HA Transit Gateway. // Public IP address of the HA Transit Gateway. HaPublicIP *string `json:"haPublicIp,omitempty" tf:"ha_public_ip,omitempty"` // HA security group used for the transit gateway. // HA security group used for the transit gateway. HaSecurityGroupID *string `json:"haSecurityGroupId,omitempty" tf:"ha_security_group_id,omitempty"` // The software version of the HA gateway. If set, we will attempt to update the HA gateway to the specified version if current version is different. If left blank, the HA gateway upgrade can be managed with the aviatrix_controller_config resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0. // ha_software_version can be used to set the desired software version of the HA gateway. If set, we will attempt to update the gateway to the specified version. If left blank, the gateway software version will continue to be managed through the aviatrix_controller_config resource. HaSoftwareVersion *string `json:"haSoftwareVersion,omitempty" tf:"ha_software_version,omitempty"` ID *string `json:"id,omitempty" tf:"id,omitempty"` // The image version of the gateway. Use aviatrix_gateway_image data source to programmatically retrieve this value for the desired software_version. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrades can be managed with the aviatrix_controller_config resource. Type: String. Example: "hvm-cloudx-aws-022021". Available as of provider version R2.20.0. // image_version can be used to set the desired image version of the gateway. If set, we will attempt to update the gateway to the specified version. ImageVersion *string `json:"imageVersion,omitempty" tf:"image_version,omitempty"` // LAN interface CIDR of the transit gateway created (will be used when enabling FQDN Firenet in Azure). Available in provider version R2.17.1+. // Transit gateway lan interface cidr. LanInterfaceCidr *string `json:"lanInterfaceCidr,omitempty" tf:"lan_interface_cidr,omitempty"` // Private IP address of the transit gateway created. // Private IP address of the transit gateway created. PrivateIP *string `json:"privateIp,omitempty" tf:"private_ip,omitempty"` // Public IP address of the Transit Gateway created. // Public IP address of the Transit Gateway created. PublicIP *string `json:"publicIp,omitempty" tf:"public_ip,omitempty"` // Security group used for the transit gateway. // Security group used for the transit gateway. SecurityGroupID *string `json:"securityGroupId,omitempty" tf:"security_group_id,omitempty"` // The software version of the gateway. If set, we will attempt to update the gateway to the specified version if current version is different. If left blank, the gateway upgrade can be managed with the aviatrix_controller_config resource. Type: String. Example: "6.5.821". Available as of provider version R2.20.0. // software_version can be used to set the desired software version of the gateway. If set, we will attempt to update the gateway to the specified version. If left blank, the gateway software version will continue to be managed through the aviatrix_controller_config resource. SoftwareVersion *string `json:"softwareVersion,omitempty" tf:"software_version,omitempty"` }
func (*GatewayObservation) DeepCopy ¶
func (in *GatewayObservation) DeepCopy() *GatewayObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayObservation.
func (*GatewayObservation) DeepCopyInto ¶
func (in *GatewayObservation) DeepCopyInto(out *GatewayObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayParameters ¶
type GatewayParameters struct { // This parameter represents the name of a Cloud-Account in Aviatrix controller. // This parameter represents the name of a Cloud-Account in Aviatrix controller. // +kubebuilder:validation:Required AccountName *string `json:"accountName" tf:"account_name,omitempty"` // When value is false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. Available in Controller 4.7+. Valid values: true, false. Default: true. // If false, reuse an idle address in Elastic IP pool for this gateway. Otherwise, allocate a new Elastic IP and use it for this gateway. // +kubebuilder:validation:Optional AllocateNewEIP *bool `json:"allocateNewEip,omitempty" tf:"allocate_new_eip,omitempty"` // A set of approved learned CIDRs. Only valid when enable_learned_cidrs_approval is set to true. Example: ["10.250.0.0/16", "10.251.0.0/16"]. Available as of provider version R2.21+. // Approved learned CIDRs. Available as of provider version R2.21+. // +kubebuilder:validation:Optional ApprovedLearnedCidrs []*string `json:"approvedLearnedCidrs,omitempty" tf:"approved_learned_cidrs,omitempty"` // Availability domain. Required and valid only for OCI. Available as of provider version R2.19.3. // Availability domain for OCI. // +kubebuilder:validation:Optional AvailabilityDomain *string `json:"availabilityDomain,omitempty" tf:"availability_domain,omitempty"` // Name of public IP Address resource and its resource group in Azure to be assigned to the Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if allocate_new_eip is false and cloud_type is Azure, AzureGov or AzureChina. Available as of provider version 2.20+. // The name of the public IP address and its resource group in Azure to assign to this Transit Gateway. // +kubebuilder:validation:Optional AzureEIPNameResourceGroup *string `json:"azureEipNameResourceGroup,omitempty" tf:"azure_eip_name_resource_group,omitempty"` // Enable Equal Cost Multi Path (ECMP) routing for the next hop. Default value: false. // Enable Equal Cost Multi Path (ECMP) routing for the next hop. // +kubebuilder:validation:Optional BGPEcmp *bool `json:"bgpEcmp,omitempty" tf:"bgp_ecmp,omitempty"` // BGP hold time. Unit is in seconds. Valid values are between 12 and 360. Default value: 180. // BGP Hold Time. // +kubebuilder:validation:Optional BGPHoldTime *float64 `json:"bgpHoldTime,omitempty" tf:"bgp_hold_time,omitempty"` // Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. Each interface has the following attributes: // Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit. // +kubebuilder:validation:Optional BGPLanInterfaces []BGPLanInterfacesParameters `json:"bgpLanInterfaces,omitempty" tf:"bgp_lan_interfaces,omitempty"` // Number of interfaces that will be created for BGP over LAN enabled Azure transit. Applies on HA Transit as well if enabled. Valid value: 1~5 for FireNet case, 1~7 for Non-FireNet case. Available as of provider version R2.22+. Updatable as of provider version 3.0.3+. // Number of interfaces that will be created for BGP over LAN enabled Azure transit. Applies on HA Transit as well if enabled. Updatable as of provider version 3.0.3+. // +kubebuilder:validation:Optional BGPLanInterfacesCount *float64 `json:"bgpLanInterfacesCount,omitempty" tf:"bgp_lan_interfaces_count,omitempty"` // Intended CIDR list to be advertised to external BGP router. Example: "10.2.0.0/16,10.4.0.0/16". Available as of R2.6. NOTE: If previously enabled through vgw_conn resource prior to provider version R2.6, please see notes // Intended CIDR list to be advertised to external bgp router. // +kubebuilder:validation:Optional BGPManualSpokeAdvertiseCidrs *string `json:"bgpManualSpokeAdvertiseCidrs,omitempty" tf:"bgp_manual_spoke_advertise_cidrs,omitempty"` // BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. Default value: "50". // BGP route polling time. Unit is in seconds. Valid values are between 10 and 50. // +kubebuilder:validation:Optional BGPPollingTime *string `json:"bgpPollingTime,omitempty" tf:"bgp_polling_time,omitempty"` // Type of cloud service provider, requires an integer value. Currently only AWS(1), GCP(4), Azure(8), OCI(16), AzureGov(32), AWSGov(256), AWSChina(1024), AzureChina(2048), Alibaba Cloud(8192), AWS Top Secret(16384) and AWS Secret (32768) are supported. // Type of cloud service provider, requires an integer value. Use 1 for AWS. // +kubebuilder:validation:Required CloudType *float64 `json:"cloudType" tf:"cloud_type,omitempty"` // Specify Connected Transit status. If enabled, it allows spokes to run traffics to other spokes via transit gateway. Valid values: true, false. Default value: false. // Specify Connected Transit status. // +kubebuilder:validation:Optional ConnectedTransit *bool `json:"connectedTransit,omitempty" tf:"connected_transit,omitempty"` // Customer managed key ID. // Customer managed key ID. // +kubebuilder:validation:Optional CustomerManagedKeysSecretRef *v1.SecretKeySelector `json:"customerManagedKeysSecretRef,omitempty" tf:"-"` // A list of comma-separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. Example: "10.0.0.0/16,10.2.0.0/16". // A list of comma separated CIDRs to be customized for the spoke VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. It applies to all spoke gateways attached to this transit gateway. // +kubebuilder:validation:Optional CustomizedSpokeVPCRoutes *string `json:"customizedSpokeVpcRoutes,omitempty" tf:"customized_spoke_vpc_routes,omitempty"` // A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs. To be effective, enable_advertise_transit_cidr or firewall management access for a Transit FireNet gateway must be enabled. Example: ["10.0.0.0/16", "10.2.0.0/16"]. // A list of CIDRs to be customized for the transit VPC routes. When configured, it will replace all learned routes in VPC routing tables, including RFC1918 and non-RFC1918 CIDRs.To be effective, `enable_advertise_transit_cidr` or firewall management access for a transit firenet gateway must be enabled. // +kubebuilder:validation:Optional CustomizedTransitVPCRoutes []*string `json:"customizedTransitVpcRoutes,omitempty" tf:"customized_transit_vpc_routes,omitempty"` // Required when allocate_new_eip is false. It uses the specified EIP for this gateway. Available in Controller version 4.7+. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret. // Required when allocate_new_eip is false. It uses specified EIP for this gateway. // +kubebuilder:validation:Optional EIP *string `json:"eip,omitempty" tf:"eip,omitempty"` // Enables Active-Standby Mode. Available only with HA enabled. Valid values: true, false. Default value: false. Available in provider version R2.17.1+. // Enables Active-Standby Mode, available only with HA enabled. // +kubebuilder:validation:Optional EnableActiveStandby *bool `json:"enableActiveStandby,omitempty" tf:"enable_active_standby,omitempty"` // Enables Preemptive Mode for Active-Standby. Available only with BGP enabled, HA enabled and Active-Standby enabled. Valid values: true, false. Default value: false. // Enables Preemptive Mode for Active-Standby, available only with Active-Standby enabled. // +kubebuilder:validation:Optional EnableActiveStandbyPreemptive *bool `json:"enableActiveStandbyPreemptive,omitempty" tf:"enable_active_standby_preemptive,omitempty"` // Switch to enable/disable advertise transit VPC network CIDR for a VGW connection. Available as of R2.6. NOTE: If previously enabled through vgw_conn resource prior to provider version R2.6, please see notes // Switch to Enable/Disable advertise transit VPC network CIDR. // +kubebuilder:validation:Optional EnableAdvertiseTransitCidr *bool `json:"enableAdvertiseTransitCidr,omitempty" tf:"enable_advertise_transit_cidr,omitempty"` // Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Must be enabled to create a BGP over LAN aviatrix_transit_external_device_conn resource with this Transit Gateway. Only valid for GCP (4), Azure (8), AzureGov (32) or AzureChina (2048). Valid values: true or false. Default value: false. Available as of provider version R2.18+. Updatable as of provider version 3.0.3+. // Pre-allocate a network interface(eth4) for "BGP over LAN" functionality. Only valid for cloud_type = 4 (GCP) and 8 (Azure). Valid values: true or false. Default value: false. Available as of provider version R2.18+. Updatable as of provider version 3.0.3+. // +kubebuilder:validation:Optional EnableBGPOverLan *bool `json:"enableBgpOverLan,omitempty" tf:"enable_bgp_over_lan,omitempty"` // Enable Egress Transit FireNet. Valid values: true, false. Default value: false. Available in provider version R2.16.3+. // Specify whether to enable egress transit firenet interfaces or not. // +kubebuilder:validation:Optional EnableEgressTransitFirenet *bool `json:"enableEgressTransitFirenet,omitempty" tf:"enable_egress_transit_firenet,omitempty"` // Enable EBS volume encryption for Gateway. Only supports AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false. // Enable encrypt gateway EBS volume. Only supported for AWS and AWSGov providers. Valid values: true, false. Default value: false. // +kubebuilder:validation:Optional EnableEncryptVolume *bool `json:"enableEncryptVolume,omitempty" tf:"enable_encrypt_volume,omitempty"` // Set to true to use gateway for legacy AWS TGW-based FireNet connection. Valid values: true, false. Default value: false. NOTE: If previously using an older provider version R2.5 where attribute name was // Specify whether to enable firenet interfaces or not. // +kubebuilder:validation:Optional EnableFirenet *bool `json:"enableFirenet,omitempty" tf:"enable_firenet,omitempty"` // Enable FireNet interfaces with AWS Gateway Load Balancer. Only valid when enable_firenet or enable_transit_firenet are set to true and cloud_type = 1 (AWS). Currently, AWS Gateway Load Balancer is only supported in AWS regions: us-west-2, us-east-1, eu-west-1, ap-southeast-2 and sa-east-1. Valid values: true or false. Default value: false. Available as of provider version R2.18+. // Enable firenet interfaces with AWS Gateway Load Balancer. Only valid when `enable_firenet` or `enable_transit_firenet` are set to true and `cloud_type` = 1 (AWS). Currently AWS Gateway Load Balancer is only supported in AWS regions us-west-2 and us-east-1. Valid values: true or false. Default value: false. // +kubebuilder:validation:Optional EnableGatewayLoadBalancer *bool `json:"enableGatewayLoadBalancer,omitempty" tf:"enable_gateway_load_balancer,omitempty"` // Enable GRO/GSO for this transit gateway. Default value is true. Available in provider R3.1.0+. // Specify whether to disable GRO/GSO or not. // +kubebuilder:validation:Optional EnableGroGso *bool `json:"enableGroGso,omitempty" tf:"enable_gro_gso,omitempty"` // Sign of readiness for AWS TGW connection. Only supported for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Example: false. // Sign of readiness for TGW connection. // +kubebuilder:validation:Optional EnableHybridConnection *bool `json:"enableHybridConnection,omitempty" tf:"enable_hybrid_connection,omitempty"` // Enable jumbo frames for this transit gateway. Default value is true. // Enable jumbo frame support for transit gateway. Valid values: true or false. Default value: true. // +kubebuilder:validation:Optional EnableJumboFrame *bool `json:"enableJumboFrame,omitempty" tf:"enable_jumbo_frame,omitempty"` // Switch to enable/disable encrypted transit approval for transit gateway. Valid values: true, false. Default value: false. // Switch to enable/disable encrypted transit approval for transit Gateway. Valid values: true, false. // +kubebuilder:validation:Optional EnableLearnedCidrsApproval *bool `json:"enableLearnedCidrsApproval,omitempty" tf:"enable_learned_cidrs_approval,omitempty"` // If set to true, the Monitor Gateway Subnets feature is enabled. Default value is false. Available in provider version R2.18+. // Enable [monitor gateway subnets](https://docs.aviatrix.com/HowTos/gateway.html#monitor-gateway-subnet). Only valid for cloud_type = 1 (AWS) or 256 (AWSGov). Valid values: true, false. Default value: false. // +kubebuilder:validation:Optional EnableMonitorGatewaySubnets *bool `json:"enableMonitorGatewaySubnets,omitempty" tf:"enable_monitor_gateway_subnets,omitempty"` // Enable Multi-tier Transit mode on transit gateway. When enabled, transit gateway will propagate routes it receives from its transit peering peer to other transit peering peers. local_as_number is required. Default value: false. Available as of provider version R2.19+. // Enable Multi-tier Transit mode on transit gateway. // +kubebuilder:validation:Optional EnableMultiTierTransit *bool `json:"enableMultiTierTransit,omitempty" tf:"enable_multi_tier_transit,omitempty"` // Enable preserve as_path when advertising manual summary cidrs on transit gateway. Valid values: true, false. Default value: false. Available as of provider version R.2.22.1+. // Enable preserve as_path when advertising manual summary cidrs on transit gateway. // +kubebuilder:validation:Optional EnablePreserveAsPath *bool `json:"enablePreserveAsPath,omitempty" tf:"enable_preserve_as_path,omitempty"` // Enable Private OOB feature. Only available for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret. Valid values: true, false. Default value: false. // Enable private OOB. // +kubebuilder:validation:Optional EnablePrivateOob *bool `json:"enablePrivateOob,omitempty" tf:"enable_private_oob,omitempty"` // Enable S2C receive packet CPU re-balancing on transit gateway. Valid values: true, false. Default value: false. Available in provider version R2.21.2+. // Enable S2C receive packet CPU re-balancing on transit gateway. // +kubebuilder:validation:Optional EnableS2CRxBalancing *bool `json:"enableS2CRxBalancing,omitempty" tf:"enable_s2c_rx_balancing,omitempty"` // Enable transit gateway for segmentation. Valid values: true, false. Default: false. // Enable segmentation to allow association of transit gateway to security domains. // +kubebuilder:validation:Optional EnableSegmentation *bool `json:"enableSegmentation,omitempty" tf:"enable_segmentation,omitempty"` // Enable spot instance. NOT supported for production deployment. // Enable spot instance. NOT supported for production deployment. // +kubebuilder:validation:Optional EnableSpotInstance *bool `json:"enableSpotInstance,omitempty" tf:"enable_spot_instance,omitempty"` // Set to true to use gateway for Transit FireNet connection. Valid values: true, false. Default value: false. Available in provider version R2.12+. // Specify whether to enable transit firenet interfaces or not. // +kubebuilder:validation:Optional EnableTransitFirenet *bool `json:"enableTransitFirenet,omitempty" tf:"enable_transit_firenet,omitempty"` // Enable summarize CIDR to TGW. Valid values: true, false. Default value: false. // Enable summarize CIDR to TGW. // +kubebuilder:validation:Optional EnableTransitSummarizeCidrToTgw *bool `json:"enableTransitSummarizeCidrToTgw,omitempty" tf:"enable_transit_summarize_cidr_to_tgw,omitempty"` // Enable VPC DNS Server for Gateway. Currently only supported for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, Alibaba Cloud, AWS Top Secret and AWS Secret gateways. Valid values: true, false. Default value: false. // Enable vpc_dns_server for Gateway. Valid values: true, false. // +kubebuilder:validation:Optional EnableVPCDNSServer *bool `json:"enableVpcDnsServer,omitempty" tf:"enable_vpc_dns_server,omitempty"` // A list of comma-separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. Example: "10.4.0.0/16,10.5.0.0/16". // A list of comma separated CIDRs to be advertised to on-prem as 'Excluded CIDR List'. When configured, it inspects all the advertised CIDRs from its spoke gateways and remove those included in the 'Excluded CIDR List'. // +kubebuilder:validation:Optional ExcludedAdvertisedSpokeRoutes *string `json:"excludedAdvertisedSpokeRoutes,omitempty" tf:"excluded_advertised_spoke_routes,omitempty"` // Fault domain. Required and valid only for OCI. Available as of provider version R2.19.3. // Fault domain for OCI. // +kubebuilder:validation:Optional FaultDomain *string `json:"faultDomain,omitempty" tf:"fault_domain,omitempty"` // A list of comma-separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. Example: "10.2.0.0/16,10.3.0.0/16". // A list of comma separated CIDRs to be filtered from the spoke VPC route table. When configured, filtering CIDR(s) or it’s subnet will be deleted from VPC routing tables as well as from spoke gateway’s routing table. It applies to all spoke gateways attached to this transit gateway. // +kubebuilder:validation:Optional FilteredSpokeVPCRoutes *string `json:"filteredSpokeVpcRoutes,omitempty" tf:"filtered_spoke_vpc_routes,omitempty"` // Size of the gateway instance. Example: AWS: "t2.large", Azure/AzureGov: "Standard_B1s", OCI: "VM.Standard2.2", GCP: "n1-standard-1", AWSGov: "t2.large", AWSChina: "t2.large", AzureChina: "Standard_A0". // Size of the gateway instance. // +kubebuilder:validation:Required GwSize *string `json:"gwSize" tf:"gw_size,omitempty"` // HA gateway availability domain. Required and valid only for OCI. Available as of provider version R2.19.3. // HA availability domain for OCI. // +kubebuilder:validation:Optional HaAvailabilityDomain *string `json:"haAvailabilityDomain,omitempty" tf:"ha_availability_domain,omitempty"` // Name of public IP Address resource and its resource group in Azure to be assigned to the HA Transit Gateway instance. Example: "IP_Name:Resource_Group_Name". Required if ha_eip is set and cloud_type is Azure, AzureGov or AzureChina. Available as of provider version 2.20+. // The name of the public IP address and its resource group in Azure to assign to the HA Transit Gateway. // +kubebuilder:validation:Optional HaAzureEIPNameResourceGroup *string `json:"haAzureEipNameResourceGroup,omitempty" tf:"ha_azure_eip_name_resource_group,omitempty"` // Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP Transit HA. Each interface has the following attributes: // Interfaces to run BGP protocol on top of the ethernet interface, to connect to the onprem/remote peer. Only available for GCP HA Transit. // +kubebuilder:validation:Optional HaBGPLanInterfaces []HaBGPLanInterfacesParameters `json:"haBgpLanInterfaces,omitempty" tf:"ha_bgp_lan_interfaces,omitempty"` // Public IP address that you want to assign to the HA peering instance. If no value is given, a new EIP will automatically be allocated. Only available for AWS, GCP, Azure, OCI, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret. // Public IP address that you want assigned to the HA Transit Gateway. // +kubebuilder:validation:Optional HaEIP *string `json:"haEip,omitempty" tf:"ha_eip,omitempty"` // HA gateway fault domain. Required and valid only for OCI. Available as of provider version R2.19.3. // HA fault domain for OCI. // +kubebuilder:validation:Optional HaFaultDomain *string `json:"haFaultDomain,omitempty" tf:"ha_fault_domain,omitempty"` // HA Gateway Size. Mandatory if enabling HA. Example: "t2.micro". // HA Gateway Size. Mandatory if HA is enabled (ha_subnet is set). // +kubebuilder:validation:Optional HaGwSize *string `json:"haGwSize,omitempty" tf:"ha_gw_size,omitempty"` // AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret if insane_mode is enabled and ha_subnet is set. Example: AWS: "us-west-1a". // AZ of subnet being created for Insane Mode Transit HA Gateway. Required for AWS if insane_mode is enabled and ha_subnet is set. // +kubebuilder:validation:Optional HaInsaneModeAz *string `json:"haInsaneModeAz,omitempty" tf:"ha_insane_mode_az,omitempty"` // HA OOB availability zone. Required if enabling Private OOB and HA. Example: "us-west-1b". // OOB HA availability zone. // +kubebuilder:validation:Optional HaOobAvailabilityZone *string `json:"haOobAvailabilityZone,omitempty" tf:"ha_oob_availability_zone,omitempty"` // HA OOB management subnet. Required if enabling Private OOB and HA. Example: "11.0.0.48/28". // OOB HA management subnet. // +kubebuilder:validation:Optional HaOobManagementSubnet *string `json:"haOobManagementSubnet,omitempty" tf:"ha_oob_management_subnet,omitempty"` // Availability Zone of the HA subnet. Required when Private Mode is enabled on the Controller and cloud_type is AWS or AWSGov with HA. Available in Provider version R2.23+. // Private Mode HA subnet availability zone. // +kubebuilder:validation:Optional HaPrivateModeSubnetZone *string `json:"haPrivateModeSubnetZone,omitempty" tf:"ha_private_mode_subnet_zone,omitempty"` // HA Subnet CIDR. Required only if enabling HA for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, OCI, Alibaba Cloud, AWS Top Secret or AWS Secret gateways. Optional for GCP. Setting to empty/unsetting will disable HA. Setting to a valid subnet CIDR will create an HA gateway on the subnet. Example: "10.12.0.0/24". // HA Subnet. Required for enabling HA for AWS/AWSGov/AWSChina/Azure/OCI/Alibaba Cloud. Optional for enabling HA for GCP gateway. // +kubebuilder:validation:Optional HaSubnet *string `json:"haSubnet,omitempty" tf:"ha_subnet,omitempty"` // HA Zone. Required if enabling HA for GCP gateway. Optional if enabling HA for Azure gateway. For GCP, setting to empty/unsetting will disable HA and setting to a valid zone will create an HA gateway in the zone. Example: "us-west1-c". For Azure, this is an optional parameter to place the HA gateway in a specific availability zone. Valid values for Azure gateways are in the form "az-n". Example: "az-2". Available for Azure as of provider version R2.17+. // HA Zone. Required if enabling HA for GCP. Optional for Azure. // +kubebuilder:validation:Optional HaZone *string `json:"haZone,omitempty" tf:"ha_zone,omitempty"` // , please see notes here. // Enable Insane Mode for Transit. Valid values: true, false. Supported for AWS/AWSGov, GCP, Azure and OCI. If insane mode is enabled, gateway size has to at least be c5 size for AWS and Standard_D3_v2 size for Azure. // +kubebuilder:validation:Optional InsaneMode *bool `json:"insaneMode,omitempty" tf:"insane_mode,omitempty"` // AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS, AWSGov, AWS China, AWS Top Secret or AWS Secret if insane_mode is enabled. Example: AWS: "us-west-1a". // AZ of subnet being created for Insane Mode Transit Gateway. Required for AWS if insane_mode is enabled. // +kubebuilder:validation:Optional InsaneModeAz *string `json:"insaneModeAz,omitempty" tf:"insane_mode_az,omitempty"` // LAN Private Subnet. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+. // LAN Private Subnet. Only used for GCP Transit FireNet. // +kubebuilder:validation:Optional LanPrivateSubnet *string `json:"lanPrivateSubnet,omitempty" tf:"lan_private_subnet,omitempty"` // LAN VPC ID. Only valid when enabling Transit FireNet on GCP. Available as of provider version R2.18.1+. // LAN VPC ID. Only used for GCP Transit FireNet. // +kubebuilder:validation:Optional LanVPCID *string `json:"lanVpcId,omitempty" tf:"lan_vpc_id,omitempty"` // Learned CIDRs approval mode. Either "gateway" (approval on a per gateway basis) or "connection" (approval on a per connection basis). Default value: "gateway". Available as of provider version R2.18+. // Set the learned CIDRs approval mode. Only valid when 'enable_learned_cidrs_approval' is set to true. If set to 'gateway', learned CIDR approval applies to ALL connections. If set to 'connection', learned CIDR approval is configured on a per connection basis. When configuring per connection, use the enable_learned_cidrs_approval attribute within the connection resource to toggle learned CIDR approval. Valid values: 'gateway' or 'connection'. Default value: 'gateway'. // +kubebuilder:validation:Optional LearnedCidrsApprovalMode *string `json:"learnedCidrsApprovalMode,omitempty" tf:"learned_cidrs_approval_mode,omitempty"` // Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations. // Changes the Aviatrix Transit Gateway ASN number before you setup Aviatrix Transit Gateway connection configurations. // +kubebuilder:validation:Optional LocalAsNumber *string `json:"localAsNumber,omitempty" tf:"local_as_number,omitempty"` // Set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. Available in provider version R2.18+. // A set of monitored instance ids. Only valid when 'enable_monitor_gateway_subnets' = true. // +kubebuilder:validation:Optional MonitorExcludeList []*string `json:"monitorExcludeList,omitempty" tf:"monitor_exclude_list,omitempty"` // OOB availability zone. Required if enabling Private OOB. Example: "us-west-1a". // OOB subnet availability zone. // +kubebuilder:validation:Optional OobAvailabilityZone *string `json:"oobAvailabilityZone,omitempty" tf:"oob_availability_zone,omitempty"` // OOB management subnet. Required if enabling Private OOB. Example: "11.0.2.0/24". // OOB management subnet. // +kubebuilder:validation:Optional OobManagementSubnet *string `json:"oobManagementSubnet,omitempty" tf:"oob_management_subnet,omitempty"` // List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices. // List of AS numbers to populate BGP AP_PATH field when it advertises to VGW or peer devices. // +kubebuilder:validation:Optional PrependAsPath []*string `json:"prependAsPath,omitempty" tf:"prepend_as_path,omitempty"` // VPC ID of Private Mode load balancer. Required when Private Mode is enabled on the Controller. Available in Provider version R2.23+. // Private Mode Controller load balancer VPC ID. Required when private mode is enabled for the Controller. // +kubebuilder:validation:Optional PrivateModeLBVPCID *string `json:"privateModeLbVpcId,omitempty" tf:"private_mode_lb_vpc_id,omitempty"` // Availability Zone of the subnet. Required when Private Mode is enabled on the Controller and cloud_type is AWS or AWSGov. Available in Provider version R2.23+. // Private Mode subnet availability zone. // +kubebuilder:validation:Optional PrivateModeSubnetZone *string `json:"privateModeSubnetZone,omitempty" tf:"private_mode_subnet_zone,omitempty"` // Gateway ethernet interface RX queue size. Applies on HA as well if enabled. Once set, can't be deleted or disabled. Available for AWS as of provider version R2.22+. // Gateway ethernet interface RX queue size. Supported for AWS related clouds only. Applies on HA as well if enabled. // +kubebuilder:validation:Optional RxQueueSize *string `json:"rxQueueSize,omitempty" tf:"rx_queue_size,omitempty"` // Set to true if this feature is desired. Valid values: true, false. // Set to 'enabled' if this feature is desired. // +kubebuilder:validation:Optional SingleAzHa *bool `json:"singleAzHa,omitempty" tf:"single_az_ha,omitempty"` // Enable "single_ip" mode Source NAT for this container. Valid values: true, false. NOTE: Please see notes // Enable or disable Source NAT feature in 'single_ip' mode for this container. // +kubebuilder:validation:Optional SingleIPSnat *bool `json:"singleIpSnat,omitempty" tf:"single_ip_snat,omitempty"` // Price for spot instance. NOT supported for production deployment. // Price for spot instance. NOT supported for production deployment. // +kubebuilder:validation:Optional SpotPrice *string `json:"spotPrice,omitempty" tf:"spot_price,omitempty"` // A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". NOTE: If using // Public Subnet Name. // +kubebuilder:validation:Required Subnet *string `json:"subnet" tf:"subnet,omitempty"` // Map of tags to assign to the gateway. Only available for AWS, Azure, AzureGov, AWSGov, AWSChina, AzureChina, AWS Top Secret and AWS Secret gateways. Allowed characters vary by cloud type but always include: letters, spaces, and numbers. AWS, AWSGov, AWSChina, AWS Top Secret and AWS Secret allow the use of any character. Azure, AzureGov and AzureChina allows the following special characters: + - = . _ : @. Example: {"key1" = "value1", "key2" = "value2"}. // A map of tags to assign to the transit gateway. // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The IPsec tunnel down detection time for the Transit Gateway in seconds. Must be a number in the range [20-600]. The default value is set by the controller (60 seconds if nothing has been changed). NOTE: The controller UI has an option to set the tunnel detection time for all gateways. Available in provider R2.19+. // The IPSec tunnel down detection time for the transit gateway. // +kubebuilder:validation:Optional TunnelDetectionTime *float64 `json:"tunnelDetectionTime,omitempty" tf:"tunnel_detection_time,omitempty"` // VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq". // VPC-ID/VNet-Name of cloud provider. // +kubebuilder:validation:Required VPCID *string `json:"vpcId" tf:"vpc_id,omitempty"` // Region of cloud provider. Example: AWS: "us-east-1", GCP: "us-west2-a", Azure: "East US 2", OCI: "us-ashburn-1", AzureGov: "USGov Arizona", AWSGov: "us-gov-west-1", AWSChina: "cn-north-1", AzureChina: "China North", AWS Top Secret: "us-iso-east-1", AWS Secret: "us-isob-east-1". // Region of cloud provider. // +kubebuilder:validation:Required VPCReg *string `json:"vpcReg" tf:"vpc_reg,omitempty"` // Availability Zone. Only available Azure (8), Azure GOV (32) and Azure CHINA (2048). Must be in the form 'az-n', for example, 'az-2'. Available in provider version R2.17+. // Availability Zone. Only available for Azure (8), Azure GOV (32) and Azure CHINA (2048). Must be in the form 'az-n', for example, 'az-2'. // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` }
func (*GatewayParameters) DeepCopy ¶
func (in *GatewayParameters) DeepCopy() *GatewayParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayParameters.
func (*GatewayParameters) DeepCopyInto ¶
func (in *GatewayParameters) DeepCopyInto(out *GatewayParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPeering ¶
type GatewayPeering struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GatewayPeeringSpec `json:"spec"` Status GatewayPeeringStatus `json:"status,omitempty"` }
GatewayPeering is the Schema for the GatewayPeerings API. Creates and manages Aviatrix transit gateway peerings +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,aviatrix}
func (*GatewayPeering) DeepCopy ¶
func (in *GatewayPeering) DeepCopy() *GatewayPeering
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeering.
func (*GatewayPeering) DeepCopyInto ¶
func (in *GatewayPeering) DeepCopyInto(out *GatewayPeering)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayPeering) DeepCopyObject ¶
func (in *GatewayPeering) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GatewayPeering) GetCondition ¶
func (mg *GatewayPeering) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this GatewayPeering.
func (*GatewayPeering) GetConnectionDetailsMapping ¶
func (tr *GatewayPeering) GetConnectionDetailsMapping() map[string]string
GetConnectionDetailsMapping for this GatewayPeering
func (*GatewayPeering) GetDeletionPolicy ¶
func (mg *GatewayPeering) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this GatewayPeering.
func (*GatewayPeering) GetID ¶
func (tr *GatewayPeering) GetID() string
GetID returns ID of underlying Terraform resource of this GatewayPeering
func (*GatewayPeering) GetObservation ¶
func (tr *GatewayPeering) GetObservation() (map[string]any, error)
GetObservation of this GatewayPeering
func (*GatewayPeering) GetParameters ¶
func (tr *GatewayPeering) GetParameters() (map[string]any, error)
GetParameters of this GatewayPeering
func (*GatewayPeering) GetProviderConfigReference ¶
func (mg *GatewayPeering) GetProviderConfigReference() *xpv1.Reference
GetProviderConfigReference of this GatewayPeering.
func (*GatewayPeering) GetProviderReference ¶
func (mg *GatewayPeering) GetProviderReference() *xpv1.Reference
GetProviderReference of this GatewayPeering. Deprecated: Use GetProviderConfigReference.
func (*GatewayPeering) GetPublishConnectionDetailsTo ¶
func (mg *GatewayPeering) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo
GetPublishConnectionDetailsTo of this GatewayPeering.
func (*GatewayPeering) GetTerraformResourceType ¶
func (mg *GatewayPeering) GetTerraformResourceType() string
GetTerraformResourceType returns Terraform resource type for this GatewayPeering
func (*GatewayPeering) GetTerraformSchemaVersion ¶
func (tr *GatewayPeering) GetTerraformSchemaVersion() int
GetTerraformSchemaVersion returns the associated Terraform schema version
func (*GatewayPeering) GetWriteConnectionSecretToReference ¶
func (mg *GatewayPeering) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this GatewayPeering.
func (*GatewayPeering) LateInitialize ¶
func (tr *GatewayPeering) LateInitialize(attrs []byte) (bool, error)
LateInitialize this GatewayPeering using its observed tfState. returns True if there are any spec changes for the resource.
func (*GatewayPeering) SetConditions ¶
func (mg *GatewayPeering) SetConditions(c ...xpv1.Condition)
SetConditions of this GatewayPeering.
func (*GatewayPeering) SetDeletionPolicy ¶
func (mg *GatewayPeering) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this GatewayPeering.
func (*GatewayPeering) SetObservation ¶
func (tr *GatewayPeering) SetObservation(obs map[string]any) error
SetObservation for this GatewayPeering
func (*GatewayPeering) SetParameters ¶
func (tr *GatewayPeering) SetParameters(params map[string]any) error
SetParameters for this GatewayPeering
func (*GatewayPeering) SetProviderConfigReference ¶
func (mg *GatewayPeering) SetProviderConfigReference(r *xpv1.Reference)
SetProviderConfigReference of this GatewayPeering.
func (*GatewayPeering) SetProviderReference ¶
func (mg *GatewayPeering) SetProviderReference(r *xpv1.Reference)
SetProviderReference of this GatewayPeering. Deprecated: Use SetProviderConfigReference.
func (*GatewayPeering) SetPublishConnectionDetailsTo ¶
func (mg *GatewayPeering) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)
SetPublishConnectionDetailsTo of this GatewayPeering.
func (*GatewayPeering) SetWriteConnectionSecretToReference ¶
func (mg *GatewayPeering) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this GatewayPeering.
type GatewayPeeringList ¶
type GatewayPeeringList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GatewayPeering `json:"items"` }
GatewayPeeringList contains a list of GatewayPeerings
func (*GatewayPeeringList) DeepCopy ¶
func (in *GatewayPeeringList) DeepCopy() *GatewayPeeringList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeeringList.
func (*GatewayPeeringList) DeepCopyInto ¶
func (in *GatewayPeeringList) DeepCopyInto(out *GatewayPeeringList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GatewayPeeringList) DeepCopyObject ¶
func (in *GatewayPeeringList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GatewayPeeringList) GetItems ¶
func (l *GatewayPeeringList) GetItems() []resource.Managed
GetItems of this GatewayPeeringList.
type GatewayPeeringObservation ¶
type GatewayPeeringObservation struct {
ID *string `json:"id,omitempty" tf:"id,omitempty"`
}
func (*GatewayPeeringObservation) DeepCopy ¶
func (in *GatewayPeeringObservation) DeepCopy() *GatewayPeeringObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeeringObservation.
func (*GatewayPeeringObservation) DeepCopyInto ¶
func (in *GatewayPeeringObservation) DeepCopyInto(out *GatewayPeeringObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPeeringParameters ¶
type GatewayPeeringParameters struct { // Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid tunnel_count. Conflicts with enable_peering_over_private_network and enable_single_tunnel_mode. Type: Boolean. Default: false. Available as of provider version R2.19+. // (Optional) Advanced option. Enable Insane Mode Encryption over Internet. Transit gateways must be in Insane Mode. Currently, only inter-cloud connections between AWS and Azure are supported. Required with valid `tunnel_count`. Conflicts with `enable_peering_over_private_network` and `enable_single_tunnel_mode`. Type: Boolean. Default: false. Available as of provider version R2.19+. // +kubebuilder:validation:Optional EnableInsaneModeEncryptionOverInternet *bool `json:"enableInsaneModeEncryptionOverInternet,omitempty" tf:"enable_insane_mode_encryption_over_internet,omitempty"` // Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Default value: true. Available as of provider version R2.22.2+. // Indicates whether the maximum amount of HPE tunnels will be created. Only valid when the two transit gateways are each launched in Insane Mode and in the same cloud type. Available as of provider version R2.22.2+. // +kubebuilder:validation:Optional EnableMaxPerformance *bool `json:"enableMaxPerformance,omitempty" tf:"enable_max_performance,omitempty"` // Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with enable_insane_mode_encryption_over_internet and tunnel_count. Type: Boolean. Default: false. Available in provider version R2.17.1+. // (Optional) Advanced option. Enable peering over private network. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Conflicts with `enable_insane_mode_encryption_over_internet` and `tunnel_count`. Type: Boolean. Default: false. Available in provider version R2.17.1+ // +kubebuilder:validation:Optional EnablePeeringOverPrivateNetwork *bool `json:"enablePeeringOverPrivateNetwork,omitempty" tf:"enable_peering_over_private_network,omitempty"` // Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with enable_peering_over_private_network. Conflicts with enable_insane_mode_encryption_over_internet and tunnel_count. Type: Boolean. Default: false. Available as of provider version R2.18+. // (Optional) Advanced option. Enable peering with Single-Tunnel mode. Only appears and applies to when the two Multi-cloud Transit Gateways are each launched in Insane Mode and in a different cloud type. Required with `enable_peering_over_private_network`. Conflicts with `enable_insane_mode_encryption_over_internet` and `tunnel_count`. Type: Boolean. Default: false. Available as of provider version R2.18+. // +kubebuilder:validation:Optional EnableSingleTunnelMode *bool `json:"enableSingleTunnelMode,omitempty" tf:"enable_single_tunnel_mode,omitempty"` // List of excluded network CIDRs for the first transit gateway. // List of excluded network CIDRs for the first transit gateway. // +kubebuilder:validation:Optional Gateway1ExcludedNetworkCidrs []*string `json:"gateway1ExcludedNetworkCidrs,omitempty" tf:"gateway1_excluded_network_cidrs,omitempty"` // List of excluded TGW connections for the first transit gateway. // List of excluded TGW connections for the first transit gateway. // +kubebuilder:validation:Optional Gateway1ExcludedTgwConnections []*string `json:"gateway1ExcludedTgwConnections,omitempty" tf:"gateway1_excluded_tgw_connections,omitempty"` // List of excluded network CIDRs for the second transit gateway. // List of excluded network CIDRs for the second transit gateway. // +kubebuilder:validation:Optional Gateway2ExcludedNetworkCidrs []*string `json:"gateway2ExcludedNetworkCidrs,omitempty" tf:"gateway2_excluded_network_cidrs,omitempty"` // List of excluded TGW connections for the second transit gateway. // List of excluded TGW connections for the second transit gateway. // +kubebuilder:validation:Optional Gateway2ExcludedTgwConnections []*string `json:"gateway2ExcludedTgwConnections,omitempty" tf:"gateway2_excluded_tgw_connections,omitempty"` // AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name1. Available in provider version R2.17.2+. // AS Path Prepend customized by specifying AS PATH for a BGP connection. Applies on transit_gateway_name1. // +kubebuilder:validation:Optional PrependAsPath1 []*string `json:"prependAsPath1,omitempty" tf:"prepend_as_path1,omitempty"` // AS Path Prepend for BGP connection. Can only use the transit's own local AS number, repeated up to 25 times. Applies on transit_gateway_name2. Available in provider version R2.17.2+. // AS Path Prepend customized by specifying AS PATH for a BGP connection. Applies on transit_gateway_name2. // +kubebuilder:validation:Optional PrependAsPath2 []*string `json:"prependAsPath2,omitempty" tf:"prepend_as_path2,omitempty"` // The first transit gateway name to make a peer pair. // The first transit gateway name to make a peer pair. // +kubebuilder:validation:Required TransitGatewayName1 *string `json:"transitGatewayName1" tf:"transit_gateway_name1,omitempty"` // The second transit gateway name to make a peer pair. // The second transit gateway name to make a peer pair. // +kubebuilder:validation:Required TransitGatewayName2 *string `json:"transitGatewayName2" tf:"transit_gateway_name2,omitempty"` // Advanced option. Number of public tunnels. Required with enable_insane_mode_encryption_over_internet. Conflicts with enable_peering_over_private_network and enable_single_tunnel_mode. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+. // (Optional) Advanced option. Number of public tunnels. Required with `enable_insane_mode_encryption_over_internet`. Conflicts with `enable_peering_over_private_network` and `enable_single_tunnel_mode`. Type: Integer. Valid Range: 2-20. Available as of provider version R2.19+. // +kubebuilder:validation:Optional TunnelCount *float64 `json:"tunnelCount,omitempty" tf:"tunnel_count,omitempty"` }
func (*GatewayPeeringParameters) DeepCopy ¶
func (in *GatewayPeeringParameters) DeepCopy() *GatewayPeeringParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeeringParameters.
func (*GatewayPeeringParameters) DeepCopyInto ¶
func (in *GatewayPeeringParameters) DeepCopyInto(out *GatewayPeeringParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPeeringSpec ¶
type GatewayPeeringSpec struct { v1.ResourceSpec `json:",inline"` ForProvider GatewayPeeringParameters `json:"forProvider"` }
GatewayPeeringSpec defines the desired state of GatewayPeering
func (*GatewayPeeringSpec) DeepCopy ¶
func (in *GatewayPeeringSpec) DeepCopy() *GatewayPeeringSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeeringSpec.
func (*GatewayPeeringSpec) DeepCopyInto ¶
func (in *GatewayPeeringSpec) DeepCopyInto(out *GatewayPeeringSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayPeeringStatus ¶
type GatewayPeeringStatus struct { v1.ResourceStatus `json:",inline"` AtProvider GatewayPeeringObservation `json:"atProvider,omitempty"` }
GatewayPeeringStatus defines the observed state of GatewayPeering.
func (*GatewayPeeringStatus) DeepCopy ¶
func (in *GatewayPeeringStatus) DeepCopy() *GatewayPeeringStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayPeeringStatus.
func (*GatewayPeeringStatus) DeepCopyInto ¶
func (in *GatewayPeeringStatus) DeepCopyInto(out *GatewayPeeringStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewaySpec ¶
type GatewaySpec struct { v1.ResourceSpec `json:",inline"` ForProvider GatewayParameters `json:"forProvider"` }
GatewaySpec defines the desired state of Gateway
func (*GatewaySpec) DeepCopy ¶
func (in *GatewaySpec) DeepCopy() *GatewaySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewaySpec.
func (*GatewaySpec) DeepCopyInto ¶
func (in *GatewaySpec) DeepCopyInto(out *GatewaySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayStatus ¶
type GatewayStatus struct { v1.ResourceStatus `json:",inline"` AtProvider GatewayObservation `json:"atProvider,omitempty"` }
GatewayStatus defines the observed state of Gateway.
func (*GatewayStatus) DeepCopy ¶
func (in *GatewayStatus) DeepCopy() *GatewayStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayStatus.
func (*GatewayStatus) DeepCopyInto ¶
func (in *GatewayStatus) DeepCopyInto(out *GatewayStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HaBGPLanInterfacesObservation ¶
type HaBGPLanInterfacesObservation struct { }
func (*HaBGPLanInterfacesObservation) DeepCopy ¶
func (in *HaBGPLanInterfacesObservation) DeepCopy() *HaBGPLanInterfacesObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HaBGPLanInterfacesObservation.
func (*HaBGPLanInterfacesObservation) DeepCopyInto ¶
func (in *HaBGPLanInterfacesObservation) DeepCopyInto(out *HaBGPLanInterfacesObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HaBGPLanInterfacesParameters ¶
type HaBGPLanInterfacesParameters struct { // A VPC Network address range selected from one of the available network ranges. Example: "172.31.0.0/20". NOTE: If using // Subnet Info. // +kubebuilder:validation:Required Subnet *string `json:"subnet" tf:"subnet,omitempty"` // VPC-ID/VNet-Name of cloud provider. Example: AWS/AWSGov/AWSChina: "vpc-abcd1234", GCP: "vpc-gcp-test~-~project-id", Azure/AzureGov/AzureChina: "vnet_name:rg_name:resource_guid", OCI: "ocid1.vcn.oc1.iad.aaaaaaaaba3pv6wkcr4jqae5f44n2b2m2yt2j6rx32uzr4h25vqstifsfdsq". // VPC-ID of GCP cloud provider. // +kubebuilder:validation:Required VPCID *string `json:"vpcId" tf:"vpc_id,omitempty"` }
func (*HaBGPLanInterfacesParameters) DeepCopy ¶
func (in *HaBGPLanInterfacesParameters) DeepCopy() *HaBGPLanInterfacesParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HaBGPLanInterfacesParameters.
func (*HaBGPLanInterfacesParameters) DeepCopyInto ¶
func (in *HaBGPLanInterfacesParameters) DeepCopyInto(out *HaBGPLanInterfacesParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.