28 lines
1.8 KiB
Markdown
28 lines
1.8 KiB
Markdown
# Source controller
|
|
|
|
[](https://bestpractices.coreinfrastructure.org/projects/4786)
|
|
[](https://github.com/fluxcd/source-controller/actions)
|
|
[](https://goreportcard.com/report/github.com/fluxcd/source-controller)
|
|
[](https://github.com/fluxcd/source-controller/blob/main/LICENSE)
|
|
[](https://github.com/fluxcd/source-controller/releases)
|
|
|
|
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](https://github.com/fluxcd/source-controller/tree/master/docs/spec/v1beta1) API
|
|
and is a core component of the [GitOps toolkit](https://fluxcd.io/docs/components/).
|
|
|
|

|
|
|
|
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](https://github.com/fluxcd/notification-controller))
|