From ea2e29c99538a69a4ff75c730a9780240b07bb41 Mon Sep 17 00:00:00 2001 From: tom-hauschke Date: Tue, 12 Sep 2023 15:33:30 +0200 Subject: [PATCH] feat(TPLAT-339): moved module here Signed-off-by: tom-hauschke --- .terraform.lock.hcl | 19 ++++ README.md | 101 +++++++++++++------- docs/github_create_repository.png | Bin 110157 -> 0 bytes main.tf | 148 ++++++++++++++++++++++++++++++ outputs.tf | 0 variables.tf | 135 +++++++++++++++++++++++++++ versions.tf | 6 +- 7 files changed, 372 insertions(+), 37 deletions(-) create mode 100644 .terraform.lock.hcl delete mode 100644 docs/github_create_repository.png delete mode 100644 outputs.tf diff --git a/.terraform.lock.hcl b/.terraform.lock.hcl new file mode 100644 index 0000000..ed77a31 --- /dev/null +++ b/.terraform.lock.hcl @@ -0,0 +1,19 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/oboukili/argocd" { + version = "6.0.1" + constraints = "6.0.1" + hashes = [ + "h1:eHML0bkbdfQE2YGiRq7gUQ06euIWx8KqVJOLAZiD3ZI=", + "zh:3cf08902df7eb452f33456076acf08e01d026e854824507c1ae3290d249f0cbd", + "zh:5a44f1d8f3ac153837b73a0c0d42ed9e559fbbb87b0a780af5525de4077a2ee4", + "zh:7cf42c6af5c395b4ae99d9ecdc1cec1bdd6b6cbfcee573a1ee2ae03fd4048e2e", + "zh:99412d15994442274716228990ef3a29aeebd56c2d45786c4b6443b7ddfb8e48", + "zh:99c13b2372fc4fb31e2ae77b73a37ec3bcdffb2bafa8a23bc5da7c7e5026ee7c", + "zh:b50e2b3cc653e35b7c4f4521602524781010f0f3a76285a7e1e08a7db308cd5c", + "zh:ca04f381e10bb8ba93e8bd6cbf88ec5b06dc21789f4f3b1c95cc9e87977224b0", + "zh:dbad7c9f5bc0e8eddf9304f027e5b7e4527a88da7223181b1eb7828c7c005b3f", + "zh:e1b0cbd1a9a2ccef34188cab7de783a2c33aa88e042ad6d3fbcb9b88f80b5d2c", + ] +} diff --git a/README.md b/README.md index 948c9c4..453f768 100644 --- a/README.md +++ b/README.md @@ -1,42 +1,73 @@ -# terraform-module-template - -A template repository to provide a basic setup for Terraform modules. - -## Module structure - -The module structure is based on the [Terraform module documentation](https://www.terraform.io/docs/modules/index.html#standard-module-structure). The following tree shows the structure of the module. - -```txt -├── .gitignore -├── LICENSE -├── README.md -├── docs -│ └── README.md -├── examples -│ ├── complete -│ │ ├── main.tf -│ │ ├── outputs.tf -│ │ ├── variables.tf -│ │ └── versions.tf -│ ├── minimal -│ │ ├── main.tf -│ │ ├── outputs.tf -│ │ ├── variables.tf -│ │ └── versions.tf -├── main.tf -├── outputs.tf -├── variables.tf -└── versions.tf +# ArgoCD Application Set + +This module creates an applicationSet in an ArgoCD instance. + +## Config schema for ApplicationSet + +Required fields: + +```yaml +values: | + # Here you can define the values for the chart ``` -## Working with this template +Optional fields: + +```yaml +namespace_overwrite: # e.g. default (default: generated based on the project name + git folder name). Must be set if more than one environment is deployed in the same cluster. +chart: + repo: # e.g. registry.hub.docker.com/tagesspiegel + name: # e.g. background + version: # e.g. 1.0.0 + release_name: # e.g. background-develop +``` + +## Cluster selection + +The cluster selection is based on the `` + + +## Requirements + +| Name | Version | +|------|---------| +| [argocd](#requirement\_argocd) | 6.0.1 | + +## Providers + +| Name | Version | +|------|---------| +| [argocd](#provider\_argocd) | 6.0.1 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [argocd_application_set.this](https://registry.terraform.io/providers/oboukili/argocd/6.0.1/docs/resources/application_set) | resource | -In order to use this template, you can use the GitHub template feature. This will create a new repository based on this template. After that, you can clone the repository and start working on it. +## Inputs -### Creating a new repository based on this template +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [annotations](#input\_annotations) | Annotations to apply to the application set | `map(string)` | `{}` | no | +| [generator](#input\_generator) | The generator configuration. Only one generator can be used at a time. |
object({
git = optional(object({
repo_url = string
revision = string
files = optional(list(string))
directories = optional(list(object({
path = string
exclude = bool
})))
}))
pull_request = optional(list(object({
requeue_after_seconds = number
repo = string
labels = list(string)
})))
})
| n/a | yes | +| [generator\_segment\_index\_overwrite](#input\_generator\_segment\_index\_overwrite) | Optional generator setting to override the index path segment during path selection. This option should only be set if generator.git.directories is used. Otherwise it should be left empty as it may affect the behavior. If this option is set in combination with generator.git.directories and your repository contains the cluster folder name in its root directory, this option should be set to 0. In all other cases, this option should reflect the index segment level to the directory corresponding to the cluster name. | `number` | `null` | no | +| [labels](#input\_labels) | Labels to apply to the application set | `map(string)` | `{}` | no | +| [manifest\_source](#input\_manifest\_source) | n/a |
object({
helm = optional(object({
chart = string
repo_url = string
target_revision = string
release_name = string
}))
directory = optional(object({
repo = object({
url = string
revision = string
path = string
})
glob_path = optional(string)
}))
})
| n/a | yes | +| [name](#input\_name) | The name of the application set | `string` | n/a | yes | +| [namespace\_annotations](#input\_namespace\_annotations) | Annotations to apply to the namespace. Only used if create\_namespace is set to true. | `map(string)` | `{}` | no | +| [namespace\_labels](#input\_namespace\_labels) | Labels to apply to the namespace. Only used if sync\_options.* CreateNamespace=true is set. | `map(string)` | `{}` | no | +| [project\_name](#input\_project\_name) | The name of the ArgoCD project to use for this application set. If not set, this application set is special. Special application sets are managed by the platform team and therefore the ArgoCD project reference is handled differently to normal application sets. A major difference is that the ArgoCD project is not statically defined as reference but dynamically via the config directory name. | `string` | n/a | yes | +| [sync\_options](#input\_sync\_options) | The sync options to use | `list(string)` |
[
"Validate=false",
"ApplyOutOfSyncOnly=true",
"CreateNamespace=true"
]
| no | +| [sync\_retries](#input\_sync\_retries) | The retry configuration for the sync policy |
object({
duration = string
max_duration = string
factor = number
limit = number
})
|
{
"duration": "30s",
"factor": 2,
"limit": 5,
"max_duration": "2m"
}
| no | +| [target\_namespace\_overwrite](#input\_target\_namespace\_overwrite) | The target namespace to use. If not set, the namespace is derived from the application set and git folder name. | `string` | `""` | no | -To get started with this template, you have to navigate https://github.com/new and select the Tagesspiegel organization. After that, you can select the `terraform-module-template` repository, enter a name for your new repository and click on `Create repository`. Please note that you have to define a name for your new repository that is not already taken and follows the naming conventions (`terraform--`). +## Outputs -![Create GitHub repository based on template](docs/github_create_repository.png) +No outputs. + -If everything worked as expected, you should now have a new repository based on this template. You can now clone the repository and start working on it. diff --git a/docs/github_create_repository.png b/docs/github_create_repository.png deleted file mode 100644 index b2920234f6c3dd76935fd66f01e235b86a1d862f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110157 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

G^B90E8u5(n&52oI3AVYMxK~ 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

iDGrU=G>J4-)KoDobTN3v?8f75JWqWnB3HKA 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�E-cskPW+ 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 + // e.g. prometheus-staging + name = "${var.name}-{{ ${local.generator_selector} }}" + annotations = merge( + var.annotations, + { + "managed-by" = "argo-cd", + "application-set" = var.name + }, + ) + labels = merge( + var.labels, + { + "managed-by" = "argo-cd", + "application-set" = var.name + }, + ) + } + + spec { + project = var.project_name + + // TODO(@tagesspiegel/platform-engineers): We want to add the sync block here so we can support progressive syncs + // See: https://argo-cd.readthedocs.io/en/stable/operator-manual/applicationset/Progressive-Syncs/ + + dynamic "source" { + for_each = var.manifest_source.helm != null ? ["abc"] : [] + content { + chart = "{{ default \"${var.manifest_source.helm.chart}\" .chart.name }}" + repo_url = "{{ default \"${var.manifest_source.helm.repo_url}\" .chart.repo }}" + target_revision = "{{ default \"${var.manifest_source.helm.target_revision}\" .chart.version }}" + helm { + release_name = "{{ default \"${var.manifest_source.helm.release_name}\" .chart.release_name }}" + values = "{{ .values }}" + } + } + } + dynamic "source" { + for_each = var.manifest_source.directory != null ? ["abc"] : [] + content { + repo_url = var.manifest_source.directory.repo.url + target_revision = var.manifest_source.directory.repo.revision + path = var.manifest_source.directory.repo.path + directory { + include = var.manifest_source.directory.glob_path + recurse = true + } + } + } + + destination { + name = "{{ if (eq ${local.generator_selector} \"general-purpose\") }}in-cluster{{ else }}{{ ${local.generator_selector} }}{{ end }}" + // if the target_namespace_overwrite is not empty, then we want to use it as the namespace + // (e.g. ingress-controllers (assuming "ingress-controllers" is the target_namespace_overwrite)) + // otherwise we check if the configuration provided by the developer has a namespace_overwrite + // if the namespace_overwrite is not set, then we use the namespace based on the project name and git folder name + // (e.g. background-staging (assuming "background" is the project and "staging" the folder name)) + // otherwise we use the namespace_overwrite provided by the developer + // (e.g. background-staging-v2 (assuming "background" is the project and "staging-v2" the namespace_overwrite)) + namespace = var.target_namespace_overwrite != "" ? var.target_namespace_overwrite : "{{ if not .namespace_overwrite }}${var.project_name}-{{ ${local.generator_selector} }}{{ else }}${var.project_name}-{{ .namespace_overwrite }}{{ end }}" + } + sync_policy { + automated { + prune = true + self_heal = true + allow_empty = true + } + managed_namespace_metadata { + annotations = merge( + var.namespace_annotations, + { + "managed-by" = "argo-cd" + }, + ) + labels = merge( + var.namespace_labels, + { + "managed-by" = "argo-cd" + }, + ) + } + # Only available from ArgoCD 1.5.0 onwards + sync_options = var.sync_options + retry { + limit = var.sync_retries.limit + backoff { + duration = var.sync_retries.duration + max_duration = var.sync_retries.max_duration + factor = var.sync_retries.factor + } + } + } + } + } + } +} diff --git a/outputs.tf b/outputs.tf deleted file mode 100644 index e69de29..0000000 diff --git a/variables.tf b/variables.tf index e69de29..8b760fc 100644 --- a/variables.tf +++ b/variables.tf @@ -0,0 +1,135 @@ +variable "name" { + type = string + description = "The name of the application set" +} + +variable "project_name" { + type = string + description = "The name of the ArgoCD project to use for this application set. If not set, this application set is special. Special application sets are managed by the platform team and therefore the ArgoCD project reference is handled differently to normal application sets. A major difference is that the ArgoCD project is not statically defined as reference but dynamically via the config directory name." + validation { + condition = length(var.project_name) > 0 + error_message = "project_name must be set" + } +} + +variable "annotations" { + type = map(string) + description = "Annotations to apply to the application set" + default = {} +} + +variable "labels" { + type = map(string) + description = "Labels to apply to the application set" + default = {} +} + +variable "manifest_source" { + type = object({ + helm = optional(object({ + chart = string + repo_url = string + target_revision = string + release_name = string + })) + directory = optional(object({ + repo = object({ + url = string + revision = string + path = string + }) + glob_path = optional(string) + })) + }) + + validation { + condition = var.manifest_source.helm != null ? var.manifest_source.directory == null : true + error_message = "Only one manifest source can be used at a time. Either helm or directory." + } +} + +variable "sync_retries" { + type = object({ + duration = string + max_duration = string + factor = number + limit = number + }) + description = "The retry configuration for the sync policy" + default = { + duration = "30s" + max_duration = "2m" + factor = 2 + limit = 5 + } + validation { + condition = can(regex("^[0-9]+[smh]$", var.sync_retries.duration)) + error_message = "sync_retries.duration must be a string in the format of " + } + validation { + condition = can(regex("^[0-9]+[smh]$", var.sync_retries.max_duration)) + error_message = "sync_retries.max_duration must be a string in the format of " + } +} + +variable "sync_options" { + type = list(string) + description = "The sync options to use" + default = ["Validate=false", "ApplyOutOfSyncOnly=true", "CreateNamespace=true"] +} + +variable "namespace_labels" { + type = map(string) + description = "Labels to apply to the namespace. Only used if sync_options.* CreateNamespace=true is set." + default = {} +} + +variable "namespace_annotations" { + type = map(string) + description = "Annotations to apply to the namespace. Only used if create_namespace is set to true." + default = {} +} + +variable "generator" { + type = object({ + git = optional(object({ + repo_url = string + revision = string + files = optional(list(string)) + directories = optional(list(object({ + path = string + exclude = bool + }))) + })) + pull_request = optional(list(object({ + requeue_after_seconds = number + repo = string + labels = list(string) + }))) + }) + description = "The generator configuration. Only one generator can be used at a time." + validation { + condition = var.generator.git != null ? var.generator.pull_request == null : true + error_message = "Only one generator can be used at a time. Either git or pull_request." + } + validation { + condition = var.generator.git != null ? var.generator.git.files != null ? var.generator.git.directories == null : true : true + error_message = "Only one of git.files or git.directories can be used at a time." + } + validation { + condition = var.generator.pull_request != null ? length(var.generator.pull_request) > 0 : true + error_message = "At least one pull_request generator must be defined." + } +} + +variable "target_namespace_overwrite" { + type = string + description = "The target namespace to use. If not set, the namespace is derived from the application set and git folder name." + default = "" +} + +variable "generator_segment_index_overwrite" { + type = number + description = "Optional generator setting to override the index path segment during path selection. This option should only be set if generator.git.directories is used. Otherwise it should be left empty as it may affect the behavior. If this option is set in combination with generator.git.directories and your repository contains the cluster folder name in its root directory, this option should be set to 0. In all other cases, this option should reflect the index segment level to the directory corresponding to the cluster name." + default = null +} diff --git a/versions.tf b/versions.tf index e6c5509..1c98c30 100644 --- a/versions.tf +++ b/versions.tf @@ -1,6 +1,8 @@ terraform { required_providers { + argocd = { + source = "oboukili/argocd" + version = "6.0.1" + } } - - required_version = "=> v1.5.6" }