The GitOps Toolkit source management component
Go to file
Paulo Gomes 331fd64952
gogit: Add new ForceGoGitImplementation FeatureGate
ForceGoGitImplementation ignores the value set for gitImplementation
and ensures that go-git is used for all GitRepository objects.
This can be used to confirm that Flux instances won't break if/when
the libgit2 implementation was to be deprecated.

When enabled, libgit2 won't be initialized, nor will any git2go cgo
code be called.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-11-11 10:25:00 +00:00
.github/workflows build: Disable macos-11 2022-10-20 10:01:22 +01:00
api Use Flux Event API v1beta1 2022-11-09 11:06:23 +02:00
config Release v0.31.0 2022-10-21 17:04:54 +03:00
controllers gogit: Add new ForceGoGitImplementation FeatureGate 2022-11-11 10:25:00 +00:00
docs gogit: Add new ForceGoGitImplementation FeatureGate 2022-11-11 10:25:00 +00:00
hack ci: remove explicit managed transport init and tests 2022-10-26 14:04:01 +01:00
internal gogit: Add new ForceGoGitImplementation FeatureGate 2022-11-11 10:25:00 +00:00
pkg Update to azure-sdk-for-go/sdk/azcore v1.2.0 2022-11-08 13:42:00 +00:00
tests/fuzz build: Bump golang-with-libgit2 to v0.4.0 2022-10-26 14:06:14 +01: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 libgit2: upgrade to golang-with-libgit2 v0.1.4 2022-07-26 15:10:29 +05:30
CHANGELOG.md Release v0.31.0 2022-10-21 17:04:54 +03: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 to new doc links structure 2022-08-30 15:17:06 +02:00
Dockerfile build: Bump golang-with-libgit2 to v0.4.0 2022-10-26 14:06:14 +01: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 build: Bump golang-with-libgit2 to v0.4.0 2022-10-26 14:06:14 +01:00
PROJECT Add OCIRepository kind to v1beta2 API 2022-08-02 13:07:05 +03:00
README.md update to new doc links structure 2022-08-30 15:17:06 +02:00
go.mod Use Flux Event API v1beta1 2022-11-09 11:06:23 +02:00
go.sum Use Flux Event API v1beta1 2022-11-09 11:06:23 +02:00
main.go gogit: Add new ForceGoGitImplementation FeatureGate 2022-11-11 10:25:00 +00: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)