Skip to content

Conversation

ricoberger
Copy link
Member

With this commit we are defining the new structure of the kobsio/kobs
repository. In the future we will use yarn workspaces and lerna for
managing the React app and all the plugins for kobs. The corresponding
Go code for the plugins also lives in the plugins directory. This allows
us to manage the dependencies separately for each plugin and later we
can introduce a small repository template, which allows users to create
their own Docker images for kobs, where they can register only the
plugins the really use.

Each plugin must export the IPluginComponents interface, which must
contain a icon and a panel component and an optional page and preview
component for the plugin. The Go code for each plugin must export an
Route, to determine the API path and a Register function which must
return a chi.Router to add the API paths to the API server.

With this commit we are adding the resources plugin, which can be used
to view the Kubernetes resources for the configured clusters. The
components are mainly the same as for the original resurces components.
Besides the resources plugin we also created a core plugin, which
contains the basic App component, some shared components and the
contexts for kobs. The exported functions and components can be accessed
by all other plugins.

@ricoberger ricoberger force-pushed the setup-basic-project-structure branch from 0790a9b to cedf30b Compare June 23, 2021 15:41
With this commit we are defining the new structure of the kobsio/kobs
repository. In the future we will use yarn workspaces and lerna for
managing the React app and all the plugins for kobs. The corresponding
Go code for the plugins also lives in the plugins directory. This allows
us to manage the dependencies separately for each plugin and later we
can introduce a small repository template, which allows users to create
their own Docker images for kobs, where they can register only the
plugins the really use.

Each plugin must export the IPluginComponents interface, which must
contain a icon and a panel component and an optional page and preview
component for the plugin. The Go code for each plugin must export an
Route, to determine the API path and a Register function which must
return a chi.Router to add the API paths to the API server.

With this commit we are adding the resources plugin, which can be used
to view the Kubernetes resources for the configured clusters. The
components are mainly the same as for the original resurces components.
Besides the resources plugin we also created a core plugin, which
contains the basic App component, some shared components and the
contexts for kobs. The exported functions and components can be accessed
by all other plugins.
@ricoberger ricoberger force-pushed the setup-basic-project-structure branch from cedf30b to 1a6933c Compare June 23, 2021 15:47
@ricoberger ricoberger merged commit ab062e2 into v0.4.0 Jun 23, 2021
@ricoberger ricoberger deleted the setup-basic-project-structure branch June 23, 2021 16:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant