The GitOps Toolkit source management component
Go to file
Sanskar Jaiswal d174bc9449 fix potentially broken support for macos
macOS support is broken for users who rely on the Makefile to install
libgit2 for them. libgit2.1.1.dylib could not be dynamically linked at runtime
because it couldn't be found. This patch makes the following changes to
the Makefile:
1) Respects the user's PKG_CONFIG_PATH present in the env so that both
   libgit2.pc and openssl.pc are discoverable.
2) Embeds the required rpath in the binary at compile time, so that
   libgit2.1.1.dylib can be found at runtime. For more info see:
   https://github.com/fluxcd/source-controller/pull/515#discussion_r764245029
Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2021-12-13 15:28:13 +05:30
.github build: update tonistiigi/xx to v1.1.0 2021-12-10 12:25:14 +01:00
api crds: set default observedGeneration to -1 2021-12-09 14:19:09 +01:00
config Release v0.19.2 2021-12-09 15:11:12 +01:00
controllers controllers: use short SHA in chart SemVer meta 2021-12-02 22:28:18 +01:00
docs Add ACL optional field to Source API 2021-11-22 11:41:55 +01:00
hack Add ACL optional field to Source API 2021-11-22 11:41:55 +01:00
internal internal/helm: validate loaded chart metadata obj 2021-11-23 10:14:00 +01:00
pkg libgit2: use `bytes.Equal` instead of `.Compare` 2021-11-23 09:51:44 +01:00
.dockerignore Update github.com/libgit2/git2go to v31.6.1 2021-09-30 16:36:20 +02:00
.gitignore Update github.com/libgit2/git2go to v31.6.1 2021-09-30 16:36:20 +02:00
CHANGELOG.md Release v0.19.2 2021-12-09 15:11:12 +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 Centralise Contributor docs, add Dev doc 2021-10-26 11:24:41 +02:00
Dockerfile build: update tonistiigi/xx to v1.1.0 2021-12-10 12:25:14 +01: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 fix potentially broken support for macos 2021-12-13 15:28:13 +05:30
PROJECT Promote API to v1beta1 2020-09-30 16:11:00 +03:00
README.md Update test shield link 2021-11-22 11:40:18 +01:00
go.mod Release v0.19.2 2021-12-09 15:11:12 +01:00
go.sum Bump dependencies to patch security advisories 2021-12-09 10:11:34 +00:00
main.go main: remove redundant else 2021-11-23 09:51:44 +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)