From d5c0ae51be5c10d34460e2c8d04950826b2b7d61 Mon Sep 17 00:00:00 2001 From: Workshop User Date: Sat, 16 Dec 2023 19:30:17 -0500 Subject: [PATCH 1/3] update crossplane Signed-off-by: Workshop User --- argocd/iac/terraform/examples/eks/crossplane/main.tf | 12 ++++++++---- .../terraform/examples/eks/crossplane/variables.tf | 3 +-- .../terraform/examples/eks/getting-started/main.tf | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/argocd/iac/terraform/examples/eks/crossplane/main.tf b/argocd/iac/terraform/examples/eks/crossplane/main.tf index 2621edc5..7f6a5a83 100644 --- a/argocd/iac/terraform/examples/eks/crossplane/main.tf +++ b/argocd/iac/terraform/examples/eks/crossplane/main.tf @@ -53,6 +53,8 @@ locals { enable_aws_cloudwatch_metrics = try(var.addons.enable_aws_cloudwatch_metrics, false) enable_aws_privateca_issuer = try(var.addons.enable_aws_privateca_issuer, false) enable_cluster_autoscaler = try(var.addons.enable_cluster_autoscaler, false) + enable_aws_crossplane_provider = try(var.addons.enable_aws_crossplane_provider, false) + enable_aws_crossplane_upbound_provider = try(var.addons.enable_aws_crossplane_upbound_provider, false) enable_external_dns = try(var.addons.enable_external_dns, false) enable_external_secrets = try(var.addons.enable_external_secrets, false) enable_aws_load_balancer_controller = try(var.addons.enable_aws_load_balancer_controller, false) @@ -80,6 +82,9 @@ locals { enable_argo_events = try(var.addons.enable_argo_events, false) enable_argo_workflows = try(var.addons.enable_argo_workflows, false) enable_cluster_proportional_autoscaler = try(var.addons.enable_cluster_proportional_autoscaler, false) + enable_crossplane = try(var.addons.enable_crossplane, false) + enable_crossplane_kubernetes_provider = try(var.addons.enable_crossplane_kubernetes_provider, false) + enable_crossplane_helm_provider = try(var.addons.enable_crossplane_helm_provider, false) enable_gatekeeper = try(var.addons.enable_gatekeeper, false) enable_gpu_operator = try(var.addons.enable_gpu_operator, false) enable_ingress_nginx = try(var.addons.enable_ingress_nginx, false) @@ -132,7 +137,7 @@ locals { # GitOps Bridge: Bootstrap ################################################################################ module "gitops_bridge_bootstrap" { - source = "github.com/gitops-bridge-dev/gitops-bridge-argocd-bootstrap-terraform?ref=v2.0.0" + source = "gitops-bridge-dev/gitops-bridge/helm" cluster = { cluster_name = module.eks.cluster_name @@ -149,7 +154,7 @@ module "gitops_bridge_bootstrap" { ################################################################################ locals { crossplane_namespace = "crossplane-system" - crossplane_sa_prefix = "provider-*" # You can scope down based on the provider name + crossplane_sa = "provider-aws" } module "crossplane_irsa_aws" { @@ -157,7 +162,6 @@ module "crossplane_irsa_aws" { version = "~> 5.14" role_name_prefix = "${local.name}-crossplane-" - assume_role_condition_test = "StringLike" role_policy_arns = { policy = "arn:aws:iam::aws:policy/AdministratorAccess" @@ -166,7 +170,7 @@ module "crossplane_irsa_aws" { oidc_providers = { main = { provider_arn = module.eks.oidc_provider_arn - namespace_service_accounts = ["${local.crossplane_namespace}:${local.crossplane_sa_prefix}"] + namespace_service_accounts = ["${local.crossplane_namespace}:${local.crossplane_sa}"] } } diff --git a/argocd/iac/terraform/examples/eks/crossplane/variables.tf b/argocd/iac/terraform/examples/eks/crossplane/variables.tf index fc76c47d..aec9e119 100644 --- a/argocd/iac/terraform/examples/eks/crossplane/variables.tf +++ b/argocd/iac/terraform/examples/eks/crossplane/variables.tf @@ -17,8 +17,7 @@ variable "addons" { description = "Kubernetes addons" type = any default = { - enable_aws_crossplane = true # installs aws crossplane providers - enable_aws_crossplane_provider = false # installs aws contrib provider + enable_aws_crossplane_provider = true # installs aws contrib provider enable_aws_crossplane_upbound_provider = true # installs aws upbound provider enable_crossplane_kubernetes_provider = true # installs kubernetes provider enable_crossplane_helm_provider = true # installs helm provider diff --git a/argocd/iac/terraform/examples/eks/getting-started/main.tf b/argocd/iac/terraform/examples/eks/getting-started/main.tf index 97f78b58..a31f8d7a 100644 --- a/argocd/iac/terraform/examples/eks/getting-started/main.tf +++ b/argocd/iac/terraform/examples/eks/getting-started/main.tf @@ -131,7 +131,7 @@ locals { # GitOps Bridge: Bootstrap ################################################################################ module "gitops_bridge_bootstrap" { - source = "github.com/gitops-bridge-dev/gitops-bridge-argocd-bootstrap-terraform?ref=v2.0.0" + source = "gitops-bridge-dev/gitops-bridge/helm" cluster = { metadata = local.addons_metadata From 3d1399d640dc0cfc4844d9e6a6ecd6173ed65344 Mon Sep 17 00:00:00 2001 From: Carlos Santana Date: Sat, 13 Jan 2024 17:46:51 -0500 Subject: [PATCH 2/3] update crossplane Signed-off-by: Carlos Santana --- argocd/iac/terraform/examples/eks/crossplane/main.tf | 6 +++--- argocd/iac/terraform/examples/eks/crossplane/variables.tf | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/argocd/iac/terraform/examples/eks/crossplane/main.tf b/argocd/iac/terraform/examples/eks/crossplane/main.tf index 7f6a5a83..19df18de 100644 --- a/argocd/iac/terraform/examples/eks/crossplane/main.tf +++ b/argocd/iac/terraform/examples/eks/crossplane/main.tf @@ -137,7 +137,7 @@ locals { # GitOps Bridge: Bootstrap ################################################################################ module "gitops_bridge_bootstrap" { - source = "gitops-bridge-dev/gitops-bridge/helm" + source = "gitops-bridge-dev/gitops-bridge/helm" cluster = { cluster_name = module.eks.cluster_name @@ -154,14 +154,14 @@ module "gitops_bridge_bootstrap" { ################################################################################ locals { crossplane_namespace = "crossplane-system" - crossplane_sa = "provider-aws" + crossplane_sa = "provider-aws" } module "crossplane_irsa_aws" { source = "terraform-aws-modules/iam/aws//modules/iam-role-for-service-accounts-eks" version = "~> 5.14" - role_name_prefix = "${local.name}-crossplane-" + role_name_prefix = "${local.name}-crossplane-" role_policy_arns = { policy = "arn:aws:iam::aws:policy/AdministratorAccess" diff --git a/argocd/iac/terraform/examples/eks/crossplane/variables.tf b/argocd/iac/terraform/examples/eks/crossplane/variables.tf index aec9e119..65ff46ce 100644 --- a/argocd/iac/terraform/examples/eks/crossplane/variables.tf +++ b/argocd/iac/terraform/examples/eks/crossplane/variables.tf @@ -18,10 +18,10 @@ variable "addons" { type = any default = { enable_aws_crossplane_provider = true # installs aws contrib provider - enable_aws_crossplane_upbound_provider = true # installs aws upbound provider - enable_crossplane_kubernetes_provider = true # installs kubernetes provider - enable_crossplane_helm_provider = true # installs helm provider - enable_crossplane = true # installs crossplane core + enable_aws_crossplane_upbound_provider = true # installs aws upbound provider + enable_crossplane_kubernetes_provider = true # installs kubernetes provider + enable_crossplane_helm_provider = true # installs helm provider + enable_crossplane = true # installs crossplane core } } # Addons Git From b1b6096c62c2e4308b83ec5d9e631d3aca80846d Mon Sep 17 00:00:00 2001 From: Carlos Santana Date: Sat, 13 Jan 2024 21:29:42 -0500 Subject: [PATCH 3/3] add test files for crossplane Signed-off-by: Carlos Santana --- .../examples/eks/crossplane/test/vpc-aws.yaml | 14 ++++++++++++++ .../examples/eks/crossplane/test/vpc-upbound.yaml | 12 ++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 argocd/iac/terraform/examples/eks/crossplane/test/vpc-aws.yaml create mode 100644 argocd/iac/terraform/examples/eks/crossplane/test/vpc-upbound.yaml diff --git a/argocd/iac/terraform/examples/eks/crossplane/test/vpc-aws.yaml b/argocd/iac/terraform/examples/eks/crossplane/test/vpc-aws.yaml new file mode 100644 index 00000000..48394343 --- /dev/null +++ b/argocd/iac/terraform/examples/eks/crossplane/test/vpc-aws.yaml @@ -0,0 +1,14 @@ +apiVersion: ec2.aws.crossplane.io/v1beta1 +kind: VPC +metadata: + name: gitops-bridge-aws +spec: + forProvider: + cidrBlock: 10.0.0.0/16 + enableDnsHostNames: true + enableDnsSupport: true + instanceTenancy: default + region: us-east-1 + tags: + - key: Name + value: gitops-bridge-aws \ No newline at end of file diff --git a/argocd/iac/terraform/examples/eks/crossplane/test/vpc-upbound.yaml b/argocd/iac/terraform/examples/eks/crossplane/test/vpc-upbound.yaml new file mode 100644 index 00000000..01c559df --- /dev/null +++ b/argocd/iac/terraform/examples/eks/crossplane/test/vpc-upbound.yaml @@ -0,0 +1,12 @@ +apiVersion: ec2.aws.upbound.io/v1beta1 +kind: VPC +metadata: + name: gitops-bridge-upbound +spec: + forProvider: + cidrBlock: 10.0.0.0/16 + enableDnsHostnames: true + enableDnsSupport: true + region: us-east-1 + tags: + Name: gitops-bridge-upbound \ No newline at end of file