compute.v1alpha1.router
"A Router is a managed resource that represents a Google Compute Engine Router"
Index
fn new(name)
obj metadata
fn withAnnotations(annotations)
fn withAnnotationsMixin(annotations)
fn withClusterName(clusterName)
fn withCreationTimestamp(creationTimestamp)
fn withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
fn withDeletionTimestamp(deletionTimestamp)
fn withFinalizers(finalizers)
fn withFinalizersMixin(finalizers)
fn withGenerateName(generateName)
fn withGeneration(generation)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withName(name)
fn withNamespace(namespace)
fn withOwnerReferences(ownerReferences)
fn withOwnerReferencesMixin(ownerReferences)
fn withResourceVersion(resourceVersion)
fn withSelfLink(selfLink)
fn withUid(uid)
obj spec
fn withDeletionPolicy(deletionPolicy)
obj spec.forProvider
fn withBgpPeers(bgpPeers)
fn withBgpPeersMixin(bgpPeers)
fn withDescription(description)
fn withEncryptedInterconnectRouter(encryptedInterconnectRouter)
fn withInterfaces(interfaces)
fn withInterfacesMixin(interfaces)
fn withNats(nats)
fn withNatsMixin(nats)
fn withNetwork(network)
fn withRegion(region)
obj spec.forProvider.bgp
obj spec.forProvider.bgpPeers
fn withAdvertiseMode(advertiseMode)
fn withAdvertisedGroups(advertisedGroups)
fn withAdvertisedGroupsMixin(advertisedGroups)
fn withAdvertisedIpRanges(advertisedIpRanges)
fn withAdvertisedIpRangesMixin(advertisedIpRanges)
fn withAdvertisedRoutePriority(advertisedRoutePriority)
fn withInterfaceName(interfaceName)
fn withIpAddress(ipAddress)
fn withName(name)
fn withPeerAsn(peerAsn)
fn withPeerIpAddress(peerIpAddress)
obj spec.forProvider.bgpPeers.advertisedIpRanges
obj spec.forProvider.interfaces
obj spec.forProvider.nats
fn withDrainNatIps(drainNatIps)
fn withDrainNatIpsMixin(drainNatIps)
fn withEnableEndpointIndependentMapping(enableEndpointIndependentMapping)
fn withIcmpIdleTimeoutSec(icmpIdleTimeoutSec)
fn withMinPortsPerVm(minPortsPerVm)
fn withName(name)
fn withNatIpAllocateOption(natIpAllocateOption)
fn withNatIps(natIps)
fn withNatIpsMixin(natIps)
fn withSourceSubnetworkIpRangesToNat(sourceSubnetworkIpRangesToNat)
fn withSubnetworks(subnetworks)
fn withSubnetworksMixin(subnetworks)
fn withTcpEstablishedIdleTimeoutSec(tcpEstablishedIdleTimeoutSec)
fn withTcpTransitoryIdleTimeoutSec(tcpTransitoryIdleTimeoutSec)
fn withUdpIdleTimeoutSec(udpIdleTimeoutSec)
obj spec.forProvider.nats.logConfig
obj spec.forProvider.nats.subnetworks
obj spec.forProvider.networkRef
obj spec.forProvider.networkSelector
obj spec.providerConfigRef
obj spec.providerRef
obj spec.publishConnectionDetailsTo
obj spec.writeConnectionSecretToRef
Fields
fn new
new(name)
new returns an instance of Router
obj metadata
"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."
fn metadata.withAnnotations
withAnnotations(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
fn metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations"
Note: This function appends passed data to existing values
fn metadata.withClusterName
withClusterName(clusterName)
"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."
fn metadata.withCreationTimestamp
withCreationTimestamp(creationTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withDeletionGracePeriodSeconds
withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."
fn metadata.withDeletionTimestamp
withDeletionTimestamp(deletionTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withFinalizers
withFinalizers(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
fn metadata.withFinalizersMixin
withFinalizersMixin(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
Note: This function appends passed data to existing values
fn metadata.withGenerateName
withGenerateName(generateName)
"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"
fn metadata.withGeneration
withGeneration(generation)
"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."
fn metadata.withLabels
withLabels(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
fn metadata.withLabelsMixin
withLabelsMixin(labels)
"Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels"
Note: This function appends passed data to existing values
fn metadata.withName
withName(name)
"Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names"
fn metadata.withNamespace
withNamespace(namespace)
"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"
fn metadata.withOwnerReferences
withOwnerReferences(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
fn metadata.withOwnerReferencesMixin
withOwnerReferencesMixin(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
Note: This function appends passed data to existing values
fn metadata.withResourceVersion
withResourceVersion(resourceVersion)
"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"
fn metadata.withSelfLink
withSelfLink(selfLink)
"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."
fn metadata.withUid
withUid(uid)
"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"
obj spec
"A RouterSpec defines the desired state of a Router."
fn spec.withDeletionPolicy
withDeletionPolicy(deletionPolicy)
"DeletionPolicy specifies what will happen to the underlying external when this managed resource is deleted - either \"Delete\" or \"Orphan\" the external resource."
obj spec.forProvider
"RouterParameters define the desired state of a Google Compute Engine Router. Most fields map directly to a Router: https://cloud.google.com/compute/docs/reference/rest/v1/routers/"
fn spec.forProvider.withBgpPeers
withBgpPeers(bgpPeers)
"BgpPeers: BGP information that must be configured into the routing stack to establish BGP peering. This information must specify the peer ASN and either the interface name, IP address, or peer IP address. Please refer to RFC4273."
fn spec.forProvider.withBgpPeersMixin
withBgpPeersMixin(bgpPeers)
"BgpPeers: BGP information that must be configured into the routing stack to establish BGP peering. This information must specify the peer ASN and either the interface name, IP address, or peer IP address. Please refer to RFC4273."
Note: This function appends passed data to existing values
fn spec.forProvider.withDescription
withDescription(description)
"Description: An optional description of this resource. Provide this field when you create the resource."
fn spec.forProvider.withEncryptedInterconnectRouter
withEncryptedInterconnectRouter(encryptedInterconnectRouter)
"EncryptedInterconnectRouter: Field to indicate if a router is dedicated to use with encrypted Interconnect Attachment (IPsec-encrypted Cloud Interconnect feature). Not currently available in all Interconnect locations."
fn spec.forProvider.withInterfaces
withInterfaces(interfaces)
"Interfaces: Router interfaces. Each interface requires either one linked resource, (for example, linkedVpnTunnel), or IP address and IP address range (for example, ipRange), or both."
fn spec.forProvider.withInterfacesMixin
withInterfacesMixin(interfaces)
"Interfaces: Router interfaces. Each interface requires either one linked resource, (for example, linkedVpnTunnel), or IP address and IP address range (for example, ipRange), or both."
Note: This function appends passed data to existing values
fn spec.forProvider.withNats
withNats(nats)
"Nats: A list of NAT services created in this router."
fn spec.forProvider.withNatsMixin
withNatsMixin(nats)
"Nats: A list of NAT services created in this router."
Note: This function appends passed data to existing values
fn spec.forProvider.withNetwork
withNetwork(network)
"Network: URI of the network to which this router belongs."
fn spec.forProvider.withRegion
withRegion(region)
"Region: URL of the region where the Subnetwork resides. This field can be set only at resource creation time."
obj spec.forProvider.bgp
"Bgp: BGP information specific to this router."
fn spec.forProvider.bgp.withAdvertiseMode
withAdvertiseMode(advertiseMode)
"AdvertiseMode: User-specified flag to indicate which mode to use for advertisement. The options are DEFAULT or CUSTOM. \n Possible values: \"CUSTOM\" \"DEFAULT\
fn spec.forProvider.bgp.withAdvertisedGroups
withAdvertisedGroups(advertisedGroups)
"AdvertisedGroups: User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. \n Possible values: \"ALL_SUBNETS\
fn spec.forProvider.bgp.withAdvertisedGroupsMixin
withAdvertisedGroupsMixin(advertisedGroups)
"AdvertisedGroups: User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. \n Possible values: \"ALL_SUBNETS\
Note: This function appends passed data to existing values
fn spec.forProvider.bgp.withAdvertisedIpRanges
withAdvertisedIpRanges(advertisedIpRanges)
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
fn spec.forProvider.bgp.withAdvertisedIpRangesMixin
withAdvertisedIpRangesMixin(advertisedIpRanges)
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
Note: This function appends passed data to existing values
fn spec.forProvider.bgp.withAsn
withAsn(asn)
"Asn: Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN."
obj spec.forProvider.bgp.advertisedIpRanges
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
fn spec.forProvider.bgp.advertisedIpRanges.withDescription
withDescription(description)
"Description: User-specified description for the IP range."
fn spec.forProvider.bgp.advertisedIpRanges.withRange
withRange(range)
"Range: The IP range to advertise. The value must be a CIDR-formatted string."
obj spec.forProvider.bgpPeers
"BgpPeers: BGP information that must be configured into the routing stack to establish BGP peering. This information must specify the peer ASN and either the interface name, IP address, or peer IP address. Please refer to RFC4273."
fn spec.forProvider.bgpPeers.withAdvertiseMode
withAdvertiseMode(advertiseMode)
"AdvertiseMode: User-specified flag to indicate which mode to use for advertisement. \n Possible values: \"CUSTOM\" \"DEFAULT\
fn spec.forProvider.bgpPeers.withAdvertisedGroups
withAdvertisedGroups(advertisedGroups)
"AdvertisedGroups: User-specified list of prefix groups to advertise in custom mode, which can take one of the following options: - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets. - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These groups are advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. \n Possible values: \"ALL_SUBNETS\
fn spec.forProvider.bgpPeers.withAdvertisedGroupsMixin
withAdvertisedGroupsMixin(advertisedGroups)
"AdvertisedGroups: User-specified list of prefix groups to advertise in custom mode, which can take one of the following options: - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets. - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These groups are advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. \n Possible values: \"ALL_SUBNETS\
Note: This function appends passed data to existing values
fn spec.forProvider.bgpPeers.withAdvertisedIpRanges
withAdvertisedIpRanges(advertisedIpRanges)
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
fn spec.forProvider.bgpPeers.withAdvertisedIpRangesMixin
withAdvertisedIpRangesMixin(advertisedIpRanges)
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
Note: This function appends passed data to existing values
fn spec.forProvider.bgpPeers.withAdvertisedRoutePriority
withAdvertisedRoutePriority(advertisedRoutePriority)
"AdvertisedRoutePriority: The priority of routes advertised to this BGP peer. Where there is more than one matching route of maximum length, the routes with the lowest priority value win."
fn spec.forProvider.bgpPeers.withInterfaceName
withInterfaceName(interfaceName)
"InterfaceName: Name of the interface the BGP peer is associated with."
fn spec.forProvider.bgpPeers.withIpAddress
withIpAddress(ipAddress)
"IpAddress: IP address of the interface inside Google Cloud Platform. Only IPv4 is supported."
fn spec.forProvider.bgpPeers.withName
withName(name)
"Name: Name of this BGP peer. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash."
fn spec.forProvider.bgpPeers.withPeerAsn
withPeerAsn(peerAsn)
"PeerAsn: Peer BGP Autonomous System Number (ASN). Each BGP interface may use a different value."
fn spec.forProvider.bgpPeers.withPeerIpAddress
withPeerIpAddress(peerIpAddress)
"PeerIpAddress: IP address of the BGP interface outside Google Cloud Platform. Only IPv4 is supported."
obj spec.forProvider.bgpPeers.advertisedIpRanges
"AdvertisedIpRanges: User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges."
fn spec.forProvider.bgpPeers.advertisedIpRanges.withDescription
withDescription(description)
"Description: User-specified description for the IP range."
fn spec.forProvider.bgpPeers.advertisedIpRanges.withRange
withRange(range)
"Range: The IP range to advertise. The value must be a CIDR-formatted string."
obj spec.forProvider.interfaces
"Interfaces: Router interfaces. Each interface requires either one linked resource, (for example, linkedVpnTunnel), or IP address and IP address range (for example, ipRange), or both."
fn spec.forProvider.interfaces.withIpRange
withIpRange(ipRange)
"IpRange: IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface."
fn spec.forProvider.interfaces.withLinkedInterconnectAttachment
withLinkedInterconnectAttachment(linkedInterconnectAttachment)
"LinkedInterconnectAttachment: URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance."
fn spec.forProvider.interfaces.withLinkedVpnTunnel
withLinkedVpnTunnel(linkedVpnTunnel)
"LinkedVpnTunnel: URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance."
fn spec.forProvider.interfaces.withName
withName(name)
"Name: Name of this interface entry. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash."
obj spec.forProvider.nats
"Nats: A list of NAT services created in this router."
fn spec.forProvider.nats.withDrainNatIps
withDrainNatIps(drainNatIps)
"DrainNatIps: A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT only."
fn spec.forProvider.nats.withDrainNatIpsMixin
withDrainNatIpsMixin(drainNatIps)
"DrainNatIps: A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT only."
Note: This function appends passed data to existing values
fn spec.forProvider.nats.withEnableEndpointIndependentMapping
withEnableEndpointIndependentMapping(enableEndpointIndependentMapping)
fn spec.forProvider.nats.withIcmpIdleTimeoutSec
withIcmpIdleTimeoutSec(icmpIdleTimeoutSec)
"IcmpIdleTimeoutSec: Timeout (in seconds) for ICMP connections. Defaults to 30s if not set."
fn spec.forProvider.nats.withMinPortsPerVm
withMinPortsPerVm(minPortsPerVm)
"MinPortsPerVm: Minimum number of ports allocated to a VM from this NAT config. If not set, a default number of ports is allocated to a VM. This is rounded up to the nearest power of 2. For example, if the value of this field is 50, at least 64 ports are allocated to a VM."
fn spec.forProvider.nats.withName
withName(name)
"Name: Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035."
fn spec.forProvider.nats.withNatIpAllocateOption
withNatIpAllocateOption(natIpAllocateOption)
"NatIpAllocateOption: Specify the NatIpAllocateOption, which can take one of the following values: - MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY: Nat IPs are allocated by Google Cloud Platform; customers can't specify any Nat IPs. When choosing AUTO_ONLY, then nat_ip should be empty. \n Possible values: \"AUTO_ONLY\" \"MANUAL_ONLY\
fn spec.forProvider.nats.withNatIps
withNatIps(natIps)
"NatIps: A list of URLs of the IP resources used for this Nat service. These IP addresses must be valid static external IP addresses assigned to the project."
fn spec.forProvider.nats.withNatIpsMixin
withNatIpsMixin(natIps)
"NatIps: A list of URLs of the IP resources used for this Nat service. These IP addresses must be valid static external IP addresses assigned to the project."
Note: This function appends passed data to existing values
fn spec.forProvider.nats.withSourceSubnetworkIpRangesToNat
withSourceSubnetworkIpRangesToNat(sourceSubnetworkIpRangesToNat)
"SourceSubnetworkIpRangesToNat: Specify the Nat option, which can take one of the following values: - ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP ranges in every Subnetwork are allowed to Nat. - LIST_OF_SUBNETWORKS: A list of Subnetworks are allowed to Nat (specified in the field subnetwork below) The default is SUBNETWORK_IP_RANGE_TO_NAT_OPTION_UNSPECIFIED. Note that if this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region. \n Possible values: \"ALL_SUBNETWORKS_ALL_IP_RANGES\" \"ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES\" \"LIST_OF_SUBNETWORKS\
fn spec.forProvider.nats.withSubnetworks
withSubnetworks(subnetworks)
"Subnetworks: A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above."
fn spec.forProvider.nats.withSubnetworksMixin
withSubnetworksMixin(subnetworks)
"Subnetworks: A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above."
Note: This function appends passed data to existing values
fn spec.forProvider.nats.withTcpEstablishedIdleTimeoutSec
withTcpEstablishedIdleTimeoutSec(tcpEstablishedIdleTimeoutSec)
"TcpEstablishedIdleTimeoutSec: Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set."
fn spec.forProvider.nats.withTcpTransitoryIdleTimeoutSec
withTcpTransitoryIdleTimeoutSec(tcpTransitoryIdleTimeoutSec)
"TcpTransitoryIdleTimeoutSec: Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set."
fn spec.forProvider.nats.withUdpIdleTimeoutSec
withUdpIdleTimeoutSec(udpIdleTimeoutSec)
"UdpIdleTimeoutSec: Timeout (in seconds) for UDP connections. Defaults to 30s if not set."
obj spec.forProvider.nats.logConfig
"LogConfig: Configure logging on this NAT."
fn spec.forProvider.nats.logConfig.withEnable
withEnable(enable)
"Enable: Indicates whether or not to export logs. This is false by default."
fn spec.forProvider.nats.logConfig.withFilter
withFilter(filter)
"Filter: Specify the desired filtering of logs on this NAT. If unspecified, logs are exported for all connections handled by this NAT. This option can take one of the following values: - ERRORS_ONLY: Export logs only for connection failures. - TRANSLATIONS_ONLY: Export logs only for successful connections. - ALL: Export logs for all connections, successful and unsuccessful. \n Possible values: \"ALL\" \"ERRORS_ONLY\" \"TRANSLATIONS_ONLY\
obj spec.forProvider.nats.subnetworks
"Subnetworks: A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above."
fn spec.forProvider.nats.subnetworks.withName
withName(name)
"Name: URL for the subnetwork resource that will use NAT."
fn spec.forProvider.nats.subnetworks.withSecondaryIpRangeNames
withSecondaryIpRangeNames(secondaryIpRangeNames)
"SecondaryIpRangeNames: A list of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if \"LIST_OF_SECONDARY_IP_RANGES\" is one of the values in source_ip_ranges_to_nat."
fn spec.forProvider.nats.subnetworks.withSecondaryIpRangeNamesMixin
withSecondaryIpRangeNamesMixin(secondaryIpRangeNames)
"SecondaryIpRangeNames: A list of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if \"LIST_OF_SECONDARY_IP_RANGES\" is one of the values in source_ip_ranges_to_nat."
Note: This function appends passed data to existing values
fn spec.forProvider.nats.subnetworks.withSourceIpRangesToNat
withSourceIpRangesToNat(sourceIpRangesToNat)
"SourceIpRangesToNat: Specify the options for NAT ranges in the Subnetwork. All options of a single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: [\"PRIMARY_IP_RANGE\", \"LIST_OF_SECONDARY_IP_RANGES\"] Default: [ALL_IP_RANGES] \n Possible values: \"ALL_IP_RANGES\" \"LIST_OF_SECONDARY_IP_RANGES\" \"PRIMARY_IP_RANGE\
fn spec.forProvider.nats.subnetworks.withSourceIpRangesToNatMixin
withSourceIpRangesToNatMixin(sourceIpRangesToNat)
"SourceIpRangesToNat: Specify the options for NAT ranges in the Subnetwork. All options of a single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: [\"PRIMARY_IP_RANGE\", \"LIST_OF_SECONDARY_IP_RANGES\"] Default: [ALL_IP_RANGES] \n Possible values: \"ALL_IP_RANGES\" \"LIST_OF_SECONDARY_IP_RANGES\" \"PRIMARY_IP_RANGE\
Note: This function appends passed data to existing values
obj spec.forProvider.networkRef
"NetworkRef references a Network and retrieves its URI"
fn spec.forProvider.networkRef.withName
withName(name)
"Name of the referenced object."
obj spec.forProvider.networkRef.policy
"Policies for referencing."
fn spec.forProvider.networkRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.forProvider.networkSelector
"NetworkSelector selects a reference to a Network"
fn spec.forProvider.networkSelector.withMatchControllerRef
withMatchControllerRef(matchControllerRef)
"MatchControllerRef ensures an object with the same controller reference as the selecting object is selected."
fn spec.forProvider.networkSelector.withMatchLabels
withMatchLabels(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
fn spec.forProvider.networkSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"MatchLabels ensures an object with matching labels is selected."
Note: This function appends passed data to existing values
obj spec.forProvider.networkSelector.policy
"Policies for selection."
fn spec.forProvider.networkSelector.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.forProvider.networkSelector.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.providerConfigRef
"ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured."
fn spec.providerConfigRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerConfigRef.policy
"Policies for referencing."
fn spec.providerConfigRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerConfigRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.providerRef
"ProviderReference specifies the provider that will be used to create, observe, update, and delete this managed resource. Deprecated: Please use ProviderConfigReference, i.e. providerConfigRef
"
fn spec.providerRef.withName
withName(name)
"Name of the referenced object."
obj spec.providerRef.policy
"Policies for referencing."
fn spec.providerRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.providerRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo
"PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource."
fn spec.publishConnectionDetailsTo.withName
withName(name)
"Name is the name of the connection secret."
obj spec.publishConnectionDetailsTo.configRef
"SecretStoreConfigRef specifies which secret store config should be used for this ConnectionSecret."
fn spec.publishConnectionDetailsTo.configRef.withName
withName(name)
"Name of the referenced object."
obj spec.publishConnectionDetailsTo.configRef.policy
"Policies for referencing."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolution
withResolution(resolution)
"Resolution specifies whether resolution of this reference is required. The default is 'Required', which means the reconcile will fail if the reference cannot be resolved. 'Optional' means this reference will be a no-op if it cannot be resolved."
fn spec.publishConnectionDetailsTo.configRef.policy.withResolve
withResolve(resolve)
"Resolve specifies when this reference should be resolved. The default is 'IfNotPresent', which will attempt to resolve the reference only when the corresponding field is not present. Use 'Always' to resolve the reference on every reconcile."
obj spec.publishConnectionDetailsTo.metadata
"Metadata is the metadata for connection secret."
fn spec.publishConnectionDetailsTo.metadata.withAnnotations
withAnnotations(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"Annotations are the annotations to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.annotations\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withLabels
withLabels(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
fn spec.publishConnectionDetailsTo.metadata.withLabelsMixin
withLabelsMixin(labels)
"Labels are the labels/tags to be added to connection secret. - For Kubernetes secrets, this will be used as \"metadata.labels\". - It is up to Secret Store implementation for others store types."
Note: This function appends passed data to existing values
fn spec.publishConnectionDetailsTo.metadata.withType
withType(type)
"Type is the SecretType for the connection secret. - Only valid for Kubernetes Secret Stores."
obj spec.writeConnectionSecretToRef
"WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other."
fn spec.writeConnectionSecretToRef.withName
withName(name)
"Name of the secret."
fn spec.writeConnectionSecretToRef.withNamespace
withNamespace(namespace)
"Namespace of the secret."