A Carvel package for Flux, a continuous deployment solution for Kubernetes powered by the GitOps Toolkit.
-
Kubernetes 1.32+
-
Carvel
kctrlCLI. -
Carvel kapp-controller deployed in your Kubernetes cluster. You can install it with Carvel
kapp(recommended choice) orkubectl.kapp deploy -a kapp-controller -y \ -f https://github.com/carvel-dev/kapp-controller/releases/latest/download/release.yml
Add the Kadras package repository to your Kubernetes cluster:
kctrl package repository add -r kadras-packages \
--url ghcr.io/kadras-io/kadras-packages \
-n kadras-system --create-namespaceInstallation without package repository
The recommended way of installing the Flux package is via the Kadras package repository. If you prefer not using the repository, you can add the package definition directly usingkapp or kubectl.
kubectl create namespace kadras-system
kapp deploy -a flux-package -n kadras-system -y \
-f https://github.com/kadras-io/package-for-flux/releases/latest/download/metadata.yml \
-f https://github.com/kadras-io/package-for-flux/releases/latest/download/package.ymlInstall the Flux package:
kctrl package install -i flux \
-p flux.packages.kadras.io \
-v ${VERSION} \
-n kadras-systemNote You can find the
${VERSION}value by retrieving the list of package versions available in the Kadras package repository installed on your cluster.kctrl package available list -p flux.packages.kadras.io -n kadras-system
Verify the installed packages and their status:
kctrl package installed list -n kadras-systemDocumentation, tutorials and examples for this package are available in the docs folder. For documentation specific to Flux, check out fluxcd.io.
The Flux package can be customized via a values.yml file.
components:
kustomize_controller: true
helm_controller: true
notification_controller: true
image_automation_controller: false
image_reflector_controller: falseReference the values.yml file from the kctrl command when installing or upgrading the package.
kctrl package install -i flux \
-p flux.packages.kadras.io \
-v ${VERSION} \
-n kadras-system \
--values-file values.ymlThe Flux package has the following configurable properties.
Configurable properties
| Config | Default | Description |
|---|---|---|
optional_components.kustomize_controller |
true |
Whether to deploy the Kustomize Controller. |
optional_components.helm_controller |
false |
Whether to deploy the Helm Controller. |
optional_components.notification_controller |
false |
Whether to deploy the Notification Controller. |
optional_components.image_automation_controller |
false |
Whether to deploy the Image Automation Controller. |
optional_components.image_reflector_controller |
false |
Whether to deploy the Image Reflector Controller. |
policies.include |
false |
Whether to include the out-of-the-box Kyverno policies to validate and secure the package installation. |
Settings for logging.
| Config | Default | Description |
|---|---|---|
logging.level |
info |
Log verbosity level. Options: trace, debug, info, error. |
logging.encoding |
json |
Log encoding format. Options: console, json. |
Settings for the corporate proxy.
| Config | Default | Description |
|---|---|---|
proxy.https_proxy |
"" |
The HTTPS proxy to use for network traffic. |
proxy.http_proxy |
"" |
The HTTP proxy to use for network traffic. |
proxy.no_proxy |
"" |
A comma-separated list of hostnames, IP addresses, or IP ranges in CIDR format that should not use the proxy. |
The security process for reporting vulnerabilities is described in SECURITY.md.
This project is licensed under the Apache License 2.0. See LICENSE for more information.