* Update to EKS 1.13
* Revert "Pin terraform version < 0.12"
This reverts commit 4c71b12218378914c276715a85a61ac5aece9fa0.
* Update providers in examples and format
* run terraform upgrade tool
* fix post upgrade TODOs
* use strict typing for variables
* upgrade examples, point them at VPC module tf 0.12 PR
* remove unnecessary `coalesce()` calls
coalesce(lookup(map, key, ""), default) -> lookup(map, key, default)
* Fix autoscaling_enabled broken (#1)
* always set a value for tags, fix coalescelist calls
* always set a value for these tags
* fix tag value
* fix tag value
* default element available
* added default value
* added a general default
without this default - TF is throwing an error when running a destroy
* Fix CI
* Change vpc module back to `terraform-aws-modules/vpc/aws` in example
* Update CHANGELOG.md
* Change type of variable `cluster_log_retention_in_days` to number
* Remove `xx_count` variables
* Actual lists instead of strings with commas
* Remove `xx_count` variable from docs
* Replace element with list indexing
* Change variable `worker_group_tags` to a attribute of worker_group
* Fix workers_launch_template_mixed tags
* Change override_instance_type_x variables to list.
* Update CHANGELOG.md
* Adding Worker ASG Option for termination_policies, default set to Default
* Adding setting to launch template and mixed
* Updated a few more things per PR notes
* Change termination_policy default from "Default" to ""
* adding 3 examples
* removing old example
* updating PR template
* fix this typo
* update after renaming default example
* add missing launch_template_mixed stuff to aws_auth
* fix 2 examples with public subnets
* update changelog for new minor release
* Adding new mixed type of worker group with instance overrides and mixed instances policy
* moving all count and lifecycle rule parameters to top/bottom
* adding custom IAM parts
* updating doc with new options
* fixes for spot instances
* Switch to https for the pre-commit repos
Signed-off-by: Andrew Roth <roth.andy@gmail.com>
* Add to changelog
Signed-off-by: Andrew Roth <roth.andy@gmail.com>
* Undo formatting from prettier plugin
Signed-off-by: Andrew Roth <roth.andy@gmail.com>
* Adding minimum communication
The docs at https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html specify that port 10250 is needed at a minimum for communication between the control plane, and the worker nodes. If you specify a `worker_sg_ingress_from_port` as something like `30000`, then this minimum communication is never established.
* Adding description to CHANGELOG.md
* Adjusting the naming of the resources
* Ensuring creation is conditional on the value of `worker_sg_ingress_from_port`
* Mistake, should be greater than port 10250
Example usage : we want our nodes to be able to update route53 record
for using external-dns.
```hcl
data "template_file" "eks_worker_additional_route53_policy" {
template = "${file("iam/route53_policy.json.tpl")}"
}
resource "aws_iam_policy" "eks_worker_additional_route53_policy" {
description = "Allow nodes to update our zone"
name = "${module.k8s_cluster01_label.id}-additional-route53-policy"
policy = "${data.template_file.eks_worker_additional_route53_policy.rendered}"
}
```
which defines the policy; then in the EKS module :
```hcl
module "cluster01" {
cluster_name = "cluster01"
<snip>
workers_addtional_policies = [
"${aws_iam_policy.eks_worker_additional_route53_policy.arn}"
]
workers_addtional_policies_count = 1
<snip>
```