diff --git a/README.md b/README.md index 5921927ae..ca840f2d8 100644 --- a/README.md +++ b/README.md @@ -1,137 +1,44 @@ -# Flux - -> **On Flux v2** -> -> This repository contains the source code of Flux Legacy, or Flux v1. It largely -> just receives security fixes at this point. -> -> Development has moved to [fluxcd/flux2](https://github.com/fluxcd/flux2) and its -> controllers entirely. If you consider using Flux, we **strongly recommend** you -> take a look at to get started, or if you are -> on Flux Legacy to migrate. -> -> Many of the long-requested features for Flux have been integrated into the new -> version of Flux, you will find it much more versatile. -> -> :warning: Read our announcement here: -> **[Flux v1 is in maintenance mode](https://github.com/fluxcd/flux/issues/3320)**. - -We believe in GitOps: - -- **You declaratively describe the entire desired state of your - system in git.** This includes the apps, config, dashboards, - monitoring and everything else. -- **What can be described can be automated.** Use YAMLs to enforce - conformance of the system. You don't need to run `kubectl`, all changes go - through git. Use diff tools to detect divergence between observed and - desired state and get notifications. -- **You push code not containers.** Everything is controlled through - pull requests. There is no learning curve for new devs, they just use - your standard git PR process. The history in git allows you to recover - from any snapshot as you have a sequence of transactions. It is much - more transparent to make operational changes by pull request, e.g. - fix a production issue via a pull request instead of making changes to - the running system. - -Flux is a tool that automatically ensures that the state of a cluster -matches the config in git. It uses an operator in the cluster to trigger -deployments inside Kubernetes, which means you don't need a separate CD tool. -It monitors all relevant image repositories, detects new images, triggers -deployments and updates the desired running configuration based on that -(and a configurable policy). - -The benefits are: you don't need to grant your CI access to the cluster, every -change is atomic and transactional, git has your audit log. Each transaction -either fails or succeeds cleanly. You're entirely code centric and don't need -new infrastructure. - -![Deployment Pipeline](docs/_files/flux-cd-diagram.png) - -[![CircleCI](https://circleci.com/gh/fluxcd/flux.svg?style=svg)](https://circleci.com/gh/fluxcd/flux) -[![GoDoc](https://godoc.org/github.com/fluxcd/flux?status.svg)](https://godoc.org/github.com/fluxcd/flux) -[![Documentation](https://img.shields.io/badge/latest-documentation-informational)](https://fluxcd.io/legacy/flux/) - -## What Flux does - -Flux 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. - -### Who is using Flux in production - -**Our list of production users has moved to **. - -If you too are using Flux in production; please [submit a PR to add your organization](https://github.com/fluxcd/website/tree/main/adopters#readme) to the list! - -### History - -In the first years of its existence, the development of Flux was very -closely coupled to that of [Weave -Cloud](https://www.weave.works/product/cloud/). Over the years the community -around Flux grew, the numbers of [integrations](#integrations) grew and -the team started the process of generalising the code, so that more projects -could easily integrate. - -## Get started with Flux - -With the following tutorials: - -- [Get started with Flux](https://fluxcd.io/legacy/flux/tutorials/get-started/) -- [Get started with Flux using Helm](https://fluxcd.io/legacy/flux/tutorials/get-started-helm/) - -or just [browse through the documentation](https://fluxcd.io/legacy/flux/). - -Do you want to release your Helm charts in a declarative way? -Take a look at the [`fluxcd/helm-operator`](https://github.com/fluxcd/helm-operator). - -### Integrations - -As Flux is Open Source, integrations are very straight-forward. Here are -a few popular ones you might want to check out: - -- [Manage a multi-tenant cluster with Flux and Kustomize](https://github.com/fluxcd/multi-tenancy) -- [Managing Helm releases the GitOps way](https://github.com/fluxcd/helm-operator-get-started) -- [OpenFaaS GitOps workflow with Flux](https://github.com/stefanprodan/openfaas-flux) -- [GitOps for Istio Canary deployments](https://github.com/stefanprodan/gitops-istio) -- [Fluxcloud to receive events from Flux](https://github.com/topfreegames/fluxcloud) - -## Community & Developer information - -We welcome all kinds of contributions to Flux, be it code, issues you found, -documentation, external tools, help and support or anything else really. - -The Flux project adheres to the [CNCF Code of -Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). - -Instances of abusive, harassing, or otherwise unacceptable behavior -may be reported by contacting a _Flux_ project maintainer, or the CNCF -mediator, Mishi Choudhary . - -To familiarise yourself with the project and how things work, you might -be interested in the following: - -- [Our contributions guidelines](CONTRIBUTING.md) -- [Build documentation](https://fluxcd.io/legacy/flux/contributing/building/) -- [Release documentation](internal/docs/releasing.md) - -## Getting Help - -Reminder that Flux v1 is in maintenance mode. If you have any questions about Flux v2 and future migrations, these are the best ways to stay informed: - -- Read about the [GitOps Toolkit](https://toolkit.fluxcd.io/) (Flux v2 is built on the GitOps Toolkit). -- Ask questions and add suggestions in our [GitOps Toolkit Discussions](https://github.com/fluxcd/toolkit/discussions) -- Check out our **[events calendar](https://fluxcd.io/#calendar)**, both with upcoming talks, events and meetings you can attend. -- Or view the **[resources section](https://fluxcd.io/resources)** with past events videos you can watch. -- Join the Flux v2 / GitOps Toolkit [community meetings](https://fluxcd.io/community/#meetings) - -If you have further questions about Flux or continuous delivery: - -- Read [the Flux docs](https://fluxcd.io/legacy/flux/). -- Invite yourself to the CNCF community - slack and ask a question on the [#flux](https://cloud-native.slack.com/messages/flux/) - channel. -- To be part of the conversation about Flux's development, join the - [flux-dev mailing list](https://lists.cncf.io/g/cncf-flux-dev). -- [File an issue.](https://github.com/fluxcd/flux/issues/new/choose) - -Your feedback is always welcome! +# Flux v1 + +This repository contains the source code of Flux Legacy (v1). +Flux v1 has reached **end of life** and has been replaced by +[fluxcd/flux2](https://github.com/fluxcd/flux2) +and its controllers entirely. + +If you consider using Flux, please take a look at +to get started with v2, or if you are on Flux Legacy, to migrate. + +## History + +Flux was initially developed by [Weaveworks](https://weave.works) and made open source in 2016. +Over the years the community around Flux & GitOps grew and in 2019 Weaveworks decided to donate +the project to [CNCF](https://cncnf.io). + +After joining CNCF, the Flux project has seen [massive adoption](https://fluxcd.io/adopters/) +by various organisations. With adoption came a wave of feature requests +that required a major overhaul of Flux monolithic code base and security stance. + +In April 2020, the Flux team decided to redesign Flux from the ground up using modern +technologies such as Kubernetes controller runtime and Custom Resource Definitions. +The decision was made to break Flux functionally into specialised components and APIs +with a focus on extensibility, observability and security. +These components are now called the [GitOps Toolkit](https://fluxcd.io/flux/components/). + +In 2021, the Flux team lunched Flux v2 with many long-requested features like +support for multi-tenancy, support for syncing an arbitrary number of Git repositories, +better observability and a solid security stance. The new version made possible +to extend Flux capabilities beyond its original GitOps design. The community rallied +around the new design, with an overwhelming number of early adopters and +new contributions, Flux v2 gained new features at a very rapid pace. + +In 2022, Flux v2 undergoes several security audits, and its code base and APIs become stable +and production ready. Weaveworks lunched a free and open source Web UI for Flux called +[Weave GitOps](https://github.com/weaveworks/weave-gitops) which made Flux +more accessible. + +Today Flux is an established continuous delivery solution for Kubernetes, +[trusted by organisations](https://fluxcd.io/adopters/) around the world. +Various vendors like Amazon AWS, Microsoft Azure, VMware, Weaveworks +and others offer [Flux as-a-service](https://fluxcd.io/ecosystem/) to their users. +The Flux team is very grateful to the community who supported us over the +years and made Flux what it is today.