The GitOps Toolkit source management component
Go to file
Stefan Prodan 3168bb6051
Introduce artifact max size limit of 50MiB
Add a controller flag named "--artifact-max-size=<bytes>" with the default value of 50MiB.
To disable the limit, the value can be set to "--artifact-max-size=-1".
The flag enforces a max size limit for the artifact contents produced by source-controller,
to avoid out-of-memory crashes of consumers such as kustomize-controller.

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-10-11 17:53:52 +03:00
.github/workflows The libgit2 libraries are downloaded and verified before 2022-09-29 07:01:36 +01:00
api Bucket: Add status.observedIgnore 2022-10-10 23:06:02 +05:30
config Bucket: Add status.observedIgnore 2022-10-10 23:06:02 +05:30
controllers Introduce artifact max size limit of 50MiB 2022-10-11 17:53:52 +03:00
docs Bucket: Add status.observedIgnore 2022-10-10 23:06:02 +05:30
hack The libgit2 libraries are downloaded and verified before 2022-09-29 07:01:36 +01:00
internal update dependencies 2022-10-11 19:08:44 +05:30
pkg List objects instead when checking if bucket exists in Azure 2022-10-07 20:11:04 +01:00
tests/fuzz Introduce artifact max size limit of 50MiB 2022-10-11 17:53:52 +03: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.30.1 2022-10-10 16:39:19 +01: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 Bump libgit2 image to v0.3.0 2022-09-29 06:55:18 +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 The libgit2 libraries are downloaded and verified before 2022-09-29 07:01:36 +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 update dependencies 2022-10-11 19:08:44 +05:30
go.sum update dependencies 2022-10-11 19:08:44 +05:30
main.go Introduce artifact max size limit of 50MiB 2022-10-11 17:53:52 +03: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)