Documentation ¶
Index ¶
- func ComputeAddress_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func ComputeAddress_IsConstruct(x interface{}) *bool
- func ComputeAddress_IsTerraformElement(x interface{}) *bool
- func ComputeAddress_IsTerraformResource(x interface{}) *bool
- func ComputeAddress_TfResourceType() *string
- func NewComputeAddressTimeoutsOutputReference_Override(c ComputeAddressTimeoutsOutputReference, ...)
- func NewComputeAddress_Override(c ComputeAddress, scope constructs.Construct, id *string, ...)
- type ComputeAddress
- type ComputeAddressConfig
- type ComputeAddressTimeouts
- type ComputeAddressTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ComputeAddress_GenerateConfigForImport ¶
func ComputeAddress_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a ComputeAddress resource upon running "cdktf plan <stack-name>".
func ComputeAddress_IsConstruct ¶
func ComputeAddress_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func ComputeAddress_IsTerraformElement ¶
func ComputeAddress_IsTerraformElement(x interface{}) *bool
Experimental.
func ComputeAddress_IsTerraformResource ¶
func ComputeAddress_IsTerraformResource(x interface{}) *bool
Experimental.
func ComputeAddress_TfResourceType ¶
func ComputeAddress_TfResourceType() *string
func NewComputeAddressTimeoutsOutputReference_Override ¶
func NewComputeAddressTimeoutsOutputReference_Override(c ComputeAddressTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewComputeAddress_Override ¶
func NewComputeAddress_Override(c ComputeAddress, scope constructs.Construct, id *string, config *ComputeAddressConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address google_compute_address} Resource.
Types ¶
type ComputeAddress ¶
type ComputeAddress interface { cdktf.TerraformResource Address() *string SetAddress(val *string) AddressInput() *string AddressType() *string SetAddressType(val *string) AddressTypeInput() *string // Experimental. CdktfStack() cdktf.TerraformStack // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() interface{} // Experimental. SetCount(val interface{}) CreationTimestamp() *string // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) Description() *string SetDescription(val *string) DescriptionInput() *string EffectiveLabels() cdktf.StringMap // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string Id() *string SetId(val *string) IdInput() *string Ipv6EndpointType() *string SetIpv6EndpointType(val *string) Ipv6EndpointTypeInput() *string IpVersion() *string SetIpVersion(val *string) IpVersionInput() *string LabelFingerprint() *string Labels() *map[string]*string SetLabels(val *map[string]*string) LabelsInput() *map[string]*string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) Name() *string SetName(val *string) NameInput() *string Network() *string SetNetwork(val *string) NetworkInput() *string NetworkTier() *string SetNetworkTier(val *string) NetworkTierInput() *string // The tree node. Node() constructs.Node PrefixLength() *float64 SetPrefixLength(val *float64) PrefixLengthInput() *float64 Project() *string SetProject(val *string) ProjectInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) Purpose() *string SetPurpose(val *string) PurposeInput() *string // Experimental. RawOverrides() interface{} Region() *string SetRegion(val *string) RegionInput() *string SelfLink() *string Subnetwork() *string SetSubnetwork(val *string) SubnetworkInput() *string // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata TerraformLabels() cdktf.StringMap // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Timeouts() ComputeAddressTimeoutsOutputReference TimeoutsInput() interface{} Users() *[]*string // Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. // Experimental. AddMoveTarget(moveTarget *string) // Experimental. AddOverride(path *string, value interface{}) // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. HasResourceMove() interface{} // Experimental. ImportFrom(id *string, provider cdktf.TerraformProvider) // Experimental. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Move the resource corresponding to "id" to this resource. // // Note that the resource being moved from must be marked as moved using it's instance function. // Experimental. MoveFromId(id *string) // Moves this resource to the target resource given by moveTarget. // Experimental. MoveTo(moveTarget *string, index interface{}) // Moves this resource to the resource corresponding to "id". // Experimental. MoveToId(id *string) // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutTimeouts(value *ComputeAddressTimeouts) ResetAddress() ResetAddressType() ResetDescription() ResetId() ResetIpv6EndpointType() ResetIpVersion() ResetLabels() ResetNetwork() ResetNetworkTier() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetPrefixLength() ResetProject() ResetPurpose() ResetRegion() ResetSubnetwork() ResetTimeouts() SynthesizeAttributes() *map[string]interface{} SynthesizeHclAttributes() *map[string]interface{} // Experimental. ToHclTerraform() interface{} // Experimental. ToMetadata() interface{} // Returns a string representation of this construct. ToString() *string // Adds this resource to the terraform JSON output. // Experimental. ToTerraform() interface{} }
Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address google_compute_address}.
func NewComputeAddress ¶
func NewComputeAddress(scope constructs.Construct, id *string, config *ComputeAddressConfig) ComputeAddress
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address google_compute_address} Resource.
type ComputeAddressConfig ¶
type ComputeAddressConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count interface{} `field:"optional" json:"count" yaml:"count"` // Experimental. DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"` // Experimental. ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"` // Experimental. Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"` // Experimental. Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"` // Experimental. Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"` // Name of the resource. // // 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. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#name ComputeAddress#name} Name *string `field:"required" json:"name" yaml:"name"` // The static external IP address represented by this resource. // // The IP address must be inside the specified subnetwork, // if any. Set by the API if undefined. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#address ComputeAddress#address} Address *string `field:"optional" json:"address" yaml:"address"` // The type of address to reserve. // // Note: if you set this argument's value as 'INTERNAL' you need to leave the 'network_tier' argument unset in that resource block. Default value: "EXTERNAL" Possible values: ["INTERNAL", "EXTERNAL"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#address_type ComputeAddress#address_type} AddressType *string `field:"optional" json:"addressType" yaml:"addressType"` // An optional description of this resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#description ComputeAddress#description} Description *string `field:"optional" json:"description" yaml:"description"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#id ComputeAddress#id}. // // Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. // If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. Id *string `field:"optional" json:"id" yaml:"id"` // The endpoint type of this address, which should be VM or NETLB. // // This is // used for deciding which type of endpoint this address can be used after // the external IPv6 address reservation. Possible values: ["VM", "NETLB"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#ipv6_endpoint_type ComputeAddress#ipv6_endpoint_type} Ipv6EndpointType *string `field:"optional" json:"ipv6EndpointType" yaml:"ipv6EndpointType"` // The IP Version that will be used by this address. The default value is 'IPV4'. Possible values: ["IPV4", "IPV6"]. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#ip_version ComputeAddress#ip_version} IpVersion *string `field:"optional" json:"ipVersion" yaml:"ipVersion"` // Labels to apply to this address. A list of key->value pairs. // // **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. // Please refer to the field 'effective_labels' for all of the labels present on the resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#labels ComputeAddress#labels} Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"` // The URL of the network in which to reserve the address. // // This field // can only be used with INTERNAL type with the VPC_PEERING and // IPSEC_INTERCONNECT purposes. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#network ComputeAddress#network} Network *string `field:"optional" json:"network" yaml:"network"` // The networking tier used for configuring this address. // // If this field is not // specified, it is assumed to be PREMIUM. // This argument should not be used when configuring Internal addresses, because [network tier cannot be set for internal traffic; it's always Premium](https://cloud.google.com/network-tiers/docs/overview). Possible values: ["PREMIUM", "STANDARD"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#network_tier ComputeAddress#network_tier} NetworkTier *string `field:"optional" json:"networkTier" yaml:"networkTier"` // The prefix length if the resource represents an IP range. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#prefix_length ComputeAddress#prefix_length} PrefixLength *float64 `field:"optional" json:"prefixLength" yaml:"prefixLength"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#project ComputeAddress#project}. Project *string `field:"optional" json:"project" yaml:"project"` // The purpose of this resource, which can be one of the following values. // // * GCE_ENDPOINT for addresses that are used by VM instances, alias IP // ranges, load balancers, and similar resources. // // * SHARED_LOADBALANCER_VIP for an address that can be used by multiple // internal load balancers. // // * VPC_PEERING for addresses that are reserved for VPC peer networks. // // * IPSEC_INTERCONNECT for addresses created from a private IP range that // are reserved for a VLAN attachment in an HA VPN over Cloud Interconnect // configuration. These addresses are regional resources. // // * PRIVATE_SERVICE_CONNECT for a private network address that is used to // configure Private Service Connect. Only global internal addresses can use // this purpose. // // This should only be set when using an Internal address. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#purpose ComputeAddress#purpose} Purpose *string `field:"optional" json:"purpose" yaml:"purpose"` // The Region in which the created address should reside. If it is not provided, the provider region is used. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#region ComputeAddress#region} Region *string `field:"optional" json:"region" yaml:"region"` // The URL of the subnetwork in which to reserve the address. // // If an IP // address is specified, it must be within the subnetwork's IP range. // This field can only be used with INTERNAL type with // GCE_ENDPOINT/DNS_RESOLVER purposes. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#subnetwork ComputeAddress#subnetwork} Subnetwork *string `field:"optional" json:"subnetwork" yaml:"subnetwork"` // timeouts block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#timeouts ComputeAddress#timeouts} Timeouts *ComputeAddressTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"` }
type ComputeAddressTimeouts ¶
type ComputeAddressTimeouts struct { // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#create ComputeAddress#create}. Create *string `field:"optional" json:"create" yaml:"create"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#delete ComputeAddress#delete}. Delete *string `field:"optional" json:"delete" yaml:"delete"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_address#update ComputeAddress#update}. Update *string `field:"optional" json:"update" yaml:"update"` }
type ComputeAddressTimeoutsOutputReference ¶
type ComputeAddressTimeoutsOutputReference interface { cdktf.ComplexObject // the index of the complex object in a list. // Experimental. ComplexObjectIndex() interface{} // Experimental. SetComplexObjectIndex(val interface{}) // set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items. // Experimental. ComplexObjectIsFromSet() *bool // Experimental. SetComplexObjectIsFromSet(val *bool) Create() *string SetCreate(val *string) CreateInput() *string // The creation stack of this resolvable which will be appended to errors thrown during resolution. // // If this returns an empty array the stack will not be attached. // Experimental. CreationStack() *[]*string Delete() *string SetDelete(val *string) DeleteInput() *string // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) Update() *string SetUpdate(val *string) UpdateInput() *string // Experimental. ComputeFqn() *string // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationAsList() cdktf.IResolvable // Experimental. InterpolationForAttribute(property *string) cdktf.IResolvable ResetCreate() ResetDelete() ResetUpdate() // Produce the Token's value at resolution time. // Experimental. Resolve(_context cdktf.IResolveContext) interface{} // Return a string representation of this resolvable object. // // Returns a reversible string representation. // Experimental. ToString() *string }
func NewComputeAddressTimeoutsOutputReference ¶
func NewComputeAddressTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeAddressTimeoutsOutputReference