rules
Creates, updates, deletes, gets or lists a rules resource.
Overview
| Name | rules |
| Type | Resource |
| Id | aws.vpc_lattice.rules |
Fields
The following fields are returned by SELECT queries:
- get_rule
- list_rules
| Name | Datatype | Description |
|---|---|---|
id | string | The ID of the listener. (pattern: <code>rule-[0-9a-z]{17}</code>) |
name | string | The name of the listener. (pattern: <code>(?!rule-)(?![-])(?!.[-]$)(?!.[-]{2})[a-z0-9-]+</code>) |
action | object | Describes the action for a rule. |
arn | string | The Amazon Resource Name (ARN) of the listener. (pattern: <code>arn:[a-z0-9-]+:vpc-lattice:[a-zA-Z0-9-]+:\d{12}:service/svc-[0-9a-z]{17}/listener/listener-[0-9a-z]{17}/rule/rule-[0-9a-z]{17}</code>) |
created_at | string (date-time) | The date and time that the listener rule was created, in ISO-8601 format. |
is_default | boolean | Indicates whether this is the default rule. |
last_updated_at | string (date-time) | The date and time that the listener rule was last updated, in ISO-8601 format. |
match | object | Describes a rule match. |
priority | integer | The priority level for the specified rule. |
| Name | Datatype | Description |
|---|---|---|
id | string | The ID of the rule. (pattern: <code>rule-[0-9a-z]{17}</code>) |
name | string | The name of the rule. (pattern: <code>(?!rule-)(?![-])(?!.[-]$)(?!.[-]{2})[a-z0-9-]+</code>) |
arn | string | The Amazon Resource Name (ARN) of the rule. (pattern: <code>arn:[a-z0-9-]+:vpc-lattice:[a-zA-Z0-9-]+:\d{12}:service/svc-[0-9a-z]{17}/listener/listener-[0-9a-z]{17}/rule/rule-[0-9a-z]{17}</code>) |
created_at | string (date-time) | The date and time that the listener rule was created, in ISO-8601 format. |
is_default | boolean | Indicates whether this is the default listener rule. |
last_updated_at | string (date-time) | The date and time that the listener rule was last updated, in ISO-8601 format. |
priority | integer | The priority of the rule. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_rule | select | service_identifier, listener_identifier, rule_identifier, region | Retrieves information about the specified listener rules. You can also retrieve information about the default listener rule. For more information, see Listener rules in the Amazon VPC Lattice User Guide. | |
list_rules | select | service_identifier, listener_identifier, region | maxResults, nextToken | Lists the rules for the specified listener. |
create_rule | insert | service_identifier, listener_identifier, region, name, match, priority, action | Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. For more information, see Listener rules in the Amazon VPC Lattice User Guide. | |
update_rule | update | service_identifier, listener_identifier, rule_identifier, region | Updates a specified rule for the listener. You can't modify a default listener rule. To modify a default listener rule, use UpdateListener. | |
delete_rule | delete | service_identifier, listener_identifier, rule_identifier, region | Deletes a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. You can delete additional listener rules, but you cannot delete the default rule. For more information, see Listener rules in the Amazon VPC Lattice User Guide. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
listener_identifier | string | The ID or ARN of the listener. |
region | string | AWS region (default: us-east-1) |
rule_identifier | string | The ID or ARN of the rule. |
service_identifier | string | The ID or ARN of the service. |
maxResults | integer | The maximum number of results to return. |
nextToken | string | A pagination token for the next page of results. |
SELECT examples
- get_rule
- list_rules
Retrieves information about the specified listener rules. You can also retrieve information about the default listener rule. For more information, see Listener rules in the Amazon VPC Lattice User Guide.
SELECT
id,
name,
action,
arn,
created_at,
is_default,
last_updated_at,
match,
priority
FROM aws.vpc_lattice.rules
WHERE service_identifier = '{{ service_identifier }}' -- required
AND listener_identifier = '{{ listener_identifier }}' -- required
AND rule_identifier = '{{ rule_identifier }}' -- required
AND region = '{{ region }}' -- required
;
Lists the rules for the specified listener.
SELECT
id,
name,
arn,
created_at,
is_default,
last_updated_at,
priority
FROM aws.vpc_lattice.rules
WHERE service_identifier = '{{ service_identifier }}' -- required
AND listener_identifier = '{{ listener_identifier }}' -- required
AND region = '{{ region }}' -- required
AND maxResults = '{{ maxResults }}'
AND nextToken = '{{ nextToken }}'
;
INSERT examples
- create_rule
- Manifest
Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. For more information, see Listener rules in the Amazon VPC Lattice User Guide.
INSERT INTO aws.vpc_lattice.rules (
name,
match,
priority,
action,
clientToken,
tags,
service_identifier,
listener_identifier,
region
)
SELECT
'{{ name }}' /* required */,
'{{ match }}' /* required */,
{{ priority }} /* required */,
'{{ action }}' /* required */,
'{{ clientToken }}',
'{{ tags }}',
'{{ service_identifier }}',
'{{ listener_identifier }}',
'{{ region }}'
RETURNING
id,
name,
action,
arn,
match,
priority
;
# Description fields are for documentation purposes
- name: rules
props:
- name: service_identifier
value: "{{ service_identifier }}"
description: Required parameter for the rules resource.
- name: listener_identifier
value: "{{ listener_identifier }}"
description: Required parameter for the rules resource.
- name: region
value: "{{ region }}"
description: Required parameter for the rules resource.
- name: name
value: "{{ name }}"
- name: match
description: |
Describes a rule match.
value:
httpMatch:
method: "{{ method }}"
pathMatch:
match:
exact: "{{ exact }}"
prefix: "{{ prefix }}"
caseSensitive: {{ caseSensitive }}
headerMatches:
- name: "{{ name }}"
match:
exact: "{{ exact }}"
prefix: "{{ prefix }}"
contains: "{{ contains }}"
caseSensitive: {{ caseSensitive }}
- name: priority
value: {{ priority }}
- name: action
description: |
Describes the action for a rule.
value:
forward:
targetGroups:
- targetGroupIdentifier: "{{ targetGroupIdentifier }}"
weight: {{ weight }}
fixedResponse:
statusCode: {{ statusCode }}
- name: clientToken
value: "{{ clientToken }}"
- name: tags
value: "{{ tags }}"
UPDATE examples
- update_rule
Updates a specified rule for the listener. You can't modify a default listener rule. To modify a default listener rule, use UpdateListener.
UPDATE aws.vpc_lattice.rules
SET
match = '{{ match }}',
priority = {{ priority }},
action = '{{ action }}'
WHERE
service_identifier = '{{ service_identifier }}' --required
AND listener_identifier = '{{ listener_identifier }}' --required
AND rule_identifier = '{{ rule_identifier }}' --required
AND region = '{{ region }}' --required
RETURNING
id,
name,
action,
arn,
is_default,
match,
priority;
DELETE examples
- delete_rule
Deletes a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. You can delete additional listener rules, but you cannot delete the default rule. For more information, see Listener rules in the Amazon VPC Lattice User Guide.
DELETE FROM aws.vpc_lattice.rules
WHERE service_identifier = '{{ service_identifier }}' --required
AND listener_identifier = '{{ listener_identifier }}' --required
AND rule_identifier = '{{ rule_identifier }}' --required
AND region = '{{ region }}' --required
;