Skip to content

Commit

Permalink
add cicd cluster for release validation
Browse files Browse the repository at this point in the history
  • Loading branch information
morga471 committed Oct 29, 2024
1 parent 0fb5c70 commit 5aa311d
Show file tree
Hide file tree
Showing 14 changed files with 775 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-cert-mgr.git?ref=v0.1.1"
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 "karpenter" {
# config_path = "../eks-karpenter"
# skip_outputs = true
# }

inputs = {
cluster_name = dependency.eks.outputs.cluster_name
cluster_mailing_list = dependency.eks.inputs.creator
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
cert_manager_helm_chart = "1.16.1"
cert_manager_cainjector_tag = "v1.16.1"
cert_manager_controller_tag = "v1.16.1"
cert_manager_startupapicheck_tag = "v1.16.1"
cert_manager_webhook_tag = "v1.16.1"
cluster_issuer_name = "cert-manager"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

# locals {
# tag_costallocation = "census:csvd:platformbaseline"
# }

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

dependency "eks" {
config_path = "../eks"
mock_outputs = {
vpc_id = "a-vpc-id"
cluster_name = "a-cluster-name"
subnets = ["subnet-00000000000000001", "subnet-00000000000000002", "subnet-00000000000000003", ]
security_group_all_worker_mgmt_id = "sg-00b0000000000000"
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"
}
}

inputs = {
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
vpc_id = dependency.eks.outputs.vpc_id
cluster_name = dependency.eks.outputs.cluster_name
subnets = dependency.eks.outputs.subnets
security_group_all_worker_mgmt_id = dependency.eks.outputs.security_group_all_worker_mgmt_id
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
# tags = dependency.eks.inputs.tags
# tag_costallocation = local.tag_costallocation
# cluster_autoscaler_role_name = dependency.eks.outputs.cluster_autoscaler_role_name
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-eks-dns.git?ref=v0.1.1"
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
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,39 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-grafana.git?ref=v0.1.1"
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"
}
}
# dependency "eks-tempo" {
# config_path = "../eks-tempo"
# skip_outputs = true
# }

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

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-istio.git?ref=v0.1.1"
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 = {
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
cluster_name = dependency.eks.outputs.cluster_name
istio_chart_version = "1.22.1"
istio_version = "1.22.1"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-k8s-dashboard.git?ref=v0.1.1"
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 = {
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
cluster_name = dependency.eks.outputs.cluster_name
cluster_domain = dependency.eks.inputs.vpc_domain_name
public_hostname = "dashboard"
# datasources = dependency.eks-loki.outputs.gateway_internal_endpoint
# k8s_dashboard_version = "v2.0.0" # NEW IDEA TO START PINNING VERSIONING OF COMPONENT TO TF MODULE VERSION
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-karpenter.git?ref=v0.1.1"
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 = {
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
cluster_endpoint = dependency.eks.outputs.cluster_endpoint
cluster_name = dependency.eks.outputs.cluster_name
karpenter_node_group_name = dependency.eks.outputs.node_group_name
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
vpc_id = dependency.eks.outputs.vpc_id
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-kiali.git?ref=v0.1.1"
# source = "../../../../../../../tfmod-kiali"
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-cert-manager" {
config_path = "../eks-cert-manager"
mock_outputs = {
cluster_issuer_name = "acmpca-clusterissuer"
}
}
dependency "eks-prometheus" {
config_path = "../eks-prometheus"
mock_outputs = {
prometheus_server_internal_endpoint = {
hostname = "prometheus-server.prometheus.svc.cluster.local"
port_number = 9090
url = "http://prometheus-server.prometheus.svc.cluster.local:9090/"
}
}
}
dependency "eks-grafana" {
config_path = "../eks-grafana"
mock_outputs = {
internal_endpoint = {
hostname = "grafana.grafana.svc.cluster.local"
port_number = "80"
url = "https://grafana.grafana.svc.cluster.local:80/"
}
namespace = "grafana"
public_endpoint = {
hostname = "grafana.dev.lab.csp2.census.gov"
port_number = "80"
url = "https://grafana.dev.lab.csp2.census.gov:80/"
}
secret_name = "grafana"
}
}

inputs = {
profile = include.root.inputs.aws_profile
cluster_domain = dependency.eks.inputs.vpc_domain_name
operators_namespace = "operators"
cluster_name = dependency.eks.outputs.cluster_name
certificate_issuer = dependency.eks-cert-manager.outputs.cluster_issuer_name
prometheus_internal_url = dependency.eks-prometheus.outputs.prometheus_server_internal_endpoint.url
grafana_internal_url = dependency.eks-grafana.outputs.internal_endpoint.url
grafana_namespace = dependency.eks-grafana.outputs.namespace
grafana_public_url = dependency.eks-grafana.outputs.public_endpoint.url
grafana_secret_name = "grafana"
# grafana_secret_name = dependency.eks-grafana.outputs.secret_name
jaeger_internal_url = ""


# client_id = var.sso_client_id
# client_secret = var.sso_client_secret
# keycloak_public_url = var.keycloak_public_url
# gogatekeeper_chart_version = var.gogatekeeper_chart_version
# gogatekeeper_registry = var.gogatekeeper_registry
# gogatekeeper_repository = var.gogatekeeper_repository
# gogatekeeper_tag = var.gogatekeeper_tag
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
include "root" {
path = find_in_parent_folders()
expose = true
}

terraform {
source = "git@github.e.it.census.gov:SCT-Engineering/tfmod-loki.git?ref=v0.1.1"
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-istio" {
config_path = "../eks-istio"
skip_outputs = true
}
dependency "eks-prometheus" {
config_path = "../eks-prometheus"
skip_outputs = true
}

inputs = {
profile = include.root.inputs.aws_profile
region = include.root.inputs.aws_region
cluster_name = dependency.eks.outputs.cluster_name
oidc_provider_arn = dependency.eks.outputs.oidc_provider_arn
}
Loading

0 comments on commit 5aa311d

Please sign in to comment.