Skip to content

Add AWS Nitro Enclave support to AWSLaunchTemplate #5927

@raykrueger

Description

@raykrueger

/kind feature

Describe the solution you'd like

AWSLaunchTemplate does not expose EnclaveOptions, which means CAPA users
cannot enable AWS Nitro Enclaves on managed machine pool nodes. The field is
available in the EC2 launch template API (LaunchTemplateEnclaveOptionsRequest)
but has never been wired into the CAPA types or launch template builder.

The fix appears straightforward: add an EnclaveOptions struct to api/v1beta2
and a corresponding field on AWSLaunchTemplate, then map it through
createLaunchTemplateData(), SDKToLaunchTemplate(), and
LaunchTemplateNeedsUpdate() — following the same pattern as
InstanceMetadataOptions.

This was called out as a motivating example in the original launch template
proposal (docs/proposal/20211210-launch-templates-managedmachinepools.md).

Anything else you would like to add:

I can work on a PR with the implementation, tests, and documentation.

Environment:

  • Cluster-api-provider-aws version: main
  • Kubernetes version: N/A
  • OS: N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-priorityneeds-triageIndicates an issue or PR lacks a `triage/foo` label and requires one.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions