Skip to content

Newly refactored module  #774

@js-timbirkett

Description

@js-timbirkett

Hello 👋

Firstly, this module is great and has a lot to deal with as standing up an EKS cluster and nodes / workers is not a trivial task.

There have been issues regarding orchestrating the creation of the control plane and the workers / nodes [#519], issues questioning complexity or coupling within the module [#635], questions with regards to LC / LT worker_groups and whether they should be merged or simplified [#563], and issues around numeric indexes and modifying arrays in general.

I had a go at creating a new, refactored version of this module and my attempt is here:
https://github.com/devopsmakers/terraform-aws-eks

It breaks things out into sub-modules that can be used by both the parent module (to maintain the simple single module gets you a working cluster) and directly by the user of the module for more complex situations (Custom CNI).

It also allows a map of maps for worker groups and the code has been simplified a bit (reduction of the death by lookups in the current worker related code).

I made a few tough decisions that might stimulate some debate and possibly some outrage. These are highlighted in the repos README.

I'm not saying it's perfect (yet), but I think it would make a good base for a fairly major refactor of this module and I'd be glad to assist in any way I can. Feel free to use any ideas or the codebase itself to further improve this module.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions