Joining the Flux community

We want the Flux project to be the vendor-neutral home for GitOps in a Cloud Native world.

Started 2016 to automate deployments at Weaveworks, the project has grown dramatically since then. Especially since the planning of Flux v2 and GitOps Toolkit SDK it was clearer that the scope became more ambitious and that the Flux project has become the home for the Flux family of projects, all solving specific GitOps needs.

We also want our community to be diverse, helpful, collaborative and a fun place to be, so we would love to have you join us!

Getting involved

Finding your interest

To get started, it’s important you find out which parts of Flux you are interested in first.

Maintained, with stable APIs:

StatusInterestRepositoryRoadmap
Maintained, stable APIsFluxhttps://github.com/fluxcd/flux2https://fluxcd.io/roadmap
"Kustomize userhttps://github.com/fluxcd/kustomize-controllerhttps://fluxcd.io/roadmap
"Helm userhttps://github.com/fluxcd/helm-controllerhttps://fluxcd.io/roadmap
Currently stableProgressive deliveryhttps://github.com/fluxcd/flaggerhttps://github.com/fluxcd/flagger/#roadmap

And there is loads more under https://github.com/fluxcd, we all work on this as a community together.

Joining the community

All the projects have docs to help you get started, so a first step is obviously using the projects and getting some first-hand experience. Afterwards you can help out on Slack answering questions, maybe extend the docs or fix some small issues.

Teams

The Flux project uses GitHub org teams to make it easier for Project Members and above to communicate within and across teams. Members of those teams however should be defined in publicly accessible files for transparency to org non-members. See https://github.com/fluxcd/community/blob/main/community-roles.md.

The process of formalising team structures apart from “interest in one or more given sub-project(s)” is ongoing. There currently are:

All projects and teams are open to contributors and every part of the Flux project appreciates your help and consideration. Check out the links above to learn more about the team in question.

Meetings

We run regular meetings and discuss things there. We are very happy if new users, contributors and developers join and we can put names to faces.

All meetings can be found on our calendar: https://lists.cncf.io/g/cncf-flux-dev/calendar

WhichTimesAgenda & MinutesRecordings
Flux Dev Meetings“early” meeting: Uneven weeks: Wed, 12:00 UTC, “late” meeting: Even weeks: Thu, 15:00 UTCDocumentYouTube
Flux Community Team Meetingsevery other Monday 13:00 UTCDocumentYouTube

We are looking forward to seeing you there.

Subscribing to the Flux calendar

To add the meetings to your e.g. Google calendar

  1. visit the Flux calendar

    For this you might need to create an account for lists.cncf.io

  2. click on “Subscribe to Calendar” at the very bottom of the page
  3. copy the iCalendar URL
  4. open e.g. your Google calendar
  5. find the “add calendar” option
  6. choose “add by URL”
  7. paste iCalendar URL (ends with .ics)
  8. done

Communication

Here is a list of good entry points into our community. Here is how we stay in touch and how you can meet us as a team.

Maintainers

Flux project maintainers may differ across Git repositories within the fluxcd GitHub org. The codebase itself is a multi-component design, spread across multiple Git repositories. Flux also includes non-code contributions, such as documentation and community information. Maintainers of each repo are listed in a MAINTAINERS file in the root of that repo.

See project/flux-project-maintainers.yaml for an aggregated list of all maintainers from each of the project’s individual Git repos.

Rules

The Flux community is governed by the governance document, involvement is defined in https://github.com/fluxcd/community/blob/main/community-roles.md, and processes can be found in https://github.com/fluxcd/community/blob/main/PROCESS.md. We as a community follow the code of conduct.