The GitOps Toolkit source management component
Go to file
Sunny 9b5613732f storage: Return details about the deleted items
Update Storage.RemoveAll() and Storage.RemoveAllButCurrent() to return
the details about the deleted items. This helps emit useful information
about garbage collection in the controllers and ignore no-op garbage
collections.

RemoveAll() returns the path of the deleted directory if any.
RemoveAllButCurrent() returns a slice of path of all the deleted items
from a resource's artifact dir.

Signed-off-by: Sunny <darkowlzz@protonmail.com>
2022-02-23 12:35:30 +01:00
.github/workflows Fix make test on arm64 runners 2022-02-16 10:17:33 +00:00
api api: remove obsolete constants 2022-02-23 12:35:30 +01:00
config HelmChartReconciler refactor 2022-02-23 12:35:30 +01:00
controllers storage: Return details about the deleted items 2022-02-23 12:35:30 +01:00
docs Implement new runtime interfaces, prepare testenv 2022-02-23 12:35:30 +01:00
hack Introduce v1beta2 API package 2022-02-23 12:34:35 +01:00
internal internal/helm: ErrChartReference on local load err 2022-02-23 12:35:30 +01:00
pkg Add bucket controller tests for reconcileGCPSource 2022-02-23 12:35:30 +01:00
tests/fuzz Upgrade libgit2 to libgit2-1.3.0-2 2022-02-16 11:39:11 +00:00
.dockerignore Download libgit2 libraries for fuzzing 2022-02-11 12:30:46 +00:00
.gitignore Update libgit2 to 1.1.1-6 2022-02-07 13:00:57 +00:00
.goreleaser.yaml Publish SBOM and sign release artifacts 2022-01-20 13:49:36 +02:00
ATTRIBUTIONS.md Update libgit2 attributions 2022-02-16 10:30:27 +00:00
CHANGELOG.md Release v0.21.2 2022-02-07 11:50:32 +02:00
CODE_OF_CONDUCT.md Add governance files like DCO, MAINTAINERS, CoC 2020-04-12 23:54:35 +02:00
DCO Add governance files like DCO, MAINTAINERS, CoC 2020-04-12 23:54:35 +02:00
DEVELOPMENT.md Update dev docs 2022-01-25 15:09:47 +00:00
Dockerfile Upgrade libgit2 to libgit2-1.3.0-2 2022-02-16 11:39:11 +00:00
LICENSE Initial commit 2020-04-05 11:55:46 +03:00
MAINTAINERS Add pjbgf to Maintainers 2022-02-17 11:24:02 +00:00
Makefile Introduce v1beta2 API package 2022-02-23 12:34:35 +01:00
PROJECT Introduce v1beta2 API package 2022-02-23 12:34:35 +01:00
README.md Update test shield link 2021-11-22 11:40:18 +01:00
go.mod controllers: remove legacy test suite 2022-02-23 12:35:30 +01:00
go.sum gitrepo: Add more reconciler design improvements 2022-02-23 12:35:30 +01:00
main.go HelmChartReconciler refactor 2022-02-23 12:35:30 +01:00

README.md

Source controller

CII Best Practices e2e report license release

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.

overview

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)