From 149a7e6cce36a2e2224e0e3203aab931dbed65d3 Mon Sep 17 00:00:00 2001 From: Tamas Kiss Date: Tue, 14 Jun 2022 00:30:57 +0200 Subject: [PATCH 1/3] ci: drift-detection and docs with terraform-docs --- .drone.yml | 32 +++++++++++++++++++----- .terraform-docs.yml | 5 ++++ README.md | 60 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 91 insertions(+), 6 deletions(-) create mode 100644 .terraform-docs.yml diff --git a/.drone.yml b/.drone.yml index b577712..f27626b 100644 --- a/.drone.yml +++ b/.drone.yml @@ -4,11 +4,9 @@ type: kubernetes name: Terraform root module trigger: - event: - - cron - - push - branch: - - main + ref: + - refs/heads/main + - refs/pull/*/head environment: TF_IN_AUTOMATION: "1" @@ -34,7 +32,7 @@ steps: - name: terraform plan image: hashicorp/terraform:1.1.8 commands: - - terraform plan -out .tfplan + - terraform plan $([[ $${DRONE_BUILD_EVENT} = cron ]] && echo "-detailed-exit-code") -out .tfplan environment: AWS_ACCESS_KEY_ID: from_secret: terraform-aws-key-id @@ -65,6 +63,28 @@ steps: KUBE_TOKEN: from_secret: lawndale-k8s-ci-token +--- +kind: pipeline +type: kubernetes +name: Check docs and format + +environment: + TF_IN_AUTOMATION: "1" + +trigger: + ref: + - refs/pull/*/head + +steps: +- name: format and generate docs + image: hashicorp/terraform:1.1.8 + commands: + - apk add bash wget + - wget -q https://github.com/terraform-docs/terraform-docs/releases/download/v0.16.0/terraform-docs-v0.16.0-linux-amd64.tar.gz -O - | tar -xz terraform-docs -C /usr/local/bin + - terraform fmt + - terraform-docs . + - git diff --exit-code + --- kind: signature hmac: 6950738d3bbe37bb7d5201b9fd7a086ee09a2206a433f19d01c2570cc5718b61 diff --git a/.terraform-docs.yml b/.terraform-docs.yml new file mode 100644 index 0000000..e41c6c7 --- /dev/null +++ b/.terraform-docs.yml @@ -0,0 +1,5 @@ +formatter: markdown document + +output: + mode: inject + file: README.md diff --git a/README.md b/README.md index 785ed3f..97016f8 100644 --- a/README.md +++ b/README.md @@ -32,3 +32,63 @@ Sources: ## Persistent volume Persistence is supported by [terraform-modules//9p-persistent-volume](git.thomasklein.me/thomasklein/terraform-modules/9p-persistent-volume). + + + +## Requirements + +The following requirements are needed by this module: + +- [aws](#requirement\_aws) (~> 4.9.0) + +- [gitea](#requirement\_gitea) (>= 0.1.0) + +- [helm](#requirement\_helm) (2.5.1) + +- [kubernetes](#requirement\_kubernetes) (2.11.0) + +## Providers + +The following providers are used by this module: + +- [gitea](#provider\_gitea) (0.1.0) + +- [helm](#provider\_helm) (2.5.1) + +- [kubernetes](#provider\_kubernetes) (2.11.0) + +- [random](#provider\_random) (3.2.0) + +## Modules + +The following Modules are called: + +### [drone\_persistance](#module\_drone\_persistance) + +Source: git@git.thomasklein.me:thomasklein/terraform-modules//9p-persistent-volume + +Version: + +## Resources + +The following resources are used by this module: + +- [gitea_oauth2_app.this](https://registry.terraform.io/providers/malarinv/gitea/latest/docs/resources/oauth2_app) (resource) +- [helm_release.drone_runner](https://registry.terraform.io/providers/hashicorp/helm/2.5.1/docs/resources/release) (resource) +- [helm_release.drone_server](https://registry.terraform.io/providers/hashicorp/helm/2.5.1/docs/resources/release) (resource) +- [kubernetes_namespace.jobs](https://registry.terraform.io/providers/hashicorp/kubernetes/2.11.0/docs/resources/namespace) (resource) +- [kubernetes_namespace.server](https://registry.terraform.io/providers/hashicorp/kubernetes/2.11.0/docs/resources/namespace) (resource) +- [random_password.drone_rpc_secret](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password) (resource) + +## Required Inputs + +No required inputs. + +## Optional Inputs + +No optional inputs. + +## Outputs + +No outputs. + -- 2.49.1 From e548712b02ff54fea96ee35a793eddeb6507a315 Mon Sep 17 00:00:00 2001 From: Tamas Kiss Date: Tue, 14 Jun 2022 00:34:06 +0200 Subject: [PATCH 2/3] ci: fix drone signature --- .drone.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone.yml b/.drone.yml index f27626b..9eba154 100644 --- a/.drone.yml +++ b/.drone.yml @@ -87,6 +87,6 @@ steps: --- kind: signature -hmac: 6950738d3bbe37bb7d5201b9fd7a086ee09a2206a433f19d01c2570cc5718b61 +hmac: a612a515b91b36df9b5065b3d6e8933053840fe8a6c3e5ee1e3c6a6e66be5040 ... -- 2.49.1 From 8886ca2da82bfc62b69e59b779794c6d155afed0 Mon Sep 17 00:00:00 2001 From: Tamas Kiss Date: Tue, 14 Jun 2022 00:35:24 +0200 Subject: [PATCH 3/3] format: terraform fmt --- provider.tf | 2 +- runner.tf | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/provider.tf b/provider.tf index 77cd86f..6f867fa 100644 --- a/provider.tf +++ b/provider.tf @@ -6,7 +6,7 @@ terraform { } gitea = { - source = "malarinv/gitea" + source = "malarinv/gitea" version = ">= 0.1.0" } diff --git a/runner.tf b/runner.tf index 8825867..4b01532 100644 --- a/runner.tf +++ b/runner.tf @@ -14,9 +14,9 @@ resource "helm_release" "drone_runner" { }), jsonencode({ env = { - DRONE_SERVER_HOST = "https://${local.ingress_domain}" - DRONE_RPC_HOST = "${helm_release.drone_server.name}.${helm_release.drone_server.namespace}.svc.cluster.local" - DRONE_RPC_PROTO = "http" + DRONE_SERVER_HOST = "https://${local.ingress_domain}" + DRONE_RPC_HOST = "${helm_release.drone_server.name}.${helm_release.drone_server.namespace}.svc.cluster.local" + DRONE_RPC_PROTO = "http" DRONE_NAMESPACE_DEFAULT = kubernetes_namespace.jobs.metadata.0.name } }), -- 2.49.1