A Carvel package for Flux, a continuous deployment solution for Kubernetes powered by the GitOps Toolkit.
-
Kubernetes 1.29+
-
Carvel
kctrl
CLI. -
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-namespace
Installation 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.yml
Install the Flux package:
kctrl package install -i flux \
-p flux.packages.kadras.io \
-v ${VERSION} \
-n kadras-system
Note 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-system
Documentation, 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: false
Reference 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.yml
The 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.