/operator

The Porter Operator gives you a native, integrated experience for managing your bundles from Kubernetes. It is the recommended way to automate your bundle pipeline with support for GitOps.

Primary LanguageGoApache License 2.0Apache-2.0

Build Status

Porter Operator

🚨 This is a new project; the goals below are aspirational and not all implemented yet.

The Porter Operator gives you a native, integrated experience for managing your bundles from Kubernetes. It is the recommended way to automate your bundle pipeline with support for GitOps.

  • Manage bundle installations using desired state configuration.
    • Installs the bundle when an installation CRD is added.
    • Upgrades the bundle when the bundle definition or values used to install the bundle change.
    • Uninstalls the bundle when the installation CRD is deleted or when spec.uninstalled is set to true.
  • Automatically deploy new versions of bundles when a new version is pushed, and update an installation when changes are pushed in git, through integration with Flux.
  • Isolated environments for running bundles in your organization, limiting access to secrets used by the bundles using namespaces and RBAC.
  • Create and respond to events on your cluster to integrate bundles into your pipeline.

Learn all about Porter at getporter.org/operator/

Project Status

🚧 This is a proof of concept only, is currently being rewritten to work with the Porter v1 prerelease. It is not safe to use in production or with production secrets.

We are planning a security review and audit before it is released.

Try it out

Follow our QuickStart to install the Porter Operator on an existing Kubernetes cluster. If you want to build from source, instructions are in the Contributor's Guide.

Contact

  • Mailing List - Great for following the project at a high level because it is low traffic, mostly release notes and blog posts on new features.
  • Slack - Discuss #porter or #cnab with other users and the maintainers.
  • Open an Issue - If you have a bug, feature request or question about Porter, ask on GitHub so that we can prioritize it and make sure you get an answer. If you ask on Slack, we will probably turn around and make an issue anyway. 😉

Looking for Contributors

Want to work on Porter with us? 💖 We are actively seeking out new contributors with the hopes of building up both casual contributors and enticing some of you into becoming reviewers and maintainers.

Start with our New Contributors Guide

Porter wouldn't be possible without our contributors, carrying the load and making it better every day! 🙇‍♀️


Roadmap

Porter is an open-source project and things get done as quickly as we have motivated contributors working on features that interest them. 😉

We use a single project board across all of our repositories to track open issues and pull requests.

The roadmap represents what the core maintainers have said that they are currently working on and plan to work on over the next few months. We use the "on-hold" bucket to communicate items of interest that doesn't have a core maintainer who will be working on it.

Check out our roadmap