variable "ssl_cert" {}
variable "ssl_key" {}
variable "ssl_chain" { default = "" }
variable "force_ssl" { default = "true" }

############
# SSL Cert #
############

resource "aws_iam_server_certificate" "cfk-ssl-cert" {
  name = "cfk-${var.s3_bucket}-cert"
  certificate_body = "${var.ssl_cert}"
  certificate_chain = "${var.ssl_chain}"
  private_key = "${var.ssl_key}"

  lifecycle {
    create_before_destroy = true
  }
}

resource "aws_elb" "cfk-elb" {
  listener {
    instance_port = 81
    instance_protocol = "tcp"
    lb_port = 80
    lb_protocol = "tcp"
  }

  listener {
    instance_port = 81
    instance_protocol = "tcp"
    lb_port = 443
    lb_protocol = "ssl"
    ssl_certificate_id = "${aws_iam_server_certificate.cfk-ssl-cert.arn}"
  }

  lifecycle {
    create_before_destroy = true
  }
}
