addons
Creates, updates, deletes or gets an addon resource or lists addons in a region
Overview
| Name | addons |
| Type | Resource |
| Description | Resource Schema for AWS::EKS::Addon |
| Id | awscc.eks.addons |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
cluster_name | string | Name of Cluster |
addon_name | string | Name of Addon |
addon_version | string | Version of Addon |
preserve_on_delete | boolean | PreserveOnDelete parameter value |
resolve_conflicts | string | Resolve parameter value conflicts |
service_account_role_arn | string | IAM role to bind to the add-on's service account |
pod_identity_associations | array | An array of pod identities to apply to this add-on. |
configuration_values | string | The configuration values to use with the add-on |
arn | string | Amazon Resource Name (ARN) of the add-on |
namespace_config | object | The custom namespace configuration to use with the add-on |
tags | array | An array of key-value pairs to apply to this resource. |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
cluster_name | string | Name of Cluster |
addon_name | string | Name of Addon |
region | string | AWS region. |
For more information, see AWS::EKS::Addon.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | addons | INSERT | ClusterName, AddonName, region |
delete_resource | addons | DELETE | Identifier, region |
update_resource | addons | UPDATE | Identifier, PatchDocument, region |
list_resources | addons_list_only | SELECT | region |
get_resource | addons | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual addon.
SELECT
region,
cluster_name,
addon_name,
addon_version,
preserve_on_delete,
resolve_conflicts,
service_account_role_arn,
pod_identity_associations,
configuration_values,
arn,
namespace_config,
tags
FROM awscc.eks.addons
WHERE
region = 'us-east-1' AND
Identifier = '{{ cluster_name }}|{{ addon_name }}';
Lists all addons in a region.
SELECT
region,
cluster_name,
addon_name
FROM awscc.eks.addons_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new addon resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.eks.addons (
ClusterName,
AddonName,
region
)
SELECT
'{{ cluster_name }}',
'{{ addon_name }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.eks.addons (
ClusterName,
AddonName,
AddonVersion,
PreserveOnDelete,
ResolveConflicts,
ServiceAccountRoleArn,
PodIdentityAssociations,
ConfigurationValues,
NamespaceConfig,
Tags,
region
)
SELECT
'{{ cluster_name }}',
'{{ addon_name }}',
'{{ addon_version }}',
'{{ preserve_on_delete }}',
'{{ resolve_conflicts }}',
'{{ service_account_role_arn }}',
'{{ pod_identity_associations }}',
'{{ configuration_values }}',
'{{ namespace_config }}',
'{{ tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: addon
props:
- name: cluster_name
value: '{{ cluster_name }}'
- name: addon_name
value: '{{ addon_name }}'
- name: addon_version
value: '{{ addon_version }}'
- name: preserve_on_delete
value: '{{ preserve_on_delete }}'
- name: resolve_conflicts
value: '{{ resolve_conflicts }}'
- name: service_account_role_arn
value: '{{ service_account_role_arn }}'
- name: pod_identity_associations
value:
- cluster_name: '{{ cluster_name }}'
role_arn: '{{ role_arn }}'
namespace: '{{ namespace }}'
service_account: '{{ service_account }}'
target_role_arn: '{{ target_role_arn }}'
disable_session_tags: '{{ disable_session_tags }}'
tags:
- key: '{{ key }}'
value: '{{ value }}'
- name: configuration_values
value: '{{ configuration_values }}'
- name: namespace_config
value:
namespace: '{{ namespace }}'
- name: tags
value:
- null
UPDATE example
Use the following StackQL query and manifest file to update a addon resource, using stack-deploy.
/*+ update */
UPDATE awscc.eks.addons
SET PatchDocument = string('{{ {
"AddonVersion": addon_version,
"PreserveOnDelete": preserve_on_delete,
"ResolveConflicts": resolve_conflicts,
"ServiceAccountRoleArn": service_account_role_arn,
"PodIdentityAssociations": pod_identity_associations,
"ConfigurationValues": configuration_values,
"Tags": tags
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ cluster_name }}|{{ addon_name }}';
DELETE example
/*+ delete */
DELETE FROM awscc.eks.addons
WHERE
Identifier = '{{ cluster_name }}|{{ addon_name }}' AND
region = 'us-east-1';
Permissions
To operate on the addons resource, the following permissions are required:
- Create
- Read
- Delete
- List
- Update
eks:CreateAddon,
eks:DescribeAddon,
eks:TagResource,
iam:PassRole,
iam:GetRole,
eks:CreatePodIdentityAssociation
eks:DescribeAddon
eks:DeleteAddon,
eks:DescribeAddon,
eks:DeletePodIdentityAssociation
eks:ListAddons
iam:PassRole,
iam:GetRole,
eks:UpdateAddon,
eks:DescribeAddon,
eks:DescribeUpdate,
eks:TagResource,
eks:UntagResource,
eks:CreatePodIdentityAssociation,
eks:DeletePodIdentityAssociation,
eks:UpdatePodIdentityAssociation