From e0bd217528c44a97970791443cec400d8ef57102 Mon Sep 17 00:00:00 2001 From: tflibsonnet-ci <120686569+tflibsonnet-ci@users.noreply.github.com> Date: Wed, 8 Mar 2023 10:29:12 -0600 Subject: [PATCH] Update dependency hashicorp/terraform-provider-hcp to v0.55.0 (#15) Signed-off-by: tflibsonnet-ci <120686569+tflibsonnet-ci@users.noreply.github.com> Co-authored-by: renovate[bot] --- 0.x/_gen/resources/consul_cluster.libsonnet | 38 +++++++++++- 0.x/_gen/resources/packer_channel.libsonnet | 4 +- docs/0.x/consul_cluster.md | 67 +++++++++++++++++++++ docs/0.x/packer_channel.md | 4 +- 4 files changed, 107 insertions(+), 6 deletions(-) diff --git a/0.x/_gen/resources/consul_cluster.libsonnet b/0.x/_gen/resources/consul_cluster.libsonnet index 5e458bc..2dfb6ca 100644 --- a/0.x/_gen/resources/consul_cluster.libsonnet +++ b/0.x/_gen/resources/consul_cluster.libsonnet @@ -2,7 +2,17 @@ local tf = (import 'github.com/tf-libsonnet/core/main.libsonnet'); local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); { '#':: d.pkg(name='consul_cluster', url='', help='`consul_cluster` represents the `hcp_consul_cluster` Terraform resource.\n\nThe Consul cluster resource allows you to manage an HCP Consul cluster.\n\nThis package contains functions and utilities for setting up the resource using Jsonnet code.\n'), - '#new':: d.fn(help="\n`hcp.consul_cluster.new` injects a new `hcp_consul_cluster` Terraform `resource`\nblock into the root module document.\n\nAdditionally, this inserts a private function into the `_ref` attribute that generates references to attributes of the\nresource. For example, if you added a new instance to the root using:\n\n # arguments omitted for brevity\n hcp.consul_cluster.new('some_id')\n\nYou can get the reference to the `id` field of the created `hcp.consul_cluster` using the reference:\n\n $._ref.hcp_consul_cluster.some_id.get('id')\n\nThis is the same as directly entering `\"${ hcp_consul_cluster.some_id.id }\"` as the value.\n\nNOTE: if you are chaining multiple resources together in a merge operation, you may not be able to use `super`, `self`,\nor `$` to refer to the root object. Instead, make an explicit outer object using `local`.\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block.\n - `auto_hvn_to_hvn_peering` (`bool`): Enables automatic HVN to HVN peering when creating a secondary cluster in a federation. The alternative to using the auto-accept feature is to create an [`hcp_hvn_peering_connection`](hvn_peering_connection.md) resource that explicitly defines the HVN resources that are allowed to communicate with each other. When `null`, the `auto_hvn_to_hvn_peering` field will be omitted from the resulting object.\n - `cluster_id` (`string`): The ID of the HCP Consul cluster.\n - `connect_enabled` (`bool`): Denotes the Consul connect feature should be enabled for this cluster. Default to true. When `null`, the `connect_enabled` field will be omitted from the resulting object.\n - `datacenter` (`string`): The Consul data center name of the cluster. If not specified, it is defaulted to the value of `cluster_id`. When `null`, the `datacenter` field will be omitted from the resulting object.\n - `hvn_id` (`string`): The ID of the HVN this HCP Consul cluster is associated to.\n - `min_consul_version` (`string`): The minimum Consul patch version of the cluster. Allows only the rightmost version component to increment (E.g: `1.13.0` will allow installation of `1.13.2` and `1.13.3` etc., but not `1.14.0`). If not specified, it is defaulted to the version that is currently recommended by HCP. When `null`, the `min_consul_version` field will be omitted from the resulting object.\n - `primary_link` (`string`): The `self_link` of the HCP Consul cluster which is the primary in the federation setup with this HCP Consul cluster. If not specified, it is a standalone cluster. When `null`, the `primary_link` field will be omitted from the resulting object.\n - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object.\n - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object.\n - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul).\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n- A mixin object that injects the new resource into the root Terraform configuration.\n", args=[]), + ip_allowlist:: { + '#new':: d.fn(help='\n`hcp.consul_cluster.ip_allowlist.new` constructs a new object with attributes and blocks configured for the `ip_allowlist`\nTerraform sub block.\n\n\n\n**Args**:\n - `address` (`string`): IP address range in CIDR notation.\n - `description` (`string`): Description to help identify source (maximum 255 chars). When `null`, the `description` field will be omitted from the resulting object.\n\n**Returns**:\n - An attribute object that represents the `ip_allowlist` sub block.\n', args=[]), + new( + address, + description=null + ):: std.prune(a={ + address: address, + description: description, + }), + }, + '#new':: d.fn(help="\n`hcp.consul_cluster.new` injects a new `hcp_consul_cluster` Terraform `resource`\nblock into the root module document.\n\nAdditionally, this inserts a private function into the `_ref` attribute that generates references to attributes of the\nresource. For example, if you added a new instance to the root using:\n\n # arguments omitted for brevity\n hcp.consul_cluster.new('some_id')\n\nYou can get the reference to the `id` field of the created `hcp.consul_cluster` using the reference:\n\n $._ref.hcp_consul_cluster.some_id.get('id')\n\nThis is the same as directly entering `\"${ hcp_consul_cluster.some_id.id }\"` as the value.\n\nNOTE: if you are chaining multiple resources together in a merge operation, you may not be able to use `super`, `self`,\nor `$` to refer to the root object. Instead, make an explicit outer object using `local`.\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block.\n - `auto_hvn_to_hvn_peering` (`bool`): Enables automatic HVN to HVN peering when creating a secondary cluster in a federation. The alternative to using the auto-accept feature is to create an [`hcp_hvn_peering_connection`](hvn_peering_connection.md) resource that explicitly defines the HVN resources that are allowed to communicate with each other. When `null`, the `auto_hvn_to_hvn_peering` field will be omitted from the resulting object.\n - `cluster_id` (`string`): The ID of the HCP Consul cluster.\n - `connect_enabled` (`bool`): Denotes the Consul connect feature should be enabled for this cluster. Default to true. When `null`, the `connect_enabled` field will be omitted from the resulting object.\n - `datacenter` (`string`): The Consul data center name of the cluster. If not specified, it is defaulted to the value of `cluster_id`. When `null`, the `datacenter` field will be omitted from the resulting object.\n - `hvn_id` (`string`): The ID of the HVN this HCP Consul cluster is associated to.\n - `min_consul_version` (`string`): The minimum Consul patch version of the cluster. Allows only the rightmost version component to increment (E.g: `1.13.0` will allow installation of `1.13.2` and `1.13.3` etc., but not `1.14.0`). If not specified, it is defaulted to the version that is currently recommended by HCP. When `null`, the `min_consul_version` field will be omitted from the resulting object.\n - `primary_link` (`string`): The `self_link` of the HCP Consul cluster which is the primary in the federation setup with this HCP Consul cluster. If not specified, it is a standalone cluster. When `null`, the `primary_link` field will be omitted from the resulting object.\n - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object.\n - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object.\n - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul).\n - `ip_allowlist` (`list[obj]`): Allowed IPV4 address ranges (CIDRs) for inbound traffic. Each entry must be a unique CIDR. Maximum 3 CIDRS supported at this time. When `null`, the `ip_allowlist` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.ip_allowlist.new](#fn-ip_allowlistnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n- A mixin object that injects the new resource into the root Terraform configuration.\n", args=[]), new( resourceLabel, cluster_id, @@ -11,6 +21,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); auto_hvn_to_hvn_peering=null, connect_enabled=null, datacenter=null, + ip_allowlist=null, min_consul_version=null, primary_link=null, public_endpoint=null, @@ -26,6 +37,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); connect_enabled=connect_enabled, datacenter=datacenter, hvn_id=hvn_id, + ip_allowlist=ip_allowlist, min_consul_version=min_consul_version, primary_link=primary_link, public_endpoint=public_endpoint, @@ -35,7 +47,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); ), _meta=_meta ), - '#newAttrs':: d.fn(help='\n`hcp.consul_cluster.newAttrs` constructs a new object with attributes and blocks configured for the `consul_cluster`\nTerraform resource.\n\nUnlike [hcp.consul_cluster.new](#fn-new), this function will not inject the `resource`\nblock into the root Terraform document. Instead, this must be passed in as the `attrs` argument for the\n[tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) function to build a complete block.\n\nThis is most useful when you need to preprocess the attributes with functions, conditional, or looping logic prior to\ninjecting into a complete block.\n\n**Args**:\n - `auto_hvn_to_hvn_peering` (`bool`): Enables automatic HVN to HVN peering when creating a secondary cluster in a federation. The alternative to using the auto-accept feature is to create an [`hcp_hvn_peering_connection`](hvn_peering_connection.md) resource that explicitly defines the HVN resources that are allowed to communicate with each other. When `null`, the `auto_hvn_to_hvn_peering` field will be omitted from the resulting object.\n - `cluster_id` (`string`): The ID of the HCP Consul cluster.\n - `connect_enabled` (`bool`): Denotes the Consul connect feature should be enabled for this cluster. Default to true. When `null`, the `connect_enabled` field will be omitted from the resulting object.\n - `datacenter` (`string`): The Consul data center name of the cluster. If not specified, it is defaulted to the value of `cluster_id`. When `null`, the `datacenter` field will be omitted from the resulting object.\n - `hvn_id` (`string`): The ID of the HVN this HCP Consul cluster is associated to.\n - `min_consul_version` (`string`): The minimum Consul patch version of the cluster. Allows only the rightmost version component to increment (E.g: `1.13.0` will allow installation of `1.13.2` and `1.13.3` etc., but not `1.14.0`). If not specified, it is defaulted to the version that is currently recommended by HCP. When `null`, the `min_consul_version` field will be omitted from the resulting object.\n - `primary_link` (`string`): The `self_link` of the HCP Consul cluster which is the primary in the federation setup with this HCP Consul cluster. If not specified, it is a standalone cluster. When `null`, the `primary_link` field will be omitted from the resulting object.\n - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object.\n - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object.\n - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul).\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n - An attribute object that can be used with [tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) to construct a new `consul_cluster` resource into the root Terraform configuration.\n', args=[]), + '#newAttrs':: d.fn(help='\n`hcp.consul_cluster.newAttrs` constructs a new object with attributes and blocks configured for the `consul_cluster`\nTerraform resource.\n\nUnlike [hcp.consul_cluster.new](#fn-new), this function will not inject the `resource`\nblock into the root Terraform document. Instead, this must be passed in as the `attrs` argument for the\n[tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) function to build a complete block.\n\nThis is most useful when you need to preprocess the attributes with functions, conditional, or looping logic prior to\ninjecting into a complete block.\n\n**Args**:\n - `auto_hvn_to_hvn_peering` (`bool`): Enables automatic HVN to HVN peering when creating a secondary cluster in a federation. The alternative to using the auto-accept feature is to create an [`hcp_hvn_peering_connection`](hvn_peering_connection.md) resource that explicitly defines the HVN resources that are allowed to communicate with each other. When `null`, the `auto_hvn_to_hvn_peering` field will be omitted from the resulting object.\n - `cluster_id` (`string`): The ID of the HCP Consul cluster.\n - `connect_enabled` (`bool`): Denotes the Consul connect feature should be enabled for this cluster. Default to true. When `null`, the `connect_enabled` field will be omitted from the resulting object.\n - `datacenter` (`string`): The Consul data center name of the cluster. If not specified, it is defaulted to the value of `cluster_id`. When `null`, the `datacenter` field will be omitted from the resulting object.\n - `hvn_id` (`string`): The ID of the HVN this HCP Consul cluster is associated to.\n - `min_consul_version` (`string`): The minimum Consul patch version of the cluster. Allows only the rightmost version component to increment (E.g: `1.13.0` will allow installation of `1.13.2` and `1.13.3` etc., but not `1.14.0`). If not specified, it is defaulted to the version that is currently recommended by HCP. When `null`, the `min_consul_version` field will be omitted from the resulting object.\n - `primary_link` (`string`): The `self_link` of the HCP Consul cluster which is the primary in the federation setup with this HCP Consul cluster. If not specified, it is a standalone cluster. When `null`, the `primary_link` field will be omitted from the resulting object.\n - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object.\n - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object.\n - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul).\n - `ip_allowlist` (`list[obj]`): Allowed IPV4 address ranges (CIDRs) for inbound traffic. Each entry must be a unique CIDR. Maximum 3 CIDRS supported at this time. When `null`, the `ip_allowlist` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.ip_allowlist.new](#fn-ip_allowlistnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n - An attribute object that can be used with [tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) to construct a new `consul_cluster` resource into the root Terraform configuration.\n', args=[]), newAttrs( cluster_id, hvn_id, @@ -43,6 +55,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); auto_hvn_to_hvn_peering=null, connect_enabled=null, datacenter=null, + ip_allowlist=null, min_consul_version=null, primary_link=null, public_endpoint=null, @@ -54,6 +67,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); connect_enabled: connect_enabled, datacenter: datacenter, hvn_id: hvn_id, + ip_allowlist: ip_allowlist, min_consul_version: min_consul_version, primary_link: primary_link, public_endpoint: public_endpoint, @@ -125,6 +139,26 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); }, }, }, + '#withIpAllowlist':: d.fn(help='`hcp.list[obj].withIpAllowlist` constructs a mixin object that can be merged into the `list[obj]`\nTerraform resource block to set or update the ip_allowlist field.\n\nThis function will replace the array with the passed in `value`. If you wish to instead append the\npassed in value to the existing array, use the [hcp.list[obj].withIpAllowlistMixin](TODO) function.\n\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block to update.\n - `value` (`list[obj]`): The value to set for the `ip_allowlist` field.\n', args=[]), + withIpAllowlist(resourceLabel, value): { + resource+: { + hcp_consul_cluster+: { + [resourceLabel]+: { + ip_allowlist: value, + }, + }, + }, + }, + '#withIpAllowlistMixin':: d.fn(help='`hcp.list[obj].withIpAllowlistMixin` constructs a mixin object that can be merged into the `list[obj]`\nTerraform resource block to set or update the ip_allowlist field.\n\nThis function will append the passed in array or object to the existing array. If you wish\nto instead replace the array with the passed in `value`, use the [hcp.list[obj].withIpAllowlist](TODO)\nfunction.\n\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block to update.\n - `value` (`list[obj]`): The value to set for the `ip_allowlist` field.\n', args=[]), + withIpAllowlistMixin(resourceLabel, value): { + resource+: { + hcp_consul_cluster+: { + [resourceLabel]+: { + ip_allowlist+: if std.isArray(v=value) then value else [value], + }, + }, + }, + }, '#withMinConsulVersion':: d.fn(help='`hcp.string.withMinConsulVersion` constructs a mixin object that can be merged into the `string`\nTerraform resource block to set or update the min_consul_version field.\n\n\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block to update.\n - `value` (`string`): The value to set for the `min_consul_version` field.\n', args=[]), withMinConsulVersion(resourceLabel, value): { resource+: { diff --git a/0.x/_gen/resources/packer_channel.libsonnet b/0.x/_gen/resources/packer_channel.libsonnet index 68dfd50..70a5ae8 100644 --- a/0.x/_gen/resources/packer_channel.libsonnet +++ b/0.x/_gen/resources/packer_channel.libsonnet @@ -12,7 +12,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); incremental_version: incremental_version, }), }, - '#new':: d.fn(help="\n`hcp.packer_channel.new` injects a new `hcp_packer_channel` Terraform `resource`\nblock into the root module document.\n\nAdditionally, this inserts a private function into the `_ref` attribute that generates references to attributes of the\nresource. For example, if you added a new instance to the root using:\n\n # arguments omitted for brevity\n hcp.packer_channel.new('some_id')\n\nYou can get the reference to the `id` field of the created `hcp.packer_channel` using the reference:\n\n $._ref.hcp_packer_channel.some_id.get('id')\n\nThis is the same as directly entering `\"${ hcp_packer_channel.some_id.id }\"` as the value.\n\nNOTE: if you are chaining multiple resources together in a merge operation, you may not be able to use `super`, `self`,\nor `$` to refer to the root object. Instead, make an explicit outer object using `local`.\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block.\n - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be managed in.\n - `name` (`string`): The name of the channel being managed.\n - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n- A mixin object that injects the new resource into the root Terraform configuration.\n", args=[]), + '#new':: d.fn(help="\n`hcp.packer_channel.new` injects a new `hcp_packer_channel` Terraform `resource`\nblock into the root module document.\n\nAdditionally, this inserts a private function into the `_ref` attribute that generates references to attributes of the\nresource. For example, if you added a new instance to the root using:\n\n # arguments omitted for brevity\n hcp.packer_channel.new('some_id')\n\nYou can get the reference to the `id` field of the created `hcp.packer_channel` using the reference:\n\n $._ref.hcp_packer_channel.some_id.get('id')\n\nThis is the same as directly entering `\"${ hcp_packer_channel.some_id.id }\"` as the value.\n\nNOTE: if you are chaining multiple resources together in a merge operation, you may not be able to use `super`, `self`,\nor `$` to refer to the root object. Instead, make an explicit outer object using `local`.\n\n**Args**:\n - `resourceLabel` (`string`): The name label of the block.\n - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be created in.\n - `name` (`string`): The name of the channel being managed.\n - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n- A mixin object that injects the new resource into the root Terraform configuration.\n", args=[]), new( resourceLabel, bucket_name, @@ -31,7 +31,7 @@ local d = (import 'github.com/jsonnet-libs/docsonnet/doc-util/main.libsonnet'); ), _meta=_meta ), - '#newAttrs':: d.fn(help='\n`hcp.packer_channel.newAttrs` constructs a new object with attributes and blocks configured for the `packer_channel`\nTerraform resource.\n\nUnlike [hcp.packer_channel.new](#fn-new), this function will not inject the `resource`\nblock into the root Terraform document. Instead, this must be passed in as the `attrs` argument for the\n[tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) function to build a complete block.\n\nThis is most useful when you need to preprocess the attributes with functions, conditional, or looping logic prior to\ninjecting into a complete block.\n\n**Args**:\n - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be managed in.\n - `name` (`string`): The name of the channel being managed.\n - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n - An attribute object that can be used with [tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) to construct a new `packer_channel` resource into the root Terraform configuration.\n', args=[]), + '#newAttrs':: d.fn(help='\n`hcp.packer_channel.newAttrs` constructs a new object with attributes and blocks configured for the `packer_channel`\nTerraform resource.\n\nUnlike [hcp.packer_channel.new](#fn-new), this function will not inject the `resource`\nblock into the root Terraform document. Instead, this must be passed in as the `attrs` argument for the\n[tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) function to build a complete block.\n\nThis is most useful when you need to preprocess the attributes with functions, conditional, or looping logic prior to\ninjecting into a complete block.\n\n**Args**:\n - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be created in.\n - `name` (`string`): The name of the channel being managed.\n - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor.\n - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor.\n\n**Returns**:\n - An attribute object that can be used with [tf.withResource](https://github.com/tf-libsonnet/core/tree/main/docs#fn-withresource) to construct a new `packer_channel` resource into the root Terraform configuration.\n', args=[]), newAttrs( bucket_name, name, diff --git a/docs/0.x/consul_cluster.md b/docs/0.x/consul_cluster.md index 920aade..40958dc 100644 --- a/docs/0.x/consul_cluster.md +++ b/docs/0.x/consul_cluster.md @@ -20,6 +20,8 @@ This package contains functions and utilities for setting up the resource using * [`fn withConnectEnabled()`](#fn-withconnectenabled) * [`fn withDatacenter()`](#fn-withdatacenter) * [`fn withHvnId()`](#fn-withhvnid) +* [`fn withIpAllowlist()`](#fn-withipallowlist) +* [`fn withIpAllowlistMixin()`](#fn-withipallowlistmixin) * [`fn withMinConsulVersion()`](#fn-withminconsulversion) * [`fn withPrimaryLink()`](#fn-withprimarylink) * [`fn withPublicEndpoint()`](#fn-withpublicendpoint) @@ -27,6 +29,8 @@ This package contains functions and utilities for setting up the resource using * [`fn withTier()`](#fn-withtier) * [`fn withTimeouts()`](#fn-withtimeouts) * [`fn withTimeoutsMixin()`](#fn-withtimeoutsmixin) +* [`obj ip_allowlist`](#obj-ip_allowlist) + * [`fn new()`](#fn-ip_allowlistnew) * [`obj timeouts`](#obj-timeouts) * [`fn new()`](#fn-timeoutsnew) @@ -69,6 +73,7 @@ or `$` to refer to the root object. Instead, make an explicit outer object using - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object. - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object. - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul). + - `ip_allowlist` (`list[obj]`): Allowed IPV4 address ranges (CIDRs) for inbound traffic. Each entry must be a unique CIDR. Maximum 3 CIDRS supported at this time. When `null`, the `ip_allowlist` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.ip_allowlist.new](#fn-ip_allowlistnew) constructor. - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor. **Returns**: @@ -103,6 +108,7 @@ injecting into a complete block. - `public_endpoint` (`bool`): Denotes that the cluster has a public endpoint for the Consul UI. Defaults to false. When `null`, the `public_endpoint` field will be omitted from the resulting object. - `size` (`string`): The t-shirt size representation of each server VM that this Consul cluster is provisioned with. Valid option for development tier - `x_small`. Valid options for other tiers - `small`, `medium`, `large`. For more details - https://cloud.hashicorp.com/pricing/consul. Upgrading the size of a cluster after creation is allowed. When `null`, the `size` field will be omitted from the resulting object. - `tier` (`string`): The tier that the HCP Consul cluster will be provisioned as. Only `development`, `standard` and `plus` are available at this time. See [pricing information](https://cloud.hashicorp.com/pricing/consul). + - `ip_allowlist` (`list[obj]`): Allowed IPV4 address ranges (CIDRs) for inbound traffic. Each entry must be a unique CIDR. Maximum 3 CIDRS supported at this time. When `null`, the `ip_allowlist` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.ip_allowlist.new](#fn-ip_allowlistnew) constructor. - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.consul_cluster.timeouts.new](#fn-timeoutsnew) constructor. **Returns**: @@ -189,6 +195,43 @@ Terraform resource block to set or update the hvn_id field. - `value` (`string`): The value to set for the `hvn_id` field. +### fn withIpAllowlist + +```ts +withIpAllowlist() +``` + +`hcp.list[obj].withIpAllowlist` constructs a mixin object that can be merged into the `list[obj]` +Terraform resource block to set or update the ip_allowlist field. + +This function will replace the array with the passed in `value`. If you wish to instead append the +passed in value to the existing array, use the [hcp.list[obj].withIpAllowlistMixin](TODO) function. + + +**Args**: + - `resourceLabel` (`string`): The name label of the block to update. + - `value` (`list[obj]`): The value to set for the `ip_allowlist` field. + + +### fn withIpAllowlistMixin + +```ts +withIpAllowlistMixin() +``` + +`hcp.list[obj].withIpAllowlistMixin` constructs a mixin object that can be merged into the `list[obj]` +Terraform resource block to set or update the ip_allowlist field. + +This function will append the passed in array or object to the existing array. If you wish +to instead replace the array with the passed in `value`, use the [hcp.list[obj].withIpAllowlist](TODO) +function. + + +**Args**: + - `resourceLabel` (`string`): The name label of the block to update. + - `value` (`list[obj]`): The value to set for the `ip_allowlist` field. + + ### fn withMinConsulVersion ```ts @@ -305,6 +348,30 @@ function. - `value` (`obj`): The value to set for the `timeouts` field. +## obj ip_allowlist + + + +### fn ip_allowlist.new + +```ts +new() +``` + + +`hcp.consul_cluster.ip_allowlist.new` constructs a new object with attributes and blocks configured for the `ip_allowlist` +Terraform sub block. + + + +**Args**: + - `address` (`string`): IP address range in CIDR notation. + - `description` (`string`): Description to help identify source (maximum 255 chars). When `null`, the `description` field will be omitted from the resulting object. + +**Returns**: + - An attribute object that represents the `ip_allowlist` sub block. + + ## obj timeouts diff --git a/docs/0.x/packer_channel.md b/docs/0.x/packer_channel.md index 3e80471..1c38b90 100644 --- a/docs/0.x/packer_channel.md +++ b/docs/0.x/packer_channel.md @@ -55,7 +55,7 @@ or `$` to refer to the root object. Instead, make an explicit outer object using **Args**: - `resourceLabel` (`string`): The name label of the block. - - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be managed in. + - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be created in. - `name` (`string`): The name of the channel being managed. - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor. - `timeouts` (`obj`): Set the `timeouts` field on the resulting resource block. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor. @@ -82,7 +82,7 @@ This is most useful when you need to preprocess the attributes with functions, c injecting into a complete block. **Args**: - - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be managed in. + - `bucket_name` (`string`): The slug of the HCP Packer Registry image bucket where the channel should be created in. - `name` (`string`): The name of the channel being managed. - `iteration` (`list[obj]`): The iteration assigned to the channel. When `null`, the `iteration` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.iteration.new](#fn-iterationnew) constructor. - `timeouts` (`obj`): Set the `timeouts` field on the resulting object. When `null`, the `timeouts` sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the [hcp.packer_channel.timeouts.new](#fn-timeoutsnew) constructor.