Skip to content

Commit 1467fdf

Browse files
committed
Update README to clarify provider implementation concepts
On-behalf-of: SAP <[email protected]> Signed-off-by: Marvin Beckers <[email protected]>
1 parent 7e76384 commit 1467fdf

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

README.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ multicluster-runtime is a Go library to write Kubernetes controllers that reconc
1616

1717
- **dynamic fleet orchestration**: So-called providers interact with multi-cluster solutions like Cluster API and dynamically start and stop reconciliation against clusters discovered through the provider.
1818
- **no fork, no go mod replace**: clean extension to [upstream controller-runtime](https://github.com/kubernetes-sigs/controller-runtime).
19-
- **universal**: kind, [cluster-api](https://github.com/kubernetes-sigs/cluster-api), [Gardener](https://gardener.cloud/) (tbd), kcp (WIP), BYO. Cluster providers make the controller-runtime multi-cluster aware.
19+
- **universal**: Any kind of multi-cluster solution could theoretically be supported (kind, [cluster-api](https://github.com/kubernetes-sigs/cluster-api), [Gardener](https://gardener.cloud/) (tbd), [kcp](https://kcp.io), BYO). Cluster providers make the controller-runtime multi-cluster aware.
2020
- **seamless**: add multi-cluster support without compromising on single-cluster. Run in either mode without code changes to the reconcilers.
2121

2222
## Patterns Possible with multicluster-runtime
@@ -45,6 +45,17 @@ Run reconcilers that listen to some cluster(s) and operate other clusters.
4545
4. multicluster-runtime is developed as if it was part of controller-runtime (quality standards, naming, style).
4646
5. multicluster-runtime could be a testbed for native controller-runtime functionality, eventually becoming superfluous.
4747
6. multicluster-runtime is provider agnostic, but may contain providers with its own go.mod files and dedicated OWNERS files.
48+
* These providers should be understood as reference implementations and are generally limited to projects hosted by a Kubernetes SIG.
49+
* "Production-ready" providers shall be hosted in their own respective repositories close to the project they support.
50+
51+
## Provider Ecosystem
52+
53+
> [!NOTE]
54+
> If you are developing a multicluster-runtime provider, please feel free to open a PR and add your implementation to this list!
55+
56+
The following cluster provider implementations exist outside of this repository:
57+
58+
- [kcp-dev/multicluster-provider](https://github.com/kcp-dev/multicluster-provider): Collection of multicluster-runtime providers to interact with [kcp](https://kcp.io)'s logical clusters.
4859

4960
## Code Sample
5061

0 commit comments

Comments
 (0)