Commit Graph
31 Commits
Author SHA1 Message Date
Daniel PiddockandGitHub bceb966dfd fix: More compatibility fixes for Terraform v0.13 and aws v3 (#976)
Additional support for Terraform v0.13 and aws v3!
- The update to the vpc module in examples was, strictly speaking, unnecessary but it adds the terraform block with supported versions.
- Update for iam module in the example was very necessary to support new versions
- Workaround for "Provider produced inconsistent final plan" when creating ASGs at the same time as the cluster. See  https://github.com/terraform-providers/terraform-provider-aws/issues/14085 for full details.
- Blacklist 0.13.0 as it was too strict when migrating from aws v2 to v3 about dropped attributes.
2020-09-08 18:25:46 +02:00
Daniel PiddockandGitHub 1bd5bf5ab9 feat: Cluster version is now a required variable. (#972)
BREAKING CHANGES: `cluster_version` variable is now required.
2020-08-14 16:06:53 +02:00
Daniel PiddockandGitHub 415cfca9af ci: fix CI lint job (#973)
Module used by an example does not allow use with 0.13 yet. Lock to
latest version of 0.12. No 0.12 floating tag :(
2020-08-12 16:10:31 +02:00
Daniel PiddockandGitHub 9ace344c57 docs: Better documentation of cluster_id output blocking (#955)
NOTES: Starting in v12.1.0 the `cluster_id` output depends on the
`wait_for_cluster` null resource. This means that initialisation of the
kubernetes provider will be blocked until the cluster is really ready,
if the module is set to manage the aws_auth ConfigMap and user followed
the typical Usage Example. kubernetes resources in the same plan do not
need to depend on anything explicitly.
2020-08-12 15:22:24 +02:00
Daniel PiddockandGitHub 3d2f7d28c1 chore: update changelog for release 12.2.0 (#948) 2020-07-13 21:31:56 +02:00
Daniel PiddockandGitHub 7d86a6c757 docs: Update required IAM permissions list (#936)
NodeGroups, Fargate, EKS tagging, KMS
2020-07-13 21:22:41 +02:00
Daniel PiddockandGitHub 1e4a908a95 docs: Improve FAQ on how to deploy from Windows (#927) 2020-06-26 17:40:34 +02:00
Daniel PiddockandGitHub 60b494049b docs: autoscaler X.Y version must match (#928) 2020-06-26 17:39:49 +02:00
Daniel PiddockandGitHub f2c4383719 chore: update changelog for release 12.1.0 (#910) 2020-06-06 11:46:37 +02:00
Daniel PiddockandGitHub 7de18cd9cd fix: Revert removal of templates provider (#883)
Broke use case of passing in custom template content. Reverts most of the following PRs:
- #865
- #863 
- #854
2020-06-05 10:34:23 +02:00
Daniel PiddockandGitHub c748899d0e cluster_id blocks on wait_for_cluster (#890) 2020-05-29 17:45:24 +02:00
Daniel PiddockandGitHub 444343553c docs: Update FAQ (#891) 2020-05-29 17:29:08 +02:00
Daniel PiddockandGitHub bb822a1e56 fix: Fix Launch Templates error with aws 2.61.0 (#875) 2020-05-09 19:58:38 +02:00
Daniel PiddockandGitHub b183b97253 improvement: Remove dependency on external template provider (#854)
* Remove template_file for generating kubeconfig

Push logic from terraform down to the template. Makes the formatting
slightly easier to follow

* Remove template_file for generating userdata

Updates to the eks_cluster now do not trigger recreation of launch
configurations

* Remove template_file for LT userdata

* Remove template dependency
2020-05-06 10:54:14 +02:00
Daniel PiddockandGitHub 0c1ed0e6e9 Improvement: Require kubernetes provider >=1.11.1 (#784)
BREAKING CHANGE: The terraform-aws-eks module now require at least kubernetes `1.11.1`. This may cause terraform to fail to init if users have set version = "1.10" like we had in the examples.
2020-03-18 13:56:51 +01:00
Daniel PiddockandGitHub 89401f1623 fix: Add node_group direct dependency on eks_cluster (#796)
Setting `manage_aws_auth = false` removes the ordering dependency
between node_group and eks_cluster generating an error on first apply.
This fixes that use case.

Fixes #793
2020-03-18 09:09:32 +01:00
Daniel PiddockandGitHub 50f5f8b874 fix: Do not recreate cluster when no SG given (#798) 2020-03-18 09:04:17 +01:00
3957a7c02c improvement: Generate aws-auth configmap's roles from Object. No more string concat. (#790)
Do not use string concat to generate a YAML data structure

Co-authored-by: Thierno IB. BARRY <ibrahima.br@gmail.com>
2020-03-18 08:58:19 +01:00
Daniel PiddockandGitHub e8a1ce17d8 fix: Create false and avoid waiting forever for a non-existent cluster to respond (#789) 2020-03-18 08:54:57 +01:00
Daniel PiddockandGitHub 2c98a00b21 improvement: Add timeout to default wait_for_cluster_cmd (#791) 2020-03-17 19:06:09 +01:00
Daniel PiddockandMax Williams 11147e9af3 Node groups submodule (#650)
* WIP Move node_groups to a submodule

* Split the old node_groups file up

* Start moving locals

* Simplify IAM creation logic

* depends_on from the TF docs

* Wire in the variables

* Call module from parent

* Allow to customize the role name. As per workers

* aws_auth ConfigMap for node_groups

* Get the managed_node_groups example to plan

* Get the basic example to plan too

* create_eks = false works

"The true and false result expressions must have consistent types. The
given expressions are object and object, respectively."
Well, that's useful. But apparently set(string) and set() are ok. So
everything else is more complicated. Thanks.

* Update Changelog

* Update README

* Wire in node_groups_defaults

* Remove node_groups from workers_defaults_defaults

* Synchronize random and node_group defaults

* Error: "name_prefix" cannot be longer than 32

* Update READMEs again

* Fix double destroy

Was producing index errors when running destroy on an empty state.

* Remove duplicate iam_role in node_group

I think this logic works. Needs some testing with an externally created
role.

* Fix index fail if node group manually deleted

* Keep aws_auth template in top module

Downside: count causes issues as usual: can't use distinct() in the
child module so there's a template render for every node_group even if
only one role is really in use. Hopefully just output noise instead of
technical issue

* Hack to have node_groups depend on aws_auth etc

The AWS Node Groups create or edit the aws-auth ConfigMap so that nodes
can join the cluster. This breaks the kubernetes resource which cannot
do a force create. Remove the race condition with explicit depend.

Can't pull the IAM role out of the node_group any more.

* Pull variables via the random_pet to cut logic

No point having the same logic in two different places

* Pass all ForceNew variables through the pet

* Do a deep merge of NG labels and tags

* Update README.. again

* Additional managed node outputs #644

Add change from @TBeijin from PR #644

* Remove unused local

* Use more for_each

* Remove the change when create_eks = false

* Make documentation less confusing

* node_group version user configurable

* Pass through raw output from aws_eks_node_groups

* Merge workers defaults in the locals

This simplifies the random_pet and aws_eks_node_group logic. Which was
causing much consernation on the PR.

* Fix typo

Co-authored-by: Max Williams <max.williams@deliveryhero.com>
2020-01-09 12:53:08 +01:00
Daniel PiddockandMax Williams 45a39a098f Minor tweaks to changelog (#629)
* Tweaks to changelog

* Fix examples link

Existing one does not work.
This is a permanent link to maintain the upgrade hints path
2019-12-11 17:08:33 +01:00
Daniel PiddockandMax Williams 7c2c4a6aa5 Bump minimum Terraform to 0.12.9 (#617) 2019-12-09 09:59:26 +01:00
Daniel PiddockandMax Williams c0ae644204 Add Action check against minimum versions (#575) 2019-11-04 16:18:19 +01:00
Daniel PiddockandMax Williams 813c607e90 Make "dangerous" policy attachments optional (#539) 2019-10-04 14:25:19 +02:00
Daniel PiddockandThierno IB. BARRY 6bd020a041 Expand and clarify the networking section. (#538) 2019-09-27 12:08:05 +02:00
Daniel PiddockandMax Williams 27e6e3d7a9 First FAQ draft (#526)
* First FAQ draft

* Add aws-auth configmap failure

* Mention ASG auto recreation
2019-09-26 13:43:00 +02:00
Daniel PiddockandMax Williams 655a75fbd0 Update cluster_security_group_id doc (#472)
You cannot filter the public cluster endpoint.
2019-08-19 16:34:02 +02:00
Daniel PiddockandMax Williams ac62edc872 Add required_providers to set minimum versions (#464) 2019-08-06 17:46:48 +02:00
Daniel PiddockandMax Williams 23647950ad Easier overriding of workers_group_defaults (#107) 2018-08-30 11:21:46 +02:00
Daniel PiddockandMax Williams 2e2dd0e215 Remove public subnets from eks module call (#106) 2018-08-27 15:42:17 +02:00