vpc_attachments
Creates, updates, deletes or gets a vpc_attachment resource or lists vpc_attachments in a region
Overview
| Name | vpc_attachments |
| Type | Resource |
| Description | AWS::NetworkManager::VpcAttachment Resoruce Type |
| Id | awscc.networkmanager.vpc_attachments |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
core_network_id | string | The ID of a core network for the VPC attachment. |
core_network_arn | string | The ARN of a core network for the VPC attachment. |
attachment_id | string | Id of the attachment. |
owner_account_id | string | Owner account of the attachment. |
attachment_type | string | Attachment type. |
state | string | State of the attachment. |
edge_location | string | The Region where the edge is located. |
vpc_arn | string | The ARN of the VPC. |
resource_arn | string | The ARN of the Resource. |
attachment_policy_rule_number | integer | The policy rule number associated with the attachment. |
segment_name | string | The name of the segment attachment.. |
proposed_segment_change | object | The attachment to move from one segment to another. |
network_function_group_name | string | The name of the network function group attachment. |
proposed_network_function_group_change | object | The attachment to move from one network function group to another. |
tags | array | Tags for the attachment. |
created_at | string | Creation time of the attachment. |
updated_at | string | Last update time of the attachment. |
subnet_arns | array | Subnet Arn list |
options | object | Vpc options of the attachment. |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
attachment_id | string | Id of the attachment. |
region | string | AWS region. |
For more information, see AWS::NetworkManager::VpcAttachment.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | vpc_attachments | INSERT | CoreNetworkId, VpcArn, SubnetArns, region |
delete_resource | vpc_attachments | DELETE | Identifier, region |
update_resource | vpc_attachments | UPDATE | Identifier, PatchDocument, region |
list_resources | vpc_attachments_list_only | SELECT | region |
get_resource | vpc_attachments | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual vpc_attachment.
SELECT
region,
core_network_id,
core_network_arn,
attachment_id,
owner_account_id,
attachment_type,
state,
edge_location,
vpc_arn,
resource_arn,
attachment_policy_rule_number,
segment_name,
proposed_segment_change,
network_function_group_name,
proposed_network_function_group_change,
tags,
created_at,
updated_at,
subnet_arns,
options
FROM awscc.networkmanager.vpc_attachments
WHERE
region = '{{ region }}' AND
Identifier = '{{ attachment_id }}';
Lists all vpc_attachments in a region.
SELECT
region,
attachment_id
FROM awscc.networkmanager.vpc_attachments_list_only
WHERE
region = '{{ region }}';
INSERT example
Use the following StackQL query and manifest file to create a new vpc_attachment resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.networkmanager.vpc_attachments (
CoreNetworkId,
VpcArn,
SubnetArns,
region
)
SELECT
'{{ core_network_id }}',
'{{ vpc_arn }}',
'{{ subnet_arns }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
/*+ create */
INSERT INTO awscc.networkmanager.vpc_attachments (
CoreNetworkId,
VpcArn,
ProposedSegmentChange,
ProposedNetworkFunctionGroupChange,
Tags,
SubnetArns,
Options,
region
)
SELECT
'{{ core_network_id }}',
'{{ vpc_arn }}',
'{{ proposed_segment_change }}',
'{{ proposed_network_function_group_change }}',
'{{ tags }}',
'{{ subnet_arns }}',
'{{ options }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: vpc_attachment
props:
- name: core_network_id
value: '{{ core_network_id }}'
- name: vpc_arn
value: '{{ vpc_arn }}'
- name: proposed_segment_change
value:
tags:
- key: '{{ key }}'
value: '{{ value }}'
attachment_policy_rule_number: '{{ attachment_policy_rule_number }}'
segment_name: '{{ segment_name }}'
- name: proposed_network_function_group_change
value:
tags:
- null
attachment_policy_rule_number: '{{ attachment_policy_rule_number }}'
network_function_group_name: '{{ network_function_group_name }}'
- name: tags
value:
- null
- name: subnet_arns
value:
- '{{ subnet_arns[0] }}'
- name: options
value:
ipv6_support: '{{ ipv6_support }}'
appliance_mode_support: '{{ appliance_mode_support }}'
dns_support: '{{ dns_support }}'
security_group_referencing_support: '{{ security_group_referencing_support }}'
UPDATE example
Use the following StackQL query and manifest file to update a vpc_attachment resource, using stack-deploy.
/*+ update */
UPDATE awscc.networkmanager.vpc_attachments
SET PatchDocument = string('{{ {
"ProposedSegmentChange": proposed_segment_change,
"ProposedNetworkFunctionGroupChange": proposed_network_function_group_change,
"Tags": tags,
"SubnetArns": subnet_arns,
"Options": options
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ attachment_id }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
DELETE example
/*+ delete */
DELETE FROM awscc.networkmanager.vpc_attachments
WHERE
Identifier = '{{ attachment_id }}' AND
region = '{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
Additional Parameters
Mutable resources in the Cloud Control provider support additional optional parameters which can be supplied with INSERT, UPDATE, or DELETE operations. These include:
| Parameter | Description |
|---|---|
ClientToken | A unique identifier to ensure the idempotency of the resource request.This allows the provider to accurately distinguish between retries and new requests.A client token is valid for 36 hours once used. After that, a resource request with the same client token is treated as a new request. If you do not specify a client token, one is generated for inclusion in the request. |
RoleArn | The ARN of the IAM role used to perform this resource operation.The role specified must have the permissions required for this operation.If you do not specify a role, a temporary session is created using your AWS user credentials. |
TypeVersionId | For private resource types, the type version to use in this resource operation.If you do not specify a resource version, the default version is used. |
Permissions
To operate on the vpc_attachments resource, the following permissions are required:
- Create
- Read
- Update
- Delete
- List
networkmanager:CreateVpcAttachment,
networkmanager:GetVpcAttachment,
networkmanager:TagResource,
ec2:DescribeRegions,
iam:CreateServiceLinkedRole
networkmanager:GetVpcAttachment
networkmanager:UpdateVpcAttachment,
networkmanager:GetVpcAttachment,
networkmanager:ListTagsForResource,
networkmanager:TagResource,
networkmanager:UntagResource,
ec2:DescribeRegions
networkmanager:DeleteAttachment,
networkmanager:GetVpcAttachment,
networkmanager:UntagResource,
ec2:DescribeRegions
networkmanager:ListAttachments