Skip to content
This repository has been archived by the owner on May 6, 2022. It is now read-only.

Roadmap

Jonathan Berkhahn edited this page May 20, 2019 · 59 revisions

This is the official roadmap for the Kubernetes Service Catalog project. This project is currently in alpha, and this roadmap illustrates our plan to get to a stable release. It may change between now and then.


Key

✅ Implemented

❓ Unclear if all requirements have been implemented

⚠️ May fall out of the milestone


1.x Releases

These are stable-quality releases.

1.0.0

Milestone

  • migrated to PROW milestone
  • v1 resource versions #2030
  • Complete website (svc-cat.io)
    • Why Service Catalog #1793
    • Link to existing architecture and concept docs from new site ✅
    • Document schema/resources #1825
    • Document adding brokers #1795
    • Update walkthrough to demonstrate svcat and parameters/secrets for creating resources #1794
  • Resolve the “locking” issue - re: Originating Identity Header
  • Asynchronous bindings ✅ #1209
  • Decide on our plans for using CRDs as storage and potentially as a longer term replacement for aggregated API
    • CRD Backend #1088
    • CRD replacement for aggregated API #987
    • Migration plan for v1beta1 data to whatever we end up doing with CRDs #2059
  • Namespaced Brokers #1826
  • Codebase rebased on Kubernetes 1.10 ✅ #1876
  • Full support for aggregated APIs ✅
  • Porcelain CLI migrated to kubectl plugins ✅ (svcat)
  • svcat
    • output json/yaml ✅ #1944
    • Show UUIDs in describe but not during get ✅ #1804
    • Rename --kube-context flag to --context ✅ #1821
    • Wait support #1736
    • Create/Delete verbs for broker ✅ #1807
    • cf marketplace equivalent command ✅ #2033
  • Official decision on supported OSB API version (v2) ✅
    • Additional versions may be supported in minor release versions of the 1.x.y family
  • Officially supported Kubernetes versions and deployments are tested and working ✅ (#635)
  • RBAC for all resources (we get this "for free" by running behind the aggregator) ✅
  • RBAC for which service accounts can provision a given ServiceClass plan ✅
  • RBAC for individual service class visibility ✅ (#250)
  • RBAC for which service accounts can bind to a given Instance ⚠️ out of scope
  • Make UPS real(#2189)
  • Sample brokers are written, documented, and otherwise officially "blessed" ✅

1.1.0

Milestone

  • Generic Actions #2031
  • Generic Broker Actions #2032
  • Cross-namespace binding support
  • Default Service Plan Proposal
    • e.g. A user can indicate that they want S3-compatible object storage, without knowledge of the ServiceClass entries in the cluster
    • This is based on StorageClass in the persistent volumes system

Shipped Releases

Below is our original roadmap for releases that have since shipped.


0.0.x Releases

These are alpha quality releases.

0.0.1 (Released)

Milestone

Basic functionality and data model:

  • API Server and Controller with reconciliation loop
  • Broker, ServiceClass, Instance, and Binding resources
  • Basic demos and documentation, including a "walk through"

0.0.2 (Released)

Milestone

  • Rebased on Kubernetes 1.6 (#413)
  • Vendor directory checked in (#620)
  • Improved test coverage (#521, #578)
  • Bug fixes from KubeCon demos (#629)

0.0.3 (Released)

Milestone

  • Proposal for general public data type cleanup (#638)
  • More documentation regarding our process and standards
  • More integration test improvements and flake fixes

0.0.4 (Released)

Milestone

  • Better unit tests for TPR storage
  • Making the controller more generally robust to edge cases
  • Adding logic to emit events from the controller

0.0.5 (Released)

Milestone

  • Full support for asynchronous provision & deprovision

We finished several additional features in this release. Please see the release notes for details.

0.0.6 (Released)

Milestone

We finished several features and fixed bugs in this release. Please see the release notes for details.

0.0.7 (Released)

Milestone

We finished several features and fixed bugs in this release. Please see the release notes for details.

0.0.8 (Released)

Milestone

We plan to address some stability issues, fix bugs in the third party resource storage implementation, and stabilize our API and resource types in preparation for our 0.1.0 beta release.

0.1.x Releases

These are beta-quality releases. 0.1.0 will likely be split into multiple additional releases.

0.1.0 (Released)

Milestone

  • Commitment to making data types backward compatible from this release through the entire pre-1.0.0 release
  • Clean up data types according to the proposal written in 0.0.3
  • kubectl enhancements (will be done in kubernetes/kubernetes
  • Integration with namespace lifecycle and finalizers
  • Enabling additional auth schemes between the controller and external OSB API compatible brokers
  • A "porcelain CLI" that enables higher-level -- and simpler -- interaction with the service-catalog API server
    • To be later integrated with kubectl plugins when they are released

0.2.X Releases

These are beta-quality releases.

0.2.0 Namespaced Brokers (Released)

0.2.0 Milestone

Namespaced Milestone

  • Create namespaced equivalents for brokers, classes, plans
  • Make svcat support the new types