Skip to content

Commit 40a24ab

Browse files
authored
docs: readme with intro and details for contributing (#291)
* docs: readme with intro and details for contributing Signed-off-by: Philippe Martin <[email protected]> * docs: fix Signed-off-by: Philippe Martin <[email protected]> --------- Signed-off-by: Philippe Martin <[email protected]>
1 parent 05c2558 commit 40a24ab

File tree

1 file changed

+51
-2
lines changed

1 file changed

+51
-2
lines changed

README.md

Lines changed: 51 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,59 @@
22

33
![License: Apache 2.0](https://img.shields.io/badge/license-Apache%202.0-blue)
44

5-
# Install latest release
5+
Kubernetes Dashboard is an open source extension for Podman Desktop to monitor with Kubernetes clusters.
6+
7+
The Kubernetes Dashboard detects your Kubeconfig file, and connects to the current Kubernetes context.
8+
Any change of Kubernetes context (either from Podman Desktop or by editing the Kubeconfig file with another tool)
9+
is detected by the dashboard, which disconnects from the previous current context and connects to the new one.
10+
11+
A Dashboard page provides a synthetic view of the main resources present in the Kubernetes context:
12+
- non-namespaced resources: nodes and namespaces,
13+
- namespaced resources: workloads (deployments, pods, jobs, cronjobs), services (services, ingresses, routes) and configuration and storage (persistent volume claims, configmaps, secrets).
14+
15+
You can access from the dashboard, or from the menu, the list of resources of a specific kind (for example, the list of Pods).
16+
17+
From this list, you have access to the details for a specifc resource, including:
18+
- a summary of the resource (extracted from the metadata, spec and status of the resource),
19+
- a raw JSON representation of the resource,
20+
- a utility to patch the resource definition, using [strategic merge patch](https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/).
21+
22+
For Pods, you also have access to:
23+
- the logs of the containers running in the pod.
24+
25+
You can switch the namespace you want to explore from the Dashboard page or from any list of namespaced resources. The extension will disconnect from the previous namespace and connect to the new one.
26+
27+
# Installation
28+
29+
## Install latest release
630

731
Install the custom extension `ghcr.io/podman-desktop/podman-desktop-extension-kubernetes-dashboard:latest` to try the latest extension.
832

9-
# Development version
33+
## Development version
1034

1135
Install the custom extension `ghcr.io/podman-desktop/podman-desktop-extension-kubernetes-dashboard:next` to try the extension published after each commit.
36+
37+
# Contributing
38+
39+
First clone this repository on your disk, then run `pnpm i` in the root directory of the sources, then watch the changes in the `packages/webview` directory:
40+
41+
```
42+
$ git clone [email protected]:podman-desktop/extension-kubernetes-dashboard.git
43+
$ cd extension-kubernetes-dashboard
44+
$ pnpm i
45+
[...]
46+
$ cd packages/webview
47+
$ pnpm watch
48+
[ do not stop this command, as it waiting for changes to rebuild the webview ]
49+
```
50+
51+
## Using the production version of Podman Desktop
52+
53+
- In Settings > Preferences, in the Extensions section, enable the Development mode
54+
- In Extensions > Local Extensions, select `Add a local folder extension...` and select the sub-directory `packages/extension` of the sources you cloned previously.
55+
56+
You can now make changes to the sources. The project is composed of two parts, which are built separately: the extension code, and the webview code. The extension code is rebuilt after each change by Podman Desktop itself, and the webview part is rebuilt by the `pnpm watch` command you started previously.
57+
58+
> Note that when you only change code in the webview part, the webview is built, and the result is included in the extension, which triggers the rebuild of the extension.
59+
60+
After each change, you may have to restart the extension from the `Extensions > Local Extensions` page.

0 commit comments

Comments
 (0)