Skip to content

Commit

Permalink
Initial updates to latest
Browse files Browse the repository at this point in the history
  • Loading branch information
mcgin314 committed Feb 19, 2025
1 parent 53e749d commit 836a3c4
Show file tree
Hide file tree
Showing 17 changed files with 844 additions and 0 deletions.
21 changes: 21 additions & 0 deletions lab/development/us-gov-east-1/vpc/platform-test-z/cluster.hcl
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# lab/development/us-gov-east-1/vpc/platform-eng-eks-mcm/cluster.hcl

# Set cluster specific variables. These are automatically pulled in to configure the remote state bucket in the root
# terragrunt.hcl configuration.
locals {
cluster_endpoint_public_access = true
cluster_name = "platform-test-z"
created_reason = "Terragrunt Development for CICD Delivered EKS Platform"
creator = "luther.coleman.mcginty@census.gov"
eks_instance_disk_size = 100
eks_ng_desired_size = 3
eks_ng_max_size = 10
eks_ng_min_size = 0
enable_cluster_creator_admin_permissions = true
terraform = true
terragrunt = true
tags = {
"slim:schedule" = "8:00-17:00"
"cluster:size" = "min:${local.eks_ng_min_size}-max:${local.eks_ng_max_size}-desired:${local.eks_ng_desired_size}"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
# source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-alloy.git?ref=main"
source = "../../../../../../../tfmod-alloy"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_name = "a-cluster-name"
}
}

inputs = {
profile = include.root.inputs.aws_profile
cluster_name = dependency.eks.outputs.cluster_name
region = include.root.inputs.aws_region
cluster_domain = dependency.eks.inputs.vpc_domain_name
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-cert-mgr.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_name = "a-cluster-name"
oidc_provider_arn = "arn:aws-us-gov:iam::111111111111:oidc-provider/oidc.eks.us-gov-east-1.amazonaws.com/id/0000000000000000AAAAAAAAAAAAAAAA"
}
}

dependency "eks_config" {
config_path = "../eks-config"
skip_outputs = true
}

inputs = {
cert_manager_cainjector_tag = include.root.inputs.cert_manager_cainjector_tag
cert_manager_controller_tag = include.root.inputs.cert_manager_controller_tag
cert_manager_helm_chart = include.root.inputs.cert_manager_helm_chart
cert_manager_startupapicheck_tag = include.root.inputs.cert_manager_startupapicheck_tag
cert_manager_webhook_tag = include.root.inputs.cert_manager_webhook_tag
cluster_issuer_name = include.root.inputs.cluster_issuer_name
cluster_mailing_list = dependency.eks.inputs.creator
cluster_name = dependency.eks.outputs.cluster_name
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
release_version = include.root.inputs.release_version
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# lab/development/us-gov-east-1/vpc/platform-eng-eks-mcm/eks-config/terragrunt.hcl

include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-eks-configuration.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_certificate_authority_data = [{ data = "THISISAVERYLONGCERTSTRINGTHATGOESHEREFORSURENODYEP" }]
cluster_endpoint = "https://12345ABCDEE42BF9C24D4C362D1DC.sk1.us-gov-east-1.eks.amazonaws.com"
cluster_name = "a-cluster-name"
eks_managed_node_groups_autoscaling_group_names = ["eks-eks-a-cluster-name-node_group-0000000000000000000000000-5ac8a5e3-14dd-c043-2cc9-f4b6ffb36d32"]
oidc_provider_arn = "arn:aws-us-gov:iam::111111111111:oidc-provider/oidc.eks.us-gov-east-1.amazonaws.com/id/0000000000000000AAAAAAAAAAAAAAAA"
security_group_all_worker_mgmt_id = "sg-00b0000000000000"
subnets = ["subnet-00000000000000001", "subnet-00000000000000002", "subnet-00000000000000003"]
vpc_id = "a-vpc-id"
}
}

generate "kubectl-provider" {
path = "kubectl-provider.tf"
if_exists = "overwrite"
contents = <<-EOF
%{ if dependency.eks.outputs.cluster_name != "a-cluster-name" ~}
data "aws_eks_cluster" "kubectl" {
name = "${dependency.eks.outputs.cluster_name}"
}
provider "kubectl" {
apply_retry_count = 5
host = data.aws_eks_cluster.kubectl.endpoint
cluster_ca_certificate = base64decode(data.aws_eks_cluster.kubectl.certificate_authority[0].data)
load_config_file = false
exec {
api_version = "client.authentication.k8s.io/v1beta1"
command = "aws"
args = ["eks", "get-token", "--cluster-name", "${dependency.eks.outputs.cluster_name}", "--region", "${include.root.inputs.aws_region}"]
}
}
%{ endif ~}
EOF
}

inputs = {
cluster_name = dependency.eks.outputs.cluster_name
eks_managed_node_groups_autoscaling_group_names = dependency.eks.outputs.eks_managed_node_groups_autoscaling_group_names
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
release_version = include.root.inputs.release_version
security_group_all_worker_mgmt_id = dependency.eks.outputs.security_group_all_worker_mgmt_id
subnets = dependency.eks.outputs.subnets
vpc_id = dependency.eks.outputs.vpc_id
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-eks-dns.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
subnets = ["subnet-abcdefgh", "subnet-12345678", "subnet-ab12cd34"]
}
}

dependency "istio" {
config_path = "../eks-istio"
mock_outputs = {
istio_ingress_lb = {
dns_name = "a1111111111111111111111111111111-2bbbbbbbbbbbbbbb.elb.us-gov-east-1.amazonaws.com"
zone_id = "ZABC123456DEF"
}
}
}

inputs = {
cluster_name = dependency.eks.inputs.cluster_name
istio_ingress_lb = dependency.istio.outputs.istio_ingress_lb
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
route53_endpoints = include.root.inputs.route53_endpoints
subnets = dependency.eks.outputs.subnets
tags = dependency.eks.inputs.tags
vpc_domain_name = dependency.eks.inputs.vpc_domain_name
vpc_name = dependency.eks.inputs.vpc_name
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-grafana.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_name = "a-cluster-name"
}
}

dependency "eks-loki" {
config_path = "../eks-loki"
mock_outputs = {
rwo_storage_class = "gp3-encrypted"
}
}

inputs = {
cluster_domain = dependency.eks.inputs.vpc_domain_name
cluster_name = dependency.eks.outputs.cluster_name
download_dashboards_image_tag = include.root.inputs.download_dashboards_image_tag
grafana_chart_version = include.root.inputs.grafana_chart_version
grafana_tag = include.root.inputs.grafana_tag
init_chown_data_image_tag = include.root.inputs.init_chown_data_image_tag
profile = include.root.inputs.aws_profile
public_hostname = include.root.inputs.grafana_hostname
region = include.root.inputs.aws_region
rwo_storage_class = dependency.eks-loki.outputs.rwo_storage_class
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-istio.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_name = "a-cluster-name"
}
}

dependency "eks-karpenter" {
config_path = "../eks-karpenter"
skip_outputs = true
}

inputs = {
cluster_name = dependency.eks.outputs.cluster_name
istio_chart_version = include.root.inputs.istio_version
istio_version = include.root.inputs.istio_version
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-k8s-dashboard.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_name = "a-cluster-name"
vpc_domain_name = "example.com"
}
}

dependency "eks-loki" {
config_path = "../eks-loki"
skip_outputs = true
}

inputs = {
# datasources = dependency.eks-loki.outputs.gateway_internal_endpoint
cluster_domain = dependency.eks.inputs.vpc_domain_name
cluster_name = dependency.eks.outputs.cluster_name
k8s_dashboard_version = include.root.inputs.k8s_dashboard_version
profile = include.root.inputs.aws_profile
public_hostname = include.root.inputs.dashboard_hostname
region = include.root.inputs.aws_region
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
include "root" {
path = find_in_parent_folders("root.hcl")
merge_strategy = "deep"
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-karpenter.git?ref=${include.root.inputs.release_version}"
extra_arguments "retry_lock" {
commands = get_terraform_commands_that_need_locking()
arguments = ["-lock-timeout=20m"]
}
}

dependency "eks" {
config_path = "../eks"
mock_outputs = {
cluster_endpoint = "https://0000000000000000AAAAAAAAAAAAAAAA.sk1.us-gov-east-1.eks.amazonaws.com"
cluster_name = "a-cluster-name"
node_group_name = "node_group_a-cluster-name"
oidc_provider_arn = "arn:aws-us-gov:iam::111111111111:oidc-provider/oidc.eks.us-gov-east-1.amazonaws.com/id/0000000000000000AAAAAAAAAAAAAAAA"
vpc_id = "a-vpc-name"
}
}

dependency "eks-config" {
config_path = "../eks-config"
skip_outputs = true
}

inputs = {
cluster_endpoint = dependency.eks.outputs.cluster_endpoint
cluster_name = dependency.eks.outputs.cluster_name
karpenter_helm_chart = include.root.inputs.karpenter_helm_chart
karpenter_node_group_name = dependency.eks.outputs.node_group_name
karpenter_tag = include.root.inputs.karpenter_tag
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
release_version = include.root.inputs.release_version
vpc_id = dependency.eks.outputs.vpc_id
}
Loading

0 comments on commit 836a3c4

Please sign in to comment.