Files
spinifex/docs/compatibility/eks-api-coverage/README.md
T
2026-09-14 11:42:01 +10:00

4.9 KiB

title, seoTitle, description, category, sections, tags
title seoTitle description category sections tags
EKS API Coverage Elastic Kubernetes Service API Coverage — Spinifex Docs Every operation in the Amazon EKS API model and whether Spinifex implements it, covering clusters, nodegroups, add-ons and access entries on each build. Coverage
overview
aws
compatibility
coverage
eks
kubernetes
containers

EKS API Coverage

Overview

Spinifex implements 34 of the 56 operations in the EKS 2017-11-01 API model, as pinned in aws-sdk-go v1.55.8 — 60.7%.

Routing

EKS is REST-JSON, dispatched by HTTP method and path rather than by an action parameter, so the gateway's routing table is the authoritative list of what it serves. Clusters run K3s on control-plane VMs; nodegroups are EC2 instances joined to them.

Internal routes

Four routes on this surface are internal, not AWS actions, and appear in the table below as registered outside the pinned model:

  • PublishInternal — the control-plane VM broker, relaying bootstrap and state posts onto the message bus.
  • WebhookTokenReview — the token webhook posting bearer tokens for host-side resolution.
  • ListInternalAddons — the on-VM add-on sync agent fetching its staged manifests.
  • GetRecoveryDirective — the on-VM recovery agent reading its per-member directive at boot.

None is callable with an ordinary tenant credential. Each names the target account in the path rather than taking it from the credential, so each requires a control-plane instance-role session bound to the named cluster; a broad eks:* grant does not reach them.

Operations

Status Meaning
✅ Implemented A modelled operation bound to a real handler.
🟡 Stub A registered handler that answers with a fixed or empty result.
🚫 Not supported A registered handler that deliberately refuses, so a client sees "not offered" rather than an unknown action.
❌ Not implemented Modelled by AWS, not registered by Spinifex.
🔒 Outside the pinned model Registered by Spinifex but absent from the pinned model — an internal route, not a tenant-callable AWS action.
Operation Status
AssociateAccessPolicy ✅ Implemented
AssociateEncryptionConfig ❌ Not implemented
AssociateIdentityProviderConfig ✅ Implemented
CreateAccessEntry ✅ Implemented
CreateAddon ✅ Implemented
CreateCluster ✅ Implemented
CreateEksAnywhereSubscription ❌ Not implemented
CreateFargateProfile ❌ Not implemented
CreateNodegroup ✅ Implemented
CreatePodIdentityAssociation ❌ Not implemented
DeleteAccessEntry ✅ Implemented
DeleteAddon ✅ Implemented
DeleteCluster ✅ Implemented
DeleteEksAnywhereSubscription ❌ Not implemented
DeleteFargateProfile ❌ Not implemented
DeleteNodegroup ✅ Implemented
DeletePodIdentityAssociation ❌ Not implemented
DeregisterCluster ❌ Not implemented
DescribeAccessEntry ✅ Implemented
DescribeAddon ✅ Implemented
DescribeAddonConfiguration ❌ Not implemented
DescribeAddonVersions ✅ Implemented
DescribeCluster ✅ Implemented
DescribeEksAnywhereSubscription ❌ Not implemented
DescribeFargateProfile ❌ Not implemented
DescribeIdentityProviderConfig ✅ Implemented
DescribeInsight ❌ Not implemented
DescribeNodegroup ✅ Implemented
DescribePodIdentityAssociation ❌ Not implemented
DescribeUpdate ❌ Not implemented
DisassociateAccessPolicy ✅ Implemented
DisassociateIdentityProviderConfig ✅ Implemented
ListAccessEntries ✅ Implemented
ListAccessPolicies ✅ Implemented
ListAddons ✅ Implemented
ListAssociatedAccessPolicies ✅ Implemented
ListClusters ✅ Implemented
ListEksAnywhereSubscriptions ❌ Not implemented
ListFargateProfiles ❌ Not implemented
ListIdentityProviderConfigs ✅ Implemented
ListInsights ❌ Not implemented
ListNodegroups ✅ Implemented
ListPodIdentityAssociations ❌ Not implemented
ListTagsForResource ✅ Implemented
ListUpdates ❌ Not implemented
RegisterCluster ❌ Not implemented
TagResource ✅ Implemented
UntagResource ✅ Implemented
UpdateAccessEntry ✅ Implemented
UpdateAddon ✅ Implemented
UpdateClusterConfig ✅ Implemented
UpdateClusterVersion ✅ Implemented
UpdateEksAnywhereSubscription ❌ Not implemented
UpdateNodegroupConfig ✅ Implemented
UpdateNodegroupVersion ✅ Implemented
UpdatePodIdentityAssociation ❌ Not implemented
GetRecoveryDirective 🔒 Outside the pinned model
ListInternalAddons 🔒 Outside the pinned model
PublishInternal 🔒 Outside the pinned model
WebhookTokenReview 🔒 Outside the pinned model