GitOps for k8s
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sam Broughton 9cb52d5cc7 Update changelog for 1.2.1 release 1 year ago
.circleci Trigger circle builds from tags as well as branches 2 years ago
api Add NotifyChange to api.Upstream 2 years ago
bin Creating a new release will prompt circle to upload binaries to release. 2 years ago
cluster Use batch/v1beta1 instead of batch/v2alpha1 1 year ago
cmd Add a default ssh_config to the image 1 year ago
daemon Be more explicit in return value to LatestImage 1 year ago
deploy Update example for 1.2.0 1 year ago
docker Add a default ssh_config to the image 1 year ago
errors Propagate helpful errors through RPC 2 years ago
event Extricate the Event types from history package 2 years ago
git Write to SSH config instead of using env 1 year ago
guid Make new subscriptions kick old subscriptions 3 years ago
http Register daemon with V9 endpoint 2 years ago
image Include digest and image identifier in image.Info 2 years ago
internal_docs Add checkpoint step to release process doc 2 years ago
job Extricate the Event types from history package 2 years ago
metrics Standardize http metrics, to flux_request_duration 2 years ago
policy Reorders deleting and applying during cluster syncing by resource kind 2 years ago
registry Check for a .gcr.io suffix too. 1 year ago
release Separate filtering into pre- and post- phases 1 year ago
remote Bring tests up to date with Platform 2 years ago
resource Remove k8s Service requirement 2 years ago
site Correct --git-set-author argument name in docs 1 year ago
ssh Add a default ssh_config to the image 1 year ago
sync Remove namespace filtering logic from sync package 1 year ago
test Keep current-context 2 years ago
update Separate filtering into pre- and post- phases 1 year ago
.gitignore Basic integration tests 2 years ago
CHANGELOG.md Update changelog for 1.2.1 release 1 year ago
Gopkg.lock Add a default ssh_config to the image 1 year ago
Gopkg.toml Use batch/v1beta1 instead of batch/v2alpha1 1 year ago
LICENSE Initial commit 3 years ago
Makefile Add a default ssh_config to the image 1 year ago
README.md Rewrite some FAQ answers and mention Flux Classic 2 years ago
flux.go Report the status of the git repo when asked 2 years ago
lint Basic circle.yml, respecting Glide etc. 3 years ago

README.md

Flux

We believe that environments should be entirely version controlled. This is an anti-fragile measure to ensure stability through visibility. If anything fails, you can simply reapply the current state of the repository.

Flux is a tool that automatically ensures that the state of a cluster matches what is specified in version control (along with a few extra features).

It is most useful when used as a deployment tool at the end of a Continuous Delivery pipeline. Flux will make sure that your new container images and config changes are propagated to the cluster.

CircleCI GoDoc

Get started by browsing through the documentation below.

Introduction to Flux

FAQ

How it works

Installing Flux

Using Flux

Upgrading to Flux v1

Troubleshooting

Developer information

Build documentation

Release documentation

Contribution

Flux follows a typical PR workflow. All contributions should be made as PRs that satisfy the guidelines below.

Guidelines

  • All code must abide Go Code Review Comments
  • Names should abide What’s in a name
  • Code must build on both Linux and Darwin, via plain go build
  • Code should have appropriate test coverage, invoked via plain go test

In addition, several mechanical checks are enforced. See the lint script for details.

Getting Help

If you have any questions about Flux and continuous delivery:

Your feedback is always welcome!