|
1 |
| -# Flux |
2 |
| - |
3 |
| -> **On Flux v2** |
4 |
| -> |
5 |
| -> This repository contains the source code of Flux Legacy, or Flux v1. It largely |
6 |
| -> just receives security fixes at this point. |
7 |
| -> |
8 |
| -> Development has moved to [fluxcd/flux2](https://github.com/fluxcd/flux2) and its |
9 |
| -> controllers entirely. If you consider using Flux, we **strongly recommend** you |
10 |
| -> take a look at <https://fluxcd.io/flux/get-started> to get started, or if you are |
11 |
| -> on Flux Legacy <https://fluxcd.io/flux/migration/> to migrate. |
12 |
| -> |
13 |
| -> Many of the long-requested features for Flux have been integrated into the new |
14 |
| -> version of Flux, you will find it much more versatile. |
15 |
| -> |
16 |
| -> :warning: Read our announcement here: |
17 |
| -> **[Flux v1 is in maintenance mode](https://github.com/fluxcd/flux/issues/3320)**. |
18 |
| -
|
19 |
| -We believe in GitOps: |
20 |
| - |
21 |
| -- **You declaratively describe the entire desired state of your |
22 |
| - system in git.** This includes the apps, config, dashboards, |
23 |
| - monitoring and everything else. |
24 |
| -- **What can be described can be automated.** Use YAMLs to enforce |
25 |
| - conformance of the system. You don't need to run `kubectl`, all changes go |
26 |
| - through git. Use diff tools to detect divergence between observed and |
27 |
| - desired state and get notifications. |
28 |
| -- **You push code not containers.** Everything is controlled through |
29 |
| - pull requests. There is no learning curve for new devs, they just use |
30 |
| - your standard git PR process. The history in git allows you to recover |
31 |
| - from any snapshot as you have a sequence of transactions. It is much |
32 |
| - more transparent to make operational changes by pull request, e.g. |
33 |
| - fix a production issue via a pull request instead of making changes to |
34 |
| - the running system. |
35 |
| - |
36 |
| -Flux is a tool that automatically ensures that the state of a cluster |
37 |
| -matches the config in git. It uses an operator in the cluster to trigger |
38 |
| -deployments inside Kubernetes, which means you don't need a separate CD tool. |
39 |
| -It monitors all relevant image repositories, detects new images, triggers |
40 |
| -deployments and updates the desired running configuration based on that |
41 |
| -(and a configurable policy). |
42 |
| - |
43 |
| -The benefits are: you don't need to grant your CI access to the cluster, every |
44 |
| -change is atomic and transactional, git has your audit log. Each transaction |
45 |
| -either fails or succeeds cleanly. You're entirely code centric and don't need |
46 |
| -new infrastructure. |
47 |
| - |
48 |
| - |
49 |
| - |
50 |
| -[](https://circleci.com/gh/fluxcd/flux) |
51 |
| -[](https://godoc.org/github.com/fluxcd/flux) |
52 |
| -[](https://fluxcd.io/legacy/flux/) |
53 |
| - |
54 |
| -## What Flux does |
55 |
| - |
56 |
| -Flux is most useful when used as a deployment tool at the end of a |
57 |
| -Continuous Delivery pipeline. Flux will make sure that your new |
58 |
| -container images and config changes are propagated to the cluster. |
59 |
| - |
60 |
| -### Who is using Flux in production |
61 |
| - |
62 |
| -**Our list of production users has moved to <https://fluxcd.io/adopters/#flux-v1>**. |
63 |
| - |
64 |
| -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! |
65 |
| - |
66 |
| -### History |
67 |
| - |
68 |
| -In the first years of its existence, the development of Flux was very |
69 |
| -closely coupled to that of [Weave |
70 |
| -Cloud](https://www.weave.works/product/cloud/). Over the years the community |
71 |
| -around Flux grew, the numbers of [integrations](#integrations) grew and |
72 |
| -the team started the process of generalising the code, so that more projects |
73 |
| -could easily integrate. |
74 |
| - |
75 |
| -## Get started with Flux |
76 |
| - |
77 |
| -With the following tutorials: |
78 |
| - |
79 |
| -- [Get started with Flux](https://fluxcd.io/legacy/flux/tutorials/get-started/) |
80 |
| -- [Get started with Flux using Helm](https://fluxcd.io/legacy/flux/tutorials/get-started-helm/) |
81 |
| - |
82 |
| -or just [browse through the documentation](https://fluxcd.io/legacy/flux/). |
83 |
| - |
84 |
| -Do you want to release your Helm charts in a declarative way? |
85 |
| -Take a look at the [`fluxcd/helm-operator`](https://github.com/fluxcd/helm-operator). |
86 |
| - |
87 |
| -### Integrations |
88 |
| - |
89 |
| -As Flux is Open Source, integrations are very straight-forward. Here are |
90 |
| -a few popular ones you might want to check out: |
91 |
| - |
92 |
| -- [Manage a multi-tenant cluster with Flux and Kustomize](https://github.com/fluxcd/multi-tenancy) |
93 |
| -- [Managing Helm releases the GitOps way](https://github.com/fluxcd/helm-operator-get-started) |
94 |
| -- [OpenFaaS GitOps workflow with Flux](https://github.com/stefanprodan/openfaas-flux) |
95 |
| -- [GitOps for Istio Canary deployments](https://github.com/stefanprodan/gitops-istio) |
96 |
| -- [Fluxcloud to receive events from Flux](https://github.com/topfreegames/fluxcloud) |
97 |
| - |
98 |
| -## Community & Developer information |
99 |
| - |
100 |
| -We welcome all kinds of contributions to Flux, be it code, issues you found, |
101 |
| -documentation, external tools, help and support or anything else really. |
102 |
| - |
103 |
| -The Flux project adheres to the [CNCF Code of |
104 |
| -Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). |
105 |
| - |
106 |
| -Instances of abusive, harassing, or otherwise unacceptable behavior |
107 |
| -may be reported by contacting a _Flux_ project maintainer, or the CNCF |
108 |
| -mediator, Mishi Choudhary <[email protected]>. |
109 |
| - |
110 |
| -To familiarise yourself with the project and how things work, you might |
111 |
| -be interested in the following: |
112 |
| - |
113 |
| -- [Our contributions guidelines](CONTRIBUTING.md) |
114 |
| -- [Build documentation](https://fluxcd.io/legacy/flux/contributing/building/) |
115 |
| -- [Release documentation](internal/docs/releasing.md) |
116 |
| - |
117 |
| -## <a name="help"></a>Getting Help |
118 |
| - |
119 |
| -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: |
120 |
| - |
121 |
| -- Read about the [GitOps Toolkit](https://toolkit.fluxcd.io/) (Flux v2 is built on the GitOps Toolkit). |
122 |
| -- Ask questions and add suggestions in our [GitOps Toolkit Discussions](https://github.com/fluxcd/toolkit/discussions) |
123 |
| -- Check out our **[events calendar](https://fluxcd.io/#calendar)**, both with upcoming talks, events and meetings you can attend. |
124 |
| -- Or view the **[resources section](https://fluxcd.io/resources)** with past events videos you can watch. |
125 |
| -- Join the Flux v2 / GitOps Toolkit [community meetings](https://fluxcd.io/community/#meetings) |
126 |
| - |
127 |
| -If you have further questions about Flux or continuous delivery: |
128 |
| - |
129 |
| -- Read [the Flux docs](https://fluxcd.io/legacy/flux/). |
130 |
| -- Invite yourself to the <a href="https://slack.cncf.io" target="_blank">CNCF community</a> |
131 |
| - slack and ask a question on the [#flux](https://cloud-native.slack.com/messages/flux/) |
132 |
| - channel. |
133 |
| -- To be part of the conversation about Flux's development, join the |
134 |
| - [flux-dev mailing list](https://lists.cncf.io/g/cncf-flux-dev). |
135 |
| -- [File an issue.](https://github.com/fluxcd/flux/issues/new/choose) |
136 |
| - |
137 |
| -Your feedback is always welcome! |
| 1 | +# Flux v1 |
| 2 | + |
| 3 | +This repository contains the source code of Flux Legacy (v1). |
| 4 | + |
| 5 | +Flux v1 has reached **end of life** and has been replaced by [fluxcd/flux2](https://github.com/fluxcd/flux2) |
| 6 | +and its controllers entirely. |
| 7 | + |
| 8 | +If you consider using Flux, please take a look at <https://fluxcd.io/flux/get-started> |
| 9 | +to get started with v2, or if you are on Flux Legacy, <https://fluxcd.io/flux/migration/> to migrate. |
| 10 | + |
| 11 | +## History |
| 12 | + |
| 13 | +Flux was initially developed by [Weaveworks](https://weave.works) and made open source in 2016. |
| 14 | +Over the years the community around Flux & GitOps grew and in 2019 Weaveworks decided to donate |
| 15 | +the project to [CNCF](https://cncf.io). |
| 16 | + |
| 17 | +After joining CNCF, the Flux project has seen [massive adoption](https://fluxcd.io/adopters/) |
| 18 | +by various organisations. With adoption came a wave of feature requests |
| 19 | +that required a major overhaul of Flux monolithic code base and security stance. |
| 20 | + |
| 21 | +In April 2020, the Flux team decided to redesign Flux from the ground up using modern |
| 22 | +technologies such as Kubernetes controller runtime and Custom Resource Definitions. |
| 23 | +The decision was made to break Flux functionally into specialised components and APIs |
| 24 | +with a focus on extensibility, observability and security. |
| 25 | +These components are now called the [GitOps Toolkit](https://fluxcd.io/flux/components/). |
| 26 | + |
| 27 | +In 2021, the Flux team launched Flux v2 with many long-requested features like |
| 28 | +support for multi-tenancy, support for syncing an arbitrary number of Git repositories, |
| 29 | +better observability and a solid security stance. The new version made it possible |
| 30 | +to extend Flux capabilities beyond its original GitOps design. The community rallied |
| 31 | +around the new design, with an overwhelming number of early adopters and |
| 32 | +new contributions, Flux v2 gained new features at a very rapid pace. |
| 33 | + |
| 34 | +In 2022, Flux v2 undergoes several security audits, and its code base and APIs become stable |
| 35 | +and production ready. Weaveworks launched a free and open source Web UI for Flux called |
| 36 | +[Weave GitOps](https://github.com/weaveworks/weave-gitops) which made Flux |
| 37 | +more accessible. |
| 38 | + |
| 39 | +Today Flux is an established continuous delivery solution for Kubernetes, |
| 40 | +[trusted by organisations](https://fluxcd.io/adopters/) around the world. |
| 41 | +Various vendors like Amazon AWS, Microsoft Azure, VMware, Weaveworks |
| 42 | +and others offer [Flux as-a-service](https://fluxcd.io/ecosystem/) to their users. |
| 43 | +The Flux team is very grateful to the community who supported us over the |
| 44 | +years and made Flux what it is today. |
0 commit comments