kyma-project / busola

Web based Kubernetes Dashboard with a focus on privacy that requires no active components or special privileges in your cluster.
Apache License 2.0
24 stars 48 forks source link

Integrate Persistent Web-Based Kubernetes Terminal as a Kyma Module #2782

Open valentinvieriu opened 4 months ago

valentinvieriu commented 4 months ago

Description

As Sebastian and Mathew I would like the capability to manage Kubernetes clusters directly from the Kyma Dashboard via a persistent web-based terminal, delivered as a Kyma module. This module would ensure that upon installation, a new widget appears in the Kyma dashboard interface, facilitating terminal access and persisting user configurations and settings across sessions.

Acceptance Criteria

Business Value

This feature enhances user convenience by providing a persistent, configurable terminal experience directly within the Kyma Dashboard, mirroring the functionality seen in cloud offerings like Google Cloud's terminal access.

Reasons

Adopting this feature simplifies the user experience and increases efficiency, especially for users familiar with CLI tools but restricted by installation permissions.

Dependencies

Depends on the Kyma module framework for integration and volume storage for settings persistence.

Non-functional Requirements

Constraints

Additional Features

Notes and Comments

Further considerations include user experience design to ensure the terminal widget is intuitive and aligns with existing Kyma Dashboard aesthetics.

Size or Effort

Medium to high effort, considering the development and integration of new functionalities and persistence mechanisms.

Mockups or Diagrams

graph TD
    A[Kyma Module] -->|Instantiates| B(Pod in Kubernetes Cluster)
    A -->|Persists| C(Settings in Volume)
    B -->|Connection| D[Terminal UI]
    D -->|Persistent Connection| B
    D -->|Saves Settings| C

Useful Links

Attachments

Design prototypes and user flow diagrams to be attached upon design completion.

pbochynski commented 2 months ago

Another option: https://github.com/cloudtty/cloudtty