Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
MODULES = argocd-helm aks/azure eks/aws openshift4/aws k3s/docker k3s/libvirt sks/exoscale
MODULES = argocd-helm aks/azure eks/aws openshift4/aws k3s/docker k3s/libvirt sks/exoscale kind/kind
MOD_REFS = $(addsuffix .adoc,$(addprefix docs/modules/ROOT/pages/references/terraform_modules/,$(MODULES)))

APPLICATIONS = $(shell ls -d argocd/*/ | cut -f2 -d'/')
Expand Down
1 change: 1 addition & 0 deletions docs/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
*** xref:ROOT:howtos/quickstart_ocp_ipi_aws.adoc[OpenShift (IPI) on AWS]
*** xref:ROOT:howtos/quickstart_k3s_docker.adoc[K3s on Docker]
*** xref:ROOT:howtos/quickstart_k3s_libvirt.adoc[K3s on Libvirt]
*** xref:ROOT:howtos/quickstart_kind.adoc[KinD]
** Pipelines
*** xref:ROOT:howtos/pipelines.adoc[Deploying with Pipelines]
*** xref:ROOT:howtos/pipelines_gitlab.adoc[Create your GitLab Pipeline]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ enabled
[cols=",,",options="header",]
|===
|Repository |Name |Version
|https://argoproj.github.io/argo-helm |argo-cd |3.17.3
|https://argoproj.github.io/argo-helm |argo-cd |3.26.9
|https://argoproj.github.io/argo-helm |argocd-applicationset |1.3.1
|https://argoproj.github.io/argo-helm |argocd-notifications |1.4.4
|===
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ The `k3s/docker` Terraform module provides a way to install and configure:
|[[input_k3s_version]] <<input_k3s_version,k3s_version>>
|The K3s version to use
|`string`
|`"v1.21.6+k3s1"`
|`"v1.21.6-k3s1"`
|no

|[[input_keycloak_users]] <<input_keycloak_users,keycloak_users>>
Expand Down
175 changes: 175 additions & 0 deletions docs/modules/ROOT/pages/references/terraform_modules/kind/kind.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
= KinD Terraform Module

The `kind/kind` Terraform module provides a way to install and configure:

* A KinD cluster based on Docker
* The xref:ROOT:references/terraform_modules/argocd-helm.adoc[ArgoCD Helm] module

== Requirements

[cols="a,a",options="header,autowidth"]
|===
|Name |Version
|[[requirement_docker]] <<requirement_docker,docker>> |~> 2.15.0
|[[requirement_kind]] <<requirement_kind,kind>> |~> 0.0.9
|===

== Providers

[cols="a,a",options="header,autowidth"]
|===
|Name |Version
|[[provider_docker]] <<provider_docker,docker>> |~> 2.15.0
|[[provider_kind]] <<provider_kind,kind>> |0.0.9
|[[provider_kubernetes]] <<provider_kubernetes,kubernetes>> |2.5.0
|[[provider_random]] <<provider_random,random>> |3.1.0
|[[provider_tls]] <<provider_tls,tls>> |3.1.0
|===

== Modules

[cols="a,a,a",options="header,autowidth"]
|===
|Name |Source |Version
|[[module_argocd]] <<module_argocd,argocd>> |../../argocd-helm |
|===

== Resources

[cols="a,a",options="header,autowidth"]
|===
|Name |Type
|https://registry.terraform.io/providers/kyma-incubator/kind/latest/docs/resources/cluster[kind_cluster.cluster] |resource
|https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password[random_password.clientsecret] |resource
|https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password[random_password.grafana_admin_password] |resource
|https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password[random_password.jdoe_password] |resource
|https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password[random_password.minio_accesskey] |resource
|https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password[random_password.minio_secretkey] |resource
|https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key[tls_private_key.root] |resource
|https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/self_signed_cert[tls_self_signed_cert.root] |resource
|https://registry.terraform.io/providers/kreuzwerker/docker/latest/docs/data-sources/network[docker_network.kind] |data source
|https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/data-sources/secret[kubernetes_secret.keycloak_admin_password] |data source
|===

== Inputs

[cols="a,a,a,a,a",options="header,autowidth"]
|===
|Name |Description |Type |Default |Required
|[[input_app_of_apps_values_overrides]] <<input_app_of_apps_values_overrides,app_of_apps_values_overrides>>
|App of apps values overrides.
|`string`
|`""`
|no

|[[input_argocd_server_secretkey]] <<input_argocd_server_secretkey,argocd_server_secretkey>>
|ArgoCD Server Secert Key to avoid regenerate token on redeploy.
|`string`
|`null`
|no

|[[input_base_domain]] <<input_base_domain,base_domain>>
|The base domain used for Ingresses.
|`string`
|`null`
|no

|[[input_cluster_name]] <<input_cluster_name,cluster_name>>
|The name of the Kubernetes cluster to create.
|`string`
|n/a
|yes

|[[input_enable_minio]] <<input_enable_minio,enable_minio>>
|Whether to enable minio object storage system
|`bool`
|`true`
|no

|[[input_extra_app_projects]] <<input_extra_app_projects,extra_app_projects>>
|Extra AppProjects objects to deploy.
|`list(any)`
|`[]`
|no

|[[input_extra_application_sets]] <<input_extra_application_sets,extra_application_sets>>
|Extra ApplicationSets objects to deploy.
|`list(any)`
|`[]`
|no

|[[input_extra_apps]] <<input_extra_apps,extra_apps>>
|Extra Applications objects to deploy.
|`list(any)`
|`[]`
|no

|[[input_grafana_admin_password]] <<input_grafana_admin_password,grafana_admin_password>>
|The admin password for Grafana.
|`string`
|`null`
|no

|[[input_oidc]] <<input_oidc,oidc>>
|OIDC configuration for core applications.
|

[source]
----
object({
issuer_url = string
oauth_url = string
token_url = string
api_url = string
client_id = string
client_secret = string
oauth2_proxy_extra_args = list(string)
})
----

|`null`
|no

|[[input_repo_url]] <<input_repo_url,repo_url>>
|The source repo URL of ArgoCD's app of apps.
|`string`
|`"https://github.com/camptocamp/devops-stack.git"`
|no

|[[input_repositories]] <<input_repositories,repositories>>
|A list of repositories to add to ArgoCD.
|`map(map(string))`
|`{}`
|no

|[[input_target_revision]] <<input_target_revision,target_revision>>
|The source target revision of ArgoCD's app of apps.
|`string`
|`"master"`
|no

|[[input_wait_for_app_of_apps]] <<input_wait_for_app_of_apps,wait_for_app_of_apps>>
|Allow to disable wait for app of apps
|`bool`
|`true`
|no

|===

== Outputs

[cols="a,a",options="header,autowidth"]
|===
|Name |Description
|[[output_app_of_apps_values]] <<output_app_of_apps_values,app_of_apps_values>> |App of Apps values
|[[output_argocd_auth_token]] <<output_argocd_auth_token,argocd_auth_token>> |The token to set in ARGOCD_AUTH_TOKEN environment variable.
|[[output_argocd_server]] <<output_argocd_server,argocd_server>> |The URL of the ArgoCD server.
|[[output_argocd_server_admin_password]] <<output_argocd_server_admin_password,argocd_server_admin_password>> |The ArgoCD admin password.
|[[output_base_domain]] <<output_base_domain,base_domain>> |n/a
|[[output_grafana_admin_password]] <<output_grafana_admin_password,grafana_admin_password>> |The admin password for Grafana.
|[[output_jdoe_password]] <<output_jdoe_password,jdoe_password>> |The password of a regular user jdoe.
|[[output_keycloak_admin_password]] <<output_keycloak_admin_password,keycloak_admin_password>> |The password of Keycloak's admin user.
|[[output_kubeconfig]] <<output_kubeconfig,kubeconfig>> |The content of the KUBECONFIG file.
|[[output_repo_url]] <<output_repo_url,repo_url>> |n/a
|[[output_target_revision]] <<output_target_revision,target_revision>> |n/a
|===
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ The `sks/exoscale` Terraform module provides a way to install and configure:
|[[input_kubernetes_version]] <<input_kubernetes_version,kubernetes_version>>
|Specify which Kubernetes release to use.
|`string`
|`"1.21.5"`
|`"1.21.6"`
|no

|[[input_nodepools]] <<input_nodepools,nodepools>>
Expand Down Expand Up @@ -193,6 +193,7 @@ object({
|[[output_argocd_server]] <<output_argocd_server,argocd_server>> |The URL of the ArgoCD server.
|[[output_argocd_server_admin_password]] <<output_argocd_server_admin_password,argocd_server_admin_password>> |The ArgoCD admin password.
|[[output_base_domain]] <<output_base_domain,base_domain>> |n/a
|[[output_cluster_security_group_id]] <<output_cluster_security_group_id,cluster_security_group_id>> |Security group ID attached to the SKS nodepool instances.
|[[output_grafana_admin_password]] <<output_grafana_admin_password,grafana_admin_password>> |The admin password for Grafana.
|[[output_keycloak_admin_password]] <<output_keycloak_admin_password,keycloak_admin_password>> |The password of Keycloak's admin user.
|[[output_keycloak_users]] <<output_keycloak_users,keycloak_users>> |n/a
Expand Down
8 changes: 8 additions & 0 deletions modules/kind/kind/README.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
= KinD Terraform Module

The `kind/kind` Terraform module provides a way to install and configure:

* A KinD cluster based on Docker
* The xref:ROOT:references/terraform_modules/argocd-helm.adoc[ArgoCD Helm] module