gitops-bridge-argocd-bootstrap-terraform
Terraform module for gitops-bridge argocd bootstrap
It handles three aspect of ArgoCD bootstrap
- Installs an intial deployment of argocd, this deployment (gets replaced by argocd applicationset)
- Creates the ArgoCD cluster secret (including in-cluster)
- Creates the intial set App of Apps (addons, workloads, etc.)
To be use with gitops-bridge project, see example here
locals {
name = "ex-${replace(basename(path.cwd), "_", "-")}"
environment = "dev"
cluster_version = "1.27"
gitops_addons_url = "https://github.com/gitops-bridge-dev/gitops-bridge-argocd-control-plane-template"
gitops_addons_basepath = ""
gitops_addons_path = "bootstrap/control-plane/addons"
gitops_addons_revision = "HEAD"
oss_addons = {
enable_argo_workflows = true
enable_foo = true # you can add any addon here, make sure to update the gitops repo with the corresponding application set
}
addons = merge(local.oss_addons, { kubernetes_version = local.cluster_version })
addons_metadata = merge(
{
addons_repo_url = local.gitops_addons_url
addons_repo_basepath = local.gitops_addons_basepath
addons_repo_path = local.gitops_addons_path
addons_repo_revision = local.gitops_addons_revision
}
)
argocd_apps = {
addons = file("${path.module}/bootstrap/addons.yaml")
workloads = file("${path.module}/bootstrap/workloads.yaml")
}
}
################################################################################
# GitOps Bridge: Bootstrap
################################################################################
module "gitops_bridge_bootstrap" {
source = "gitops-bridge-dev/gitops-bridge/helm"
cluster = {
cluster_name = local.name
environment = local.environment
metadata = local.addons_metadata
addons = local.addons
}
apps = local.argocd_apps
}
No modules.
Name |
Description |
Type |
Default |
Required |
apps |
argocd app of apps to deploy |
any |
{} |
no |
argocd |
argocd helm options |
any |
{} |
no |
cluster |
argocd cluster secret |
any |
null |
no |
create |
Create terraform resources |
bool |
true |
no |
install |
Deploy argocd helm |
bool |
true |
no |