capactio / capact

Simple way to manage applications and infrastructure.
https://capact.io
Apache License 2.0
79 stars 19 forks source link

Add support for Hub federation #511

Open mszostok opened 3 years ago

mszostok commented 3 years ago

Description

The idea is to enable support for connecting multiple Hubs into a single one.

Currently, we have an entity called vendor https://github.com/capactio/capact/blob/main/ocf-spec/0.0.1/README.md#vendor Remote Public Hub repositories can be mounted under the vendor sub-tree in the local repository. Vendor manifest stores connection details of the external OCH, such as URI of the repository (base path) or federation strategy.

This concept needs to be refined.

Features:

In the first round, we should think how to enable Public Hub federation. In the future, the Local Hubs could also reuse the same implementation.

Reason

In the current approach, all content that is loaded to Public Hub requires to be defined in a single repository. There is no easy way to split it e.g. extract test content to separate och repository which can be optionally enabled.

This pattern doesn't scale well. We should be able to split repository per vendor (e.g. Google, Microsoft, RedHat etc.) and per use-cases e.g. private used for commercial use-cases, incubator, open-source manifests etc.

mszostok commented 2 years ago

Simplified approach for current use cases: