fluxcd-bootstrap

andreswebs/fluxcd-bootstrap/github

Terraform Module HCL GITHUB

Deploys the FluxCD toolkit on Kubernetes and stores the manifests in an existing GitHub repository

Install
module "fluxcd-bootstrap" {
source = "andreswebs/fluxcd-bootstrap/github"
version = "3.0.0"
}
plain text: /constructs/tfmod-andreswebs-fluxcd-bootstrap-github/install.txt
⭐ Source on GitHub 📦 Registry page
README

terraform-github-fluxcd-bootstrap Deploys the FluxCD toolkit on Kubernetes and stores the manifests in an existing GitHub repository. Note: If using the default settings, this module will generate an SSH key pair and the public key will be added to the existing GitHub repository. This key pair will be stored unencrypted in the Terraform state. Make sure that only authorized users have direct access to the Terraform state. It is highly recommended to use a remote state backend supporting encryption at rest. See References for more information. See the examples to use an externally generated key instead. [//]: # (BEGIN_TF_DOCS) Usage Example: ``hcl provider "github" { token = var.github_token owner = var.github_owner } provider "kubernetes" { config_path = "~/.kube/config" config_context = "

Inputs (26)
NameTypeDescriptionDefault
github_ownerstringGitHub owner required
git_repository_namestringName of the Git repository to store the FluxCD manifests required
github_ssh_known_hosts_filestringPath to a temporary file used to store GitHub's known hosts during the deploymen"/tmp/github_known_hosts"
flux_image_pull_secretsstringKubernetes secret name used for pulling the toolkit images from a private regist""
flux_install_network_policyboolDeny ingress access to the toolkit controllers from other namespaces using netwotrue
flux_install_componentslist(string)Toolkit components to include in the install manifests[ "source-controller", "kustomize-co
flux_install_toleration_keyslist(string)List of toleration keys used to schedule the components pods onto nodes with mat[]
k8s_namespace_annotationsmap(string)Annotations to apply to the Kubernetes namespace when it is created{}
k8s_cluster_domainstringThe internal cluster domain"cluster.local"
github_ssh_domainstringDomain to use for SSH to GitHub"github.com"
github_deploy_key_titlestringGitHub deploy key title"flux"
flux_log_levelstringLog level for Flux toolkit components"info"
k8s_namespacestringName of the Kubernetes namespace where the resources will be deployed"flux-system"
flux_watch_all_namespacesboolWatch for custom resources in all namespaces?true
flux_registrystringContainer registry from where the Flux toolkit images are pulled"ghcr.io/fluxcd"
flux_resources_namestringThe name of generated Kubernetes resources"flux-system"
flux_install_components_extralist(string)List of extra components to include in the install manifests[]
flux_secret_namestringThe name of the secret that is referenced by `GitRepository`, used by flux to de"flux-system"
flux_sync_interval_minutesnumberSync interval in minutes1
k8s_namespace_labelsmap(string)Labels to apply to the Kubernetes namespace when it is created{}
git_target_pathstringTarget path for storing FluxCD manifests in the Git repository"."
create_namespaceboolCreate the Kubernetes namespace?true
Outputs (4)
github_repository — GitHub repository used by flux
namespace — The name (metadata.name) of the namespace
deploy_key — SSH key added to the GitHub repository
known_hosts — Known hosts for GitHub's SSH domain
Resources (7)
github_repository_deploy_keygithub_repository_filekubectl_manifestkubernetes_namespacekubernetes_secretnull_resourcetls_private_key
Details
FrameworkTerraform Module
LanguageHCL
Version3.0.0
Cloud GITHUB
★ Stars2
Forks0
Total downloads828
Inputs26
Outputs4
Resources7
LicenseUnlicense
Namespaceandreswebs
Updated