- cloud.google.com/go/storage to v1.22.1 - github.com/ProtonMail/go-crypto to v0.0.0-20220517143526-88bb52951d5b - github.com/distribution/distribution/v3 to v3.0.0-20220516112011-c202b9b0d7b7 - github.com/docker/cli to v20.10.16+incompatible - github.com/fluxcd/gitkit to v0.5.1 - github.com/fluxcd/pkg/helmtestserver to v0.7.2 - github.com/fluxcd/pkg/ssh to v0.4.0 - github.com/phayes/freeport to v0.0.0-20220201140144-74d24b5ae9f5 - github.com/prometheus/client_golang to v1.12.2 - golang.org/x/crypto to v0.0.0-20220518034528-6f7dac969898 - golang.org/x/net to v0.0.0-20220524220425-1d687d428aca - golang.org/x/sync to v0.0.0-20220513210516-0976fa681c29 - google.golang.org/api to v0.81.0 - sigs.k8s.io/cli-utils to v0.31.1 Signed-off-by: Hidde Beydals <hello@hidde.co> |
||
---|---|---|
.github/workflows | ||
api | ||
config | ||
controllers | ||
docs | ||
hack | ||
internal | ||
pkg | ||
tests/fuzz | ||
.dockerignore | ||
.gitignore | ||
.goreleaser.yaml | ||
ATTRIBUTIONS.md | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
DCO | ||
DEVELOPMENT.md | ||
Dockerfile | ||
LICENSE | ||
MAINTAINERS | ||
Makefile | ||
PROJECT | ||
README.md | ||
go.mod | ||
go.sum | ||
main.go |
README.md
Source controller
The source-controller is a Kubernetes operator, specialised in artifacts acquisition from external sources such as Git, Helm repositories and S3 buckets. The source-controller implements the source.toolkit.fluxcd.io API and is a core component of the GitOps toolkit.
Features:
- authenticates to sources (SSH, user/password, API token)
- validates source authenticity (PGP)
- detects source changes based on update policies (semver)
- fetches resources on-demand and on-a-schedule
- packages the fetched resources into a well-known format (tar.gz, yaml)
- makes the artifacts addressable by their source identifier (sha, version, ts)
- makes the artifacts available in-cluster to interested 3rd parties
- notifies interested 3rd parties of source changes and availability (status conditions, events, hooks)
- reacts to Git push and Helm chart upload events (via notification-controller)