The GitOps Toolkit source management component
Go to file
Hidde Beydals 1b11e11a90 Allow libgit2 build to be enforced
This can be useful on machines where libgit2 is installed due to other
applications depending on it, but where the composition of this
installation does not properly work with the controller.

Reason the system version is still preferred, is because this lowers the
barrier for drive-by contributors, as a working set of (Git) dependencies
should only really be required if you are going to perform work in that
domain.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-10-14 13:48:15 -05:00
.github Update base image to version with Darwin detection 2021-10-14 13:48:15 -05:00
api Service Account Key Authentication to GCP Provider 2021-09-16 09:49:56 -05:00
config Service Account Key Authentication to GCP Provider 2021-09-16 09:49:56 -05:00
controllers Fix nil pointer dereference 2021-09-16 09:57:27 -05:00
docs Revert change to doc/api/source.md 2021-09-16 12:30:58 -05:00
hack Add LastHandledReconcileAt to source statuses 2020-11-19 13:21:59 +01:00
internal Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
pkg Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
.dockerignore Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
.gitignore Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
CHANGELOG.md Release v0.15.4 2021-08-05 13:45:07 +02:00
CODE_OF_CONDUCT.md Add governance files like DCO, MAINTAINERS, CoC 2020-04-12 23:54:35 +02:00
CONTRIBUTING.md Document how to build libgit2 from source 2020-12-09 17:00:17 +01:00
DCO Add governance files like DCO, MAINTAINERS, CoC 2020-04-12 23:54:35 +02:00
Dockerfile Update base image to version with Darwin detection 2021-10-14 13:48:15 -05:00
LICENSE Initial commit 2020-04-05 11:55:46 +03:00
MAINTAINERS Share maintainers from fluxcd/flux2 2020-12-01 12:20:27 +00:00
Makefile Allow libgit2 build to be enforced 2021-10-14 13:48:15 -05:00
PROJECT Promote API to v1beta1 2020-09-30 16:11:00 +03:00
README.md add CII badge 2021-04-08 12:13:56 +02:00
go.mod Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
go.sum Update github.com/libgit2/git2go to v31.6.1 2021-10-14 13:48:15 -05:00
main.go Panic on non-nil AddToScheme errors in main init 2021-06-17 15:38:24 +02: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)