Commit 929e79cd authored by Nicky White's avatar Nicky White

Terraform 0.12.29

parent 2d647e2c
...@@ -88,7 +88,7 @@ resource "kubernetes_role" "autoscaler_role" { ...@@ -88,7 +88,7 @@ resource "kubernetes_role" "autoscaler_role" {
metadata { metadata {
name = "cluster-autoscaler-svc-acc" name = "cluster-autoscaler-svc-acc"
labels { labels = {
"k8s-addon" = "cluster-autoscaler.addons.k8s.io" "k8s-addon" = "cluster-autoscaler.addons.k8s.io"
"k8s-app" = "cluster-autoscaler" "k8s-app" = "cluster-autoscaler"
} }
...@@ -145,3 +145,4 @@ resource "kubernetes_cluster_role_binding" "cluster_autoscaler_clusterrole_bind" ...@@ -145,3 +145,4 @@ resource "kubernetes_cluster_role_binding" "cluster_autoscaler_clusterrole_bind"
api_group = "" api_group = ""
} }
} }
...@@ -4,3 +4,4 @@ resource "kubernetes_service_account" "cluster_autoscaler_service_account" { ...@@ -4,3 +4,4 @@ resource "kubernetes_service_account" "cluster_autoscaler_service_account" {
namespace = "kube-system" namespace = "kube-system"
} }
} }
data "aws_region" "current" {} data "aws_region" "current" {
}
resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
metadata { metadata {
name = "aws-cluster-autoscaler" name = "aws-cluster-autoscaler"
namespace = "kube-system" namespace = "kube-system"
labels { labels = {
app = "aws-cluster-autoscaler" app = "aws-cluster-autoscaler"
} }
} }
...@@ -14,7 +15,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { ...@@ -14,7 +15,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
replicas = 1 replicas = 1
selector { selector {
match_labels { match_labels = {
app = "aws-cluster-autoscaler" app = "aws-cluster-autoscaler"
instance = "aws-cluster-autoscaler-deploy" instance = "aws-cluster-autoscaler-deploy"
} }
...@@ -22,12 +23,12 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { ...@@ -22,12 +23,12 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
template { template {
metadata { metadata {
labels { labels = {
app = "aws-cluster-autoscaler" app = "aws-cluster-autoscaler"
instance = "aws-cluster-autoscaler-deploy" instance = "aws-cluster-autoscaler-deploy"
} }
annotations { annotations = {
"iam.amazonaws.com/role" = "eks-cluster-autoscaler" "iam.amazonaws.com/role" = "eks-cluster-autoscaler"
} }
} }
...@@ -37,16 +38,17 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { ...@@ -37,16 +38,17 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
termination_grace_period_seconds = 60 termination_grace_period_seconds = 60
volume { volume {
name = "${kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name}" name = kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name
secret { secret {
secret_name = "${kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name}" secret_name = kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name
} }
} }
volume { volume {
name = "autoscaler-ssl-volume" name = "autoscaler-ssl-volume"
empty_dir {} empty_dir {
}
} }
container { container {
...@@ -57,7 +59,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { ...@@ -57,7 +59,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
volume_mount { volume_mount {
mount_path = "/var/run/secrets/kubernetes.io/serviceaccount" mount_path = "/var/run/secrets/kubernetes.io/serviceaccount"
name = "${kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name}" name = kubernetes_service_account.cluster_autoscaler_service_account.default_secret_name
read_only = true read_only = true
} }
...@@ -85,7 +87,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" { ...@@ -85,7 +87,7 @@ resource "kubernetes_deployment" "aws_cluster_autoscaler_deployment" {
env { env {
name = "AWS_REGION" name = "AWS_REGION"
value = "${data.aws_region.current.name}" value = data.aws_region.current.name
} }
} }
} }
...@@ -105,10 +107,11 @@ resource "kubernetes_service" "cluster_autoscale_service" { ...@@ -105,10 +107,11 @@ resource "kubernetes_service" "cluster_autoscale_service" {
target_port = 8085 target_port = 8085
} }
selector { selector = {
app = "aws-cluster-autoscaler" app = "aws-cluster-autoscaler"
} }
type = "ClusterIP" type = "ClusterIP"
} }
} }
...@@ -17,7 +17,7 @@ data "aws_iam_policy_document" "ec2_assume" { ...@@ -17,7 +17,7 @@ data "aws_iam_policy_document" "ec2_assume" {
principals { principals {
type = "AWS" type = "AWS"
identifiers = ["${var.worker_iam_role_arn}"] identifiers = [var.worker_iam_role_arn]
} }
} }
} }
...@@ -35,21 +35,22 @@ data "aws_iam_policy_document" "autoscaler" { ...@@ -35,21 +35,22 @@ data "aws_iam_policy_document" "autoscaler" {
] ]
resources = [ resources = [
"*" "*",
] ]
} }
} }
resource "aws_iam_policy" "this" { resource "aws_iam_policy" "this" {
policy = "${data.aws_iam_policy_document.autoscaler.json}" policy = data.aws_iam_policy_document.autoscaler.json
} }
resource "aws_iam_role" "this" { resource "aws_iam_role" "this" {
name = "eks-cluster-autoscaler" name = "eks-cluster-autoscaler"
assume_role_policy = "${data.aws_iam_policy_document.ec2_assume.json}" assume_role_policy = data.aws_iam_policy_document.ec2_assume.json
} }
resource "aws_iam_role_policy_attachment" "this" { resource "aws_iam_role_policy_attachment" "this" {
role = "${aws_iam_role.this.name}" role = aws_iam_role.this.name
policy_arn = "${aws_iam_policy.this.arn}" policy_arn = aws_iam_policy.this.arn
} }
...@@ -6,7 +6,8 @@ variable "envname" { ...@@ -6,7 +6,8 @@ variable "envname" {
default = "staging" default = "staging"
} }
variable "worker_iam_role_arn" {} variable "worker_iam_role_arn" {
}
variable "cluster_autoscaler_version" { variable "cluster_autoscaler_version" {
default = "1.3.6" default = "1.3.6"
...@@ -15,3 +16,4 @@ variable "cluster_autoscaler_version" { ...@@ -15,3 +16,4 @@ variable "cluster_autoscaler_version" {
variable "cluster_autoscaler_image_region" { variable "cluster_autoscaler_image_region" {
default = "eu" default = "eu"
} }
terraform {
required_version = ">= 0.12"
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment