Skip to main content

capabilities

Creates, updates, deletes, gets or lists a capabilities resource.

Overview

Namecapabilities
TypeResource
Idaws.eks.capabilities

Fields

The following fields are returned by SELECT queries:

NameDatatypeDescription
arnstringThe Amazon Resource Name (ARN) of the capability.
capability_namestringThe unique name of the capability within the cluster.
cluster_namestringThe name of the Amazon EKS cluster that contains this capability.
configurationobjectThe configuration settings for the capability. The structure varies depending on the capability type.
created_atstring (date-time)The Unix epoch timestamp in seconds for when the capability was created.
delete_propagation_policystringThe delete propagation policy for the capability. Currently, the only supported value is RETAIN, which keeps all resources managed by the capability when the capability is deleted. (RETAIN)
healthobjectHealth information for the capability, including any issues that may be affecting its operation.
modified_atstring (date-time)The Unix epoch timestamp in seconds for when the capability was last modified.
role_arnstringThe Amazon Resource Name (ARN) of the IAM role that the capability uses to interact with Amazon Web Services services.
statusstringThe current status of the capability. Valid values include: CREATING – The capability is being created. ACTIVE – The capability is running and available. UPDATING – The capability is being updated. DELETING – The capability is being deleted. CREATE_FAILED – The capability creation failed. UPDATE_FAILED – The capability update failed. DELETE_FAILED – The capability deletion failed. (CREATING, CREATE_FAILED, UPDATING, DELETING, DELETE_FAILED, ACTIVE, DEGRADED)
tagsobject
type_stringThe type of capability. Valid values are ACK, ARGOCD, or KRO. (ACK, KRO, ARGOCD)
versionstringThe version of the capability software that is currently running.

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
describe_capabilityselectname, capability_name, regionReturns detailed information about a specific managed capability in your Amazon EKS cluster, including its current status, configuration, health information, and any issues that may be affecting its operation.
list_capabilitiesselectname, regionnextToken, maxResultsLists all managed capabilities in your Amazon EKS cluster. You can use this operation to get an overview of all capabilities and their current status.
create_capabilityinsertname, region, capabilityName, type, roleArn, deletePropagationPolicyCreates a managed capability resource for an Amazon EKS cluster. Capabilities provide fully managed capabilities to build and scale with Kubernetes. When you create a capability, Amazon EKSprovisions and manages the infrastructure required to run the capability outside of your cluster. This approach reduces operational overhead and preserves cluster resources. You can only create one Capability of each type on a given Amazon EKS cluster. Valid types are Argo CD for declarative GitOps deployment, Amazon Web Services Controllers for Kubernetes (ACK) for resource management, and Kube Resource Orchestrator (KRO) for Kubernetes custom resource orchestration. For more information, see EKS Capabilities in the Amazon EKS User Guide.
update_capabilityupdatename, capability_name, regionUpdates the configuration of a managed capability in your Amazon EKS cluster. You can update the IAM role, configuration settings, and delete propagation policy for a capability. When you update a capability, Amazon EKS applies the changes and may restart capability components as needed. The capability remains available during the update process, but some operations may be temporarily unavailable.
delete_capabilitydeletename, capability_name, regionDeletes a managed capability from your Amazon EKS cluster. When you delete a capability, Amazon EKS removes the capability infrastructure but retains all resources that were managed by the capability. Before deleting a capability, you should delete all Kubernetes resources that were created by the capability. After the capability is deleted, these resources become difficult to manage because the controller that managed them is no longer available. To delete resources before removing the capability, use kubectl delete or remove them through your GitOps workflow.

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.

NameDatatypeDescription
capability_namestringThe name of the capability to delete.
namestringThe name of the Amazon EKS cluster that contains the capability you want to delete.
regionstringAWS region (default: us-east-1)
maxResultsintegerThe maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned nextToken value. If you don't specify a value, the default is 100 results.
nextTokenstringThe nextToken value returned from a previous paginated request, where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

SELECT examples

Returns detailed information about a specific managed capability in your Amazon EKS cluster, including its current status, configuration, health information, and any issues that may be affecting its operation.

SELECT
arn,
capability_name,
cluster_name,
configuration,
created_at,
delete_propagation_policy,
health,
modified_at,
role_arn,
status,
tags,
type_,
version
FROM aws.eks.capabilities
WHERE name = '{{ name }}' -- required
AND capability_name = '{{ capability_name }}' -- required
AND region = '{{ region }}' -- required
;

INSERT examples

Creates a managed capability resource for an Amazon EKS cluster. Capabilities provide fully managed capabilities to build and scale with Kubernetes. When you create a capability, Amazon EKSprovisions and manages the infrastructure required to run the capability outside of your cluster. This approach reduces operational overhead and preserves cluster resources. You can only create one Capability of each type on a given Amazon EKS cluster. Valid types are Argo CD for declarative GitOps deployment, Amazon Web Services Controllers for Kubernetes (ACK) for resource management, and Kube Resource Orchestrator (KRO) for Kubernetes custom resource orchestration. For more information, see EKS Capabilities in the Amazon EKS User Guide.

INSERT INTO aws.eks.capabilities (
capabilityName,
clientRequestToken,
type,
roleArn,
configuration,
tags,
deletePropagationPolicy,
name,
region
)
SELECT
'{{ capabilityName }}' /* required */,
'{{ clientRequestToken }}',
'{{ type }}' /* required */,
'{{ roleArn }}' /* required */,
'{{ configuration }}',
'{{ tags }}',
'{{ deletePropagationPolicy }}' /* required */,
'{{ name }}',
'{{ region }}'
RETURNING
capability
;

UPDATE examples

Updates the configuration of a managed capability in your Amazon EKS cluster. You can update the IAM role, configuration settings, and delete propagation policy for a capability. When you update a capability, Amazon EKS applies the changes and may restart capability components as needed. The capability remains available during the update process, but some operations may be temporarily unavailable.

UPDATE aws.eks.capabilities
SET
roleArn = '{{ roleArn }}',
configuration = '{{ configuration }}',
clientRequestToken = '{{ clientRequestToken }}',
deletePropagationPolicy = '{{ deletePropagationPolicy }}'
WHERE
name = '{{ name }}' --required
AND capability_name = '{{ capability_name }}' --required
AND region = '{{ region }}' --required
RETURNING
update;

DELETE examples

Deletes a managed capability from your Amazon EKS cluster. When you delete a capability, Amazon EKS removes the capability infrastructure but retains all resources that were managed by the capability. Before deleting a capability, you should delete all Kubernetes resources that were created by the capability. After the capability is deleted, these resources become difficult to manage because the controller that managed them is no longer available. To delete resources before removing the capability, use kubectl delete or remove them through your GitOps workflow.

DELETE FROM aws.eks.capabilities
WHERE name = '{{ name }}' --required
AND capability_name = '{{ capability_name }}' --required
AND region = '{{ region }}' --required
;