Skip to content

Commit

Permalink
feat(docs): improve KinD docs (camptocamp#820)
Browse files Browse the repository at this point in the history
* feat(docs): add KinD quickstart to navigation

Signed-off-by: Raphaël Pinson <raphael.pinson@camptocamp.com>

* feat(docs): add KinD Terraform module docs

Signed-off-by: Raphaël Pinson <raphael.pinson@camptocamp.com>
  • Loading branch information
raphink authored Nov 22, 2021
1 parent db433e8 commit 62fab9f
Show file tree
Hide file tree
Showing 7 changed files with 189 additions and 4 deletions.
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

0 comments on commit 62fab9f

Please sign in to comment.